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 -1.963 Tracking Error 0.164 Treynor Ratio 0 Total Fees $0.00 Estimated Strategy Capacity $0 Lowest Capacity Asset |
from clr import AddReference AddReference("QuantConnect.Algorithm") AddReference("QuantConnect.Indicators") AddReference("QuantConnect.Algorithm.Framework") from QuantConnect.Algorithm import QCAlgorithm from QuantConnect.Data.UniverseSelection import * from QuantConnect.Indicators import * from datetime import timedelta, datetime class VAlgorithm(QCAlgorithmFramework): def Initialize(self): self.SetStartDate(2021, 1, 1) self.SetEndDate(2021, 3, 1) self.SetCash(1000000) self.UniverseSettings.Resolution = Resolution.Hour self.spy = self.AddEquity("SPY", Resolution.Hour).Symbol # Set lookback period for STD and SMA self.lookbackSTD = 10 # volatility (ie, std) over past 10 days self.lookbackSMA = 5 # 5-day moving average of volatility # Warmup indicators self.SetWarmup(20, Resolution.Daily) # Initialize standard deviation of SPY and moving average of std's at zero self.std = 0 self.stdAvg = 0 def OnData(self, data): if self.IsWarmingUp: return #setup trades --> if VIX - VRP(hvol10s) > 0 , then buy SVXY(XIV) else buy VXX def OnEndOfDay(self): # Construct standard deviation of price using STD Indicator for added securities self.std = StandardDeviation(self.spy, self.lookbackSTD) # Construct simple moving average (SMA) of the standard deviation of price self.stdAvg = IndicatorExtensions.SMA(self.std, self.lookbackSMA) # Plot indicators self.Plot("Indicators", "Std", self.std.Current.Value) self.Plot("Indicators", "Std-Avg", self.stdAvg.Current.Value)