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.803 Tracking Error 0.146 Treynor Ratio 0 Total Fees $0.00 Estimated Strategy Capacity $0 |
class FadingTheGap(QCAlgorithm): def Initialize(self): self.SetStartDate(2017, 11, 1) self.SetEndDate(2018, 7, 1) self.SetCash(100000) self.AddEquity("TSLA", Resolution.Minute).SetDataNormalizationMode(DataNormalizationMode.Raw) self.Schedule.On(self.DateRules.EveryDay(), self.TimeRules.BeforeMarketClose("TSLA", 0), self.ClosingBar) self.Schedule.On(self.DateRules.EveryDay(), self.TimeRules.AfterMarketOpen("TSLA", 1), self.OpeningBar) self.Schedule.On(self.DateRules.EveryDay(), self.TimeRules.AfterMarketOpen("TSLA", 45), self.ClosePositions) self.window = RollingWindow[TradeBar](2) def ClosingBar(self): if "TSLA" in self.CurrentSlice.Bars: self.window.Add(self.CurrentSlice["TSLA"]) def OpeningBar(self): if "TSLA" in self.CurrentSlice.Bars: self.window.Add(self.CurrentSlice["TSLA"]) #1. If our window is not full use return to wait for tomorrow if not self.window.IsReady: return #2. Calculate the change in overnight price delta = self.window[0].Open - self.window[1].Close #3. If delta is less than -$2.5, SetHoldings() to 100% TSLA if delta < -2.5: self.SetHoldings("TLSA", 1) def ClosePositions(self): self.Liquidate()