Overall Statistics
from Alphas.ConstantAlphaModel import ConstantAlphaModel
from Execution.ImmediateExecutionModel import ImmediateExecutionModel
from Portfolio.EqualWeightingPortfolioConstructionModel import EqualWeightingPortfolioConstructionModel
from Risk.MaximumDrawdownPercentPerSecurity import MaximumDrawdownPercentPerSecurity

class MultidimensionalModulatedAntennaArray(QCAlgorithm):

    def Initialize(self):
        self.SetStartDate(1998, 1, 1)  # Set Start Date
        self.SetEndDate(1998, 1, 30)  # Set Start Date
        self.SetCash(100000)  # Set Strategy Cash
        
        self.UniverseSettings.Resolution = Resolution.Minute
        symbols = [ Symbol.Create("SPY", SecurityType.Equity, Market.USA) ]
        self.SetUniverseSelection( ManualUniverseSelectionModel(symbols) )
        
        # Emit a constant Price Insight of Up direction
        self.AddAlpha(ConstantAlphaModel(InsightType.Price, InsightDirection.Up, timedelta(days=1)))

        
        self.SetPortfolioConstruction(EqualWeightingPortfolioConstructionModel())
        
        self.SetRiskManagement(NullRiskManagementModel())
        
        self.SetExecution(ImmediateExecutionModel())
        


    def OnData(self, data):  
        # if not self.Portfolio.Invested:
        #    self.SetHoldings("SPY", 1)
        pass