2014-03-13 20 views
1

我嘗試了以下與到期日獲得AAPL選項鍊2014年4月19日:getOptionChain()與到期日期似乎並沒有限制到指定的日期

try1 <- getOptionChain("AAPL",Exp="2014-04-19") 
try2 <- getOptionChain("AAPL",Exp=as.Date("2014-04-19")) 

兩者的結果是相同的並且似乎是所有選項四月到期:

> try1$puts 
        Strike Last Chg Bid Ask Vol OI 
AAPL140419P00200000 200.0 0.05 0.00  NA 0.05 1 37 
# <snip> 
AAPL140411P00470000 470.0 0.30 0.05 0.25 0.42 10 43 
# <snip> 

鏈的上述​​剪刀顯示選項2014年4月19日,還例如2014年4月11日。

我在做什麼錯?我正在運行「R 3.0.2 GUI 1.62 Snow Leopard build(6558)」,並從CRAN進行新的Quantmod安裝。

回答

1

getOptionChain從雅虎的網頁上刮取數據。雅虎只提供到期月份的數據,而不是特定的一天。

可以使用expiry功能the greeks package,以確定哪些合同上的特定到期日:

> head(try1$puts[as.Date(expiry(rownames(try1$puts))) == "2014-04-19",]) 
        Strike Last Chg Bid Ask Vol OI 
AAPL140419P00200000 200 0.05 0 NA NA 1 37 
AAPL140419P00205000 205 0.15 0 NA NA 0 25 
AAPL140419P00210000 210 0.35 0 NA NA 0 11 
AAPL140419P00215000 215 0.01 0 NA NA 2 9 
AAPL140419P00220000 220 0.13 0 NA NA 0 23 
AAPL140419P00225000 225 0.80 0 NA NA 0 12 

請注意,你將不得不自己建立和從源代碼安裝希臘人包。

或者你可以grep的日期自己:

> head(try1$puts[grepl("140419", rownames(try1$puts)),]) 
        Strike Last Chg Bid Ask Vol OI 
AAPL140419P00200000 200 0.05 0 NA NA 1 37 
AAPL140419P00205000 205 0.15 0 NA NA 0 25 
AAPL140419P00210000 210 0.35 0 NA NA 0 11 
AAPL140419P00215000 215 0.01 0 NA NA 2 9 
AAPL140419P00220000 220 0.13 0 NA NA 0 23 
AAPL140419P00225000 225 0.80 0 NA NA 0 12 
+0

謝謝。最終,我最終解析了rowname中的optionID,但解析更好。 –

+0

如果這回答你的問題,請考慮遵循[我應該怎麼做當有人回答我的問題?](http://stackoverflow.com/help/someone-answers)的建議。 –