Overall Statistics
Total Trades
1047
Average Win
0.22%
Average Loss
-0.06%
Compounding Annual Return
10.355%
Drawdown
10.800%
Expectancy
3.392
Net Profit
230.473%
Sharpe Ratio
1.093
Probabilistic Sharpe Ratio
58.954%
Loss Rate
7%
Win Rate
93%
Profit-Loss Ratio
3.73
Alpha
0.032
Beta
0.381
Annual Standard Deviation
0.067
Annual Variance
0.004
Information Ratio
-0.355
Tracking Error
0.096
Treynor Ratio
0.191
Total Fees
$1048.49
Estimated Strategy Capacity
$210000000.00
Lowest Capacity Asset
BGU U7EC123NWZTX
class StaticBarbell(QCAlgorithm):

    def Initialize(self):
        self.SetStartDate(2010, 1, 1)  # Set Start Date
        self.SetCash(10000)  # Set Strategy Cash
        self.SetBrokerageModel(BrokerageName.AlphaStreams)
        self.stock = self.AddEquity("SPXL", Resolution.Daily)  # SPXL, FIHD
        self.safe = self.AddEquity("IEF", Resolution.Daily)  # IEF
        self.insurance = self.AddEquity("VIXY", Resolution.Daily)
        self.insu_ratio = 0.01
        self.stock_ratio = 0.2
        self.safe_ratio = 1.0 - self.insu_ratio - self.stock_ratio
        self.Schedule.On(self.DateRules.WeekStart("SPXL"),
                         self.TimeRules.At(10, 0, 0),
                         self.RebalancePortfolio)
    
    def RebalancePortfolio(self):
        self.SetPosition(self.stock, self.stock_ratio)
        self.SetPosition(self.safe, self.safe_ratio)
        self.SetPosition(self.insurance, self.insu_ratio)
            
    def SetPosition(self, asset, share):
        if self.IsMarketOpen(asset.Symbol) and asset.Price > 0:
            self.SetHoldings(asset.Symbol, share)