Overall Statistics |
Total Trades
25
Average Win
13.05%
Average Loss
-3.29%
Compounding Annual Return
3.944%
Drawdown
25.400%
Expectancy
0.656
Net Profit
50.643%
Sharpe Ratio
0.409
Loss Rate
67%
Win Rate
33%
Profit-Loss Ratio
3.97
Alpha
0.086
Beta
-2.105
Annual Standard Deviation
0.109
Annual Variance
0.012
Information Ratio
0.226
Tracking Error
0.109
Treynor Ratio
-0.021
Total Fees
$123.92
|
# https://quantpedia.com/Screener/Details/113 class JanuaryBarometerAlgorithm(QCAlgorithm): def Initialize(self): self.SetStartDate(2008, 1, 1) self.SetEndDate(2018, 8, 1) self.SetCash(100000) self.AddEquity("SPY", Resolution.Daily) self.AddEquity("BIL", Resolution.Daily) self.Schedule.On(self.DateRules.MonthStart("SPY"), self.TimeRules.AfterMarketOpen("SPY"), self.Rebalance) self.startPrice = None def Rebalance(self): if self.Time.month == 1: self.Liquidate("BIL") self.SetHoldings("SPY", 1) self.startPrice = self.Securities["SPY"].Price if self.Time.month == 2 and self.startPrice is not None: returns = (self.Securities["SPY"].Price - self.startPrice)/self.startPrice if returns > 0: self.SetHoldings("SPY", 1) else: self.Liquidate("SPY") self.SetHoldings("BIL", 1)