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
-9.342
Tracking Error
0.137
Treynor Ratio
0
Total Fees
$0.00
import json

class HorizontalVerticalAntennaArray(QCAlgorithm):

    def Initialize(self):
        self.SetStartDate(2020, 11, 3)  # Set Start Date
        self.SetCash(100000)  # Set Strategy Cash
        
        symbols = [ Symbol.Create("SPY", SecurityType.Equity, Market.USA) ]
        self.SetUniverseSelection( ManualUniverseSelectionModel(symbols) )
        self.UniverseSettings.Resolution = Resolution.Daily
        
        self.SetAlpha(MyAlpha())

class MyAlpha(AlphaModel):
    
    list_by_symbol = {}
    symbol_data_by_symbol = {}
    
    def Update(self, algorithm, data):
        for symbol, symbol_data in self.symbol_data_by_symbol.items():
            symbol_data.get_list()
            symbol_data.pass_list(self.list_by_symbol[symbol])
        
        return []
        
    def OnSecuritiesChanged(self, algorithm, changes):
        for security in changes.AddedSecurities:
            symbol = security.Symbol
            
            data = 1.0
            self.list_by_symbol[symbol] = [data] 

            algorithm.ObjectStore.Save(str(symbol), json.dumps([data]))
            
            self.symbol_data_by_symbol[symbol] = SymbolData(symbol, self, algorithm)
            
            
class SymbolData:
    def __init__(self, symbol, alpha, algorithm):
        self.symbol = symbol
        self.alpha = alpha
        self.algorithm = algorithm
    
    def get_list(self):
        self.algorithm.Log(f"Get list via alpha: {self.alpha.list_by_symbol[self.symbol]}")
        self.algorithm.Log(f"Get list via ObjectStore: {json.loads(self.algorithm.ObjectStore.Read(self.symbol))}")
    
    def pass_list(self, lst):
        self.algorithm.Log(f"List passed to SymbolData: {lst}")