我已经开始玩R和quantmod。我想为S&P500上的已实现期权价值创建一个数据集,并将其与我所修读的金融课程的Black-Scholes估算值进行比较。 现在,我只是专注于数据整理并将结果转换成对我有用的格式。下面的代码显示了如何将S&P500价格时间序列导入RStudio。
library("quantmod")
install.packages("quantmod")
getSymbols("^GSPC",from="2018-01-01",to="2018-03-18",src="yahoo")
z<-get(getSymbols("^GSPC",from="2007-01-01",to="2019-03-18",src="yahoo"))
head(GSPC) #head gives you the first five rows
tail(GSPC) #tail gives you the last five rows
plot(GSPC)
barChart(GSPC)
barChart(z)
head(GSPC)
命令将向您显示我具有以下格式的S&P500的时间序列:打开,高,低和关闭。
我想为以下期权持续时间创建一个实现的期权价值曲线(指定范围内的每一天):1天,2天,3天,5天,1周,2周,4周,6周,13周,26周和52周。
因此,例如,如果我们说期权(欧洲看涨期权)以收盘价结算,那么2007年1月3日收盘价触及的欧洲一天看涨期权的实际价值应该是(\ $ 1418.34 -\ $ 1416.60 = \ $ 1.74)。
数据集将包含十二列;日期后跟11个已实现的期权价值(标准的欧洲看涨期权)。 我知道只要具备基本的编码能力,就可以很快完成。问题是我还没有达到“基本编码能力”级别! 有人可以建议如何告诉R进行“收盘价”(价格GSPC数据集的第五列)并应用下表中所示的功能吗?
| Date | 1 day | 2 day | 3 day |
|:-----------|---------------------:|:--------------------:|:--------------------:|
| 2007-01-03 |=max([($t+1)-($t)],0) |=max([($t+2)-($t)],0) |=max([($t+3)-($t)],0) |
每行将扩展到364天的选项(5天,1周,2周,4周,6周,13周,26周和52周),并且列将扩展到最后一个采样日期这将是功能的输入。
输入: 1)雅虎财经行情 2)开始采样日期 3)最后采样日期 4)应用实现值功能
任何帮助将不胜感激!