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 6.757 Tracking Error 0.07 Treynor Ratio 0 Total Fees $0.00 |
class ResistanceMultidimensionalGearbox(QCAlgorithm): def Initialize(self): self.SetStartDate(2021, 2, 20) # Set Start Date self.SetCash(100000) # Set Strategy Cash tickers = ["AAPL", "AIG", "IBM"] symbols = [Symbol.Create(x, SecurityType.Equity, Market.USA) for x in tickers] self.AddUniverseSelection(QC500UniverseSelectionModel()) self.AddUniverseSelection(ManualUniverseSelectionModel(symbols)) self.AddAlpha(MyAlphaModel()) self.AddAlpha(MyAlphaModel2()) class MyAlphaModel: def Update(self, algorithm, data): for kvp in algorithm.UniverseManager: universe = kvp.Value if 'MANUAL' in kvp.Key.Value: for kvp2 in universe.Members: symbol = kvp2.Key security = kvp2.Value algorithm.Debug(f'Manual: {symbol}') break else: for kvp2 in universe.Members: symbol = kvp2.Key security = kvp2.Value algorithm.Debug(f'QC500: {symbol}') break return [] def OnSecuritiesChanged(self, algorithm, changes): pass class MyAlphaModel2: def Update(self, algorithm, data): for kvp in algorithm.UniverseManager: universe = kvp.Value if 'MANUAL' in kvp.Key.Value: for kvp2 in universe.Members: symbol = kvp2.Key security = kvp2.Value break else: for kvp2 in universe.Members: symbol = kvp2.Key security = kvp2.Value break return [] def OnSecuritiesChanged(self, algorithm, changes): pass