Overall Statistics
from clr import AddReference
AddReference("System")
AddReference("QuantConnect.Algorithm")
AddReference("QuantConnect.Common")

from System import *
from QuantConnect import *
from QuantConnect.Algorithm import *
from QuantConnect.Data import *
from datetime import timedelta


class ScheduledEventsAlgorithm(QCAlgorithm):
    '''QCU Scheduled Events Algorithm'''

    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(2017,3,21)  #Set Start Date
        self.SetEndDate(2017,3,22)    #Set End Date
        self.SetCash(100000)           #Set Strategy Cash
        # Find more symbols here: http://quantconnect.com/data
        self.AddEquity("SPY", Resolution.Minute)
        self.counter = 0

        
        # schedule an event to fire at a specific date/time
        self.Schedule.On(self.DateRules.On(2017, 3, 21), self.TimeRules.At(9, 40), Action(self.SpecificTime))
        

    def OnData(self, data):
        '''OnData event is the primary entry point for your algorithm. Each new data point will be pumped in here.'''
        
        self.counter += 1
        if self.counter == 10:
        	self.Log("OnData SPY Close: {0}".format(data["SPY"].Close))
        
        pass
        
    def SpecificTime(self):
        self.Log("SpecificTime: Fired at : {0}".format(self.Time))
        spy = self.Securities["SPY"]
        self.Log("SpecificTime SPY Close: {0}".format(spy.Close))
        
        
        
        
        #