Overall Statistics Total Trades1Average Win0%Average Loss0%Compounding Annual Return12.340%Drawdown12.900%Expectancy0Net Profit79.267%Sharpe Ratio1.005Loss Rate0%Win Rate0%Profit-Loss Ratio0Alpha0.138Beta-0.73Annual Standard Deviation0.123Annual Variance0.015Information Ratio0.843Tracking Error0.123Treynor Ratio-0.17Total Fees\$3.29
```import numpy as np

### <summary>
### Basic template algorithm simply initializes the date range and cash. This is a skeleton
### framework you can use for designing an algorithm.
### </summary>
class BasicTemplateAlgorithm(QCAlgorithm):
'''Basic template algorithm simply initializes the date range and cash'''

def Initialize(self):
'''Initialise the data and resolution required, as well as the cash and start-end dates for your algorithm. All algorithms must initialized.'''

self.SetStartDate(2013,10, 7)  #Set Start Date
self.SetEndDate(2018,10,11)    #Set End Date
self.SetCash(100000)           #Set Strategy Cash
# Find more symbols here: http://quantconnect.com/data
# define a 10-period RSI indicator with indicator constructor
self.rsi = RelativeStrengthIndex(10, MovingAverageType.Simple)
# register the daily data of "SPY" to automatically update the indicator
self.RegisterIndicator("SPY", self.rsi, Resolution.Daily)

def OnData(self, data):
'''OnData event is the primary entry point for your algorithm. Each new data point will be pumped in here.

Arguments:
data: Slice object keyed by symbol containing the stock data
'''
self.Plot('RSI', 'SPY', self.rsi.Current.Value)
if not self.Portfolio.Invested:
self.SetHoldings("SPY", 1)```