| Overall Statistics |
|
Total Trades 0 Average Win 0% Average Loss 0% Compounding Annual Return 0% Drawdown 0% Expectancy 0 Net Profit 0% Sharpe Ratio 0 Probabilistic Sharpe Ratio 0% Loss Rate 0% Win Rate 0% Profit-Loss Ratio 0 Alpha 0 Beta 0 Annual Standard Deviation 0 Annual Variance 0 Information Ratio 0 Tracking Error 0 Treynor Ratio 0 Total Fees $0.00 Estimated Strategy Capacity $0 Lowest Capacity Asset |
import datetime
class PrintOptionsContracts(QCAlgorithm):
def Initialize(self):
self.SetStartDate(2022, 1, 24)
self.SetEndDate(2022, 1, 24)
self.Ticker = "SPY"
self.equity = self.AddEquity(self.Ticker, Resolution.Minute)
self.equity.SetDataNormalizationMode(DataNormalizationMode.Raw)
self.Counter = 1
def OnData(self, slice):
if self.Counter > 1: return
self.Counter += 1
underlyingprice = slice[self.Ticker].Close
optionchain = self.OptionChainProvider.GetOptionContractList(self.Ticker, self.Time)
optionchain = [x for x in optionchain if x.ID.Date == datetime.datetime(2022, 2, 25)]
calls = [x for x in optionchain if x.ID.OptionRight == OptionRight.Call]
calls = sorted(calls, key = lambda x: x.ID.StrikePrice)
self.Log(f"Underlying price = {underlyingprice}")
for c in calls: self.Log(f"{c.ID.Date} {c.ID.StrikePrice} {c.ID.OptionRight}")