from random import random
class ModulatedMultidimensionalContainmentField(QCAlgorithm):
def Initialize(self):
self.SetStartDate(2019, 12, 21) # Set Start Date
self.SetCash(100000) # Set Strategy Cash
self.spy = self.AddEquity("SPY", Resolution.Daily).Symbol
self.tsla = self.AddEquity("TSLA", Resolution.Daily).Symbol
self.strategy_1_portion = 0.1
self.strategy_2_portion = 0.9
def OnData(self, data):
# Strategy #1
if random() > 0.5:
if not self.Portfolio[self.spy].Invested:
self.SetHoldings(self.spy, random() * self.strategy_1_portion)
else:
self.SetHoldings(self.spy, 0)
# Strategy #2
if random() > 0.5:
if not self.Portfolio[self.tsla].Invested:
self.SetHoldings(self.tsla, random() * self.strategy_2_portion)
else:
self.SetHoldings(self.tsla, 0)