WOLFRAM

FinancialDerivative 与 FinancialData 组合使用为衍生产品定价

FinancialDataFinancialDerivative 结合使用可以为衍生产品定价。以美国标准普尔500指数中一个看跌期权的价格计算为例。首先,采集该指数的收盘价:

sp500data = FinancialData["SP500", {{2011, 1, 20}, {2011, 4, 23}}];

FinancialData 返回一个数对的列表。数对中的两个值分别表示日期和当日指数的收盘价。利用 FinancialDerivative,可以写一个函数,计算 sp500data 的期权的价格。

americanPutPrice[{date_, currentPrice_}] :=
     FinancialDerivative[{"American", "Put"}, {"StrikePrice" -> 1190,
        "Expiration" -> {2011, 9, 20}}, {"CurrentPrice" -> currentPrice,
        "Dividend" -> 0.03, "Volatility" -> 0.4, "InterestRate" -> 0.05,
        "ReferenceTime" -> date}]

将价格函数映射到数据,返回每日期权值的列表。

putPrice = Map[americanPutPrice, sp500]

然而,该列表并不包含原始数据中的日期。而日期是金融绘图函数,如 RenkoChart 等所必需的。并且输入中的每个元素必须成对,其中第一个值是日期,第二个值是该美式期权的价格。通过运算 sp500[[All, 1] 把原始数据源中的日期提出,并利用 Transpose 函数将日期与期权值列表交错组合成对。

Transpose[{sp500[[All, 1]], putPrice}]

RenkoChart 可以将其作为输入使用。

 RenkoChart[Transpose[{sp500[[All, 1]], putPrice}]]

 FinancialData  FinancialDerivative 结合使用可以为衍生产品定价。例如,计算美国标准普尔500指数中一个看跌期权的价格,首先,采集该指数的收盘价。
该文档是否有帮助?

任何建议?

非常感谢您的反馈!

提交

联系支持团队

从账单到产品激活,以及任何技术相关内容,无论您遇到任何问题,我们都在此为您提供帮助。

1-800-WOLFRAM (+1-217-398-0700 美国境外用户)

客服支持

周一至周五
8am–5pm 美国中部时区

  • 产品注册或激活
  • 预售信息和订单
  • 安装帮助和首次启动

高级技术支持 (面向特定用户)

周一至周四
8am–7pm 美国中部时区

周五
8:30–10am & 11am–5pm 美国中部时区

  • 优先技术支持
  • Wolfram 专家助理专员
  • Wolfram 语言编程帮助
  • 高级安装支持