Overall Statistics Total Trades22Average Win0.00%Average Loss-0.50%Compounding Annual Return-27.768%Drawdown6.000%Expectancy-0.817Net Profit-4.381%Sharpe Ratio-3.171Loss Rate82%Win Rate18%Profit-Loss Ratio0.01Alpha-0.379Beta0.709Annual Standard Deviation0.1Annual Variance0.01Information Ratio-4.435Tracking Error0.091Treynor Ratio-0.448Total Fees\$45.21
```import math
import numpy as np
import pandas as pd
import statistics

from datetime import datetime, timedelta

class BasicTemplateAlgorithm(QCAlgorithm):

def Initialize(self):

self.SetCash(100000)
self.SetStartDate(2017, 1, 1)
self.SetEndDate(2017, 1, 31)

# Add securities and get the data
self.eq = ["SPY","IWM"]
self.sma10 = dict()

for s in self.eq:
self.sma10[s] = self.SMA(s, 10, Resolution.Daily)

self.Schedule.On(self.DateRules.EveryDay("SPY"),
self.TimeRules.AfterMarketOpen("SPY", 5),
Action(self.Rebalance))

# Days to warm up the indicators
self.SetWarmup(timedelta(20))

def OnData(self, slice):
pass

def Rebalance(self):

for s in self.eq:

price = self.Securities[s].Price

self.Log("{} {}" .format(s, price))
self.Log("{} {}" .format(s, self.sma10[s]))
self.Log("{} {}" .format(s, float(price) > self.sma10))

if price >= self.sma10[s].Current.Value:
self.SetHoldings(s, 1.0)

if price < self.sma10[s].Current.Value:
self.SetHoldings(s, 0.0)```