Overall Statistics
Total Trades
1
Average Win
0%
Average Loss
0%
Compounding Annual Return
12.339%
Drawdown
13.200%
Expectancy
0
Net Profit
79.243%
Sharpe Ratio
1.005
Loss Rate
0%
Win Rate
0%
Profit-Loss Ratio
0
Alpha
0.139
Beta
-0.754
Annual Standard Deviation
0.123
Annual Variance
0.015
Information Ratio
0.843
Tracking Error
0.123
Treynor Ratio
-0.164
Total Fees
$3.29
from datetime import timedelta

### <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
        self.AddEquity("SPY", Resolution.Minute)
        # define a 10-period RSI indicator with indicator constructor
        self.rsi30m = RelativeStrengthIndex(10, MovingAverageType.Simple)
        # register the daily data of "SPY" to automatically update the indicator
        self.RegisterIndicator("SPY", self.rsi30m, timedelta(minutes=30))
        #
        self.rsiDay = self.RSI("SPY", 10, MovingAverageType.Simple, 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
        '''
        
        if not self.Portfolio.Invested:
            self.SetHoldings("SPY", 1)
            
    def OnEndOfDay(self):
        self.Plot('RSI', '30m', self.rsi30m.Current.Value)
        self.Plot('RSI', 'Daily', self.rsiDay.Current.Value)