从 getOptionChain 结果中过滤罢工和溢价
Filtering strikes and premiums from getOptionChain results
我 运行 以下代码可以正常工作:
library(quantmod)
Symbols<-c ("AA","AAL","AAOI","ABBV","ABC","ABNB","ABT","ACAD","ACB","ACN",
"ADBE","ADI","ADM","ADP","ADS","ADSK","AEO","AFL","AFRM","AAPL",
"XOM","MSFT","JNJ")
Options.20220408 <- lapply(Symbols, getOptionChain)
names(Options.20220408) <- Symbols
我想知道如何创建一个仅包含看跌期权的新数据集,并通过定义溢价范围值 (premium_range) 过滤器提供预先定义的看跌期权溢价 (premium_range) premium_range)
例如,我想知道哪些看跌期权行使价的溢价在(0.8 到 1.2)之间
premium_range <-(>= 0.8 ,<=1.2)
期望的结果是了解哪些代码及其行使价当前提供的溢价介于 (premium_range)
中的指定值之间
为了过滤溢价,我考虑在“最后”列中,但也许“询问”列也可以。
在要价上完成选择的简短示例。我只是将它打印到控制台,但如果你愿意,你可以将结果保存在列表中。
library(quantmod)
Symbols<-c ("AA","AAPL")
Options.20220408 <- lapply(Symbols, getOptionChain)
names(Options.20220408) <- Symbols
premium_range <- c(0.8, 1.2)
lapply(Options.20220408, function(x) subset(x$puts, x$puts$Ask >= premium_range[1] & x$puts$Ask <= premium_range[2] ))
$AA
Strike Last Chg Bid Ask Vol OI LastTradeTime IV ITM
AA220408P00086000 86 0.90 -0.6500000 0.73 0.87 32 421 2022-04-06 11:50:01 0.5693402 FALSE
AA220408P00087000 87 1.06 -0.8100001 1.06 1.17 222 195 2022-04-06 12:07:18 0.5625044 FALSE
$AAPL
Strike Last Chg Bid Ask Vol OI LastTradeTime IV ITM
AAPL220408P00170000 170 1.12 0.74 1.11 1.12 75129 32287 2022-04-06 12:08:36 0.2539137 FALSE
我 运行 以下代码可以正常工作:
library(quantmod)
Symbols<-c ("AA","AAL","AAOI","ABBV","ABC","ABNB","ABT","ACAD","ACB","ACN",
"ADBE","ADI","ADM","ADP","ADS","ADSK","AEO","AFL","AFRM","AAPL",
"XOM","MSFT","JNJ")
Options.20220408 <- lapply(Symbols, getOptionChain)
names(Options.20220408) <- Symbols
我想知道如何创建一个仅包含看跌期权的新数据集,并通过定义溢价范围值 (premium_range) 过滤器提供预先定义的看跌期权溢价 (premium_range) premium_range)
例如,我想知道哪些看跌期权行使价的溢价在(0.8 到 1.2)之间
premium_range <-(>= 0.8 ,<=1.2)
期望的结果是了解哪些代码及其行使价当前提供的溢价介于 (premium_range)
中的指定值之间为了过滤溢价,我考虑在“最后”列中,但也许“询问”列也可以。
在要价上完成选择的简短示例。我只是将它打印到控制台,但如果你愿意,你可以将结果保存在列表中。
library(quantmod)
Symbols<-c ("AA","AAPL")
Options.20220408 <- lapply(Symbols, getOptionChain)
names(Options.20220408) <- Symbols
premium_range <- c(0.8, 1.2)
lapply(Options.20220408, function(x) subset(x$puts, x$puts$Ask >= premium_range[1] & x$puts$Ask <= premium_range[2] ))
$AA
Strike Last Chg Bid Ask Vol OI LastTradeTime IV ITM
AA220408P00086000 86 0.90 -0.6500000 0.73 0.87 32 421 2022-04-06 11:50:01 0.5693402 FALSE
AA220408P00087000 87 1.06 -0.8100001 1.06 1.17 222 195 2022-04-06 12:07:18 0.5625044 FALSE
$AAPL
Strike Last Chg Bid Ask Vol OI LastTradeTime IV ITM
AAPL220408P00170000 170 1.12 0.74 1.11 1.12 75129 32287 2022-04-06 12:08:36 0.2539137 FALSE