Overall Statistics |
Total Trades 24 Average Win 8.16% Average Loss -3.76% Compounding Annual Return 6.598% Drawdown 16.200% Expectancy 0.848 Net Profit 40.035% Sharpe Ratio 0.669 Probabilistic Sharpe Ratio 21.055% Loss Rate 42% Win Rate 58% Profit-Loss Ratio 2.17 Alpha 0.04 Beta 0.363 Annual Standard Deviation 0.108 Annual Variance 0.012 Information Ratio -0.114 Tracking Error 0.144 Treynor Ratio 0.199 Total Fees $607.87 |
import datetime as datetime class Algorithm (QCAlgorithm): def Initialize(self): self.SetCash(1000000) self.SetStartDate(2015, 1, 1) self.SetBrokerageModel(BrokerageName.AlphaStreams) self.AddEquity("SPY", Resolution.Hour) self.liquidated = self.Time + datetime.timedelta(weeks=-8) self.high = 0 def OnData(self, data): if not self.Portfolio.Invested and self.Time > self.liquidated: self.SetHoldings("SPY", 1) if self.Portfolio.Invested and data["SPY"] is not None: if data["SPY"].High > self.high: self.high = data["SPY"].High close = data["SPY"].Close dd = (close - self.high) / close if dd < -0.06: self.Liquidate() self.liquidated = self.Time + datetime.timedelta(weeks=+4) self.high = 0