| Overall Statistics |
|
Total Trades 1 Average Win 0% Average Loss 0% Compounding Annual Return 63.143% Drawdown 2.600% Expectancy 0 Net Profit 0% Sharpe Ratio 3.863 Loss Rate 0% Win Rate 0% Profit-Loss Ratio 0 Alpha 0.039 Beta 0.982 Annual Standard Deviation 0.117 Annual Variance 0.014 Information Ratio 4.479 Tracking Error 0.007 Treynor Ratio 0.461 Total Fees $3.20 |
from QuantConnect.Data.Market import TradeBar
from datetime import timedelta
class MyAlgorithm(QCAlgorithm):
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,1) #Set Start Date
self.SetEndDate(2013,11,1) #Set End Date
self.SetCash(100000) #Set Strategy Cash
# Find more symbols here: http://quantconnect.com/data
self.AddEquity("SPY", Resolution.Second)
consolidator = TradeBarConsolidator(timedelta(1))
consolidator.DataConsolidated += self.OnDailyData
self.SubscriptionManager.AddConsolidator("SPY", consolidator)
self.daily = RollingWindow[TradeBar](2)
self.window = RollingWindow[TradeBar](2)
# Add daily bar to daily rolling window
def OnDailyData(self, sender, bar):
self.daily.Add(bar)
# Add second bar to window rolling window
def OnData(self, data):
self.window.Add(data["SPY"])
if not (self.window.IsReady and self.daily.IsReady): return
currBar = self.window[0].Close
yesterdayc = self.daily[1].Close
if not self.Portfolio.Invested and currBar<yesterdayc:
self.SetHoldings("SPY", 1)