星期四, 九月 15, 2011

利用RQuantLib包计算期权价格

首先必须要提到的是QuantLib,它是用C++写的一个开源软件库,主要功能是为各类金融计算提供一个综合框架。而RQuantLib则是连接R和QuantLib的桥梁,目前的函数集主要包括了债券和金融衍生品的计算。

我们来计算一个欧式期权价格以了解QuantLib包的使用。期权价格可以看作是一个多元函数,其影响因素包括了标的资产价格(underlying)、执行价格(strike)、标的资产红利率(dividendYield)、无风险收益率(riskFreeRate)、标的资产波动率(volatility)、期权到期时间(maturity)以及期权类型。


#首先安装并加载包
install.packages('RQuantLib')
library(RQuantLib)
#计算一个看涨欧式期权价格
EO <- EuropeanOption("call", 100, 100, 0.01, 0.03, 0.5, 0.4)
summary(EO)
结果如下:显示价格为11.63,之后六个数值均是价格相对于影响因素的敏感参数




Detailed summary of valuation for EuropeanOption 
   value    delta    gamma     vega    theta      rho   divRho 
 11.6365   0.5673   0.0138  27.6336 -11.8390  22.5475 -28.3657 
with parameters
         type    underlying        strike dividendYield  riskFreeRate 
       "call"         "100"         "100"        "0.01"        "0.03" 
     maturity    volatility 
        "0.5"         "0.4" 


有时候我们希望用图形方式了解多个因素变化对价格的影响,执行如下命令可以了解该函数包中更复杂的用法。
example(EuropeanOptionArrays)

没有评论:

发表评论