def initialize(context): """ Define algorithm""" print "Initialize..." global TRAINING_STOCK, BACKTEST_STOCK context.security = None #becomes symbol(BACKTEST_STOCK) context.benchmark = symbol('SPY') context.training_data = loadTrainingData(TRAINING_TIME, TRAINING_STOCK) context.training_data_length = len(context.training_data) - 2 context.normalized_data = Manager.normalize(context.training_data) # will have to redo every time step target = Manager.getTargets(context.normalized_data) context.training_data = context.training_data[:-2] # delete last data entry, because it won't be used context.normalized_data = context.normalized_data[:-2] # delete last data entry, because it won't be used #print target #plt.figure("Training Data") #for i in range(len(context.normalized_data[0])): # plt.plot([x[i] for x in context.normalized_data]) #plt.legend(['open', 'high', 'low', 'close', 'volume', 'price'], loc='upper left') #plt.show() print "Train..." #print len(context.training_data), len(context.normalized_data), len(target) context.strategy = STRATEGY_CLASS([context.normalized_data], [target], num_epochs=EPOCHS) print "Capital Base: " + str(context.portfolio.cash)