Overall Statistics
Total Trades
0
Average Win
0%
Average Loss
0%
Compounding Annual Return
0%
Drawdown
0%
Expectancy
0
Net Profit
0%
Sharpe Ratio
0
Probabilistic Sharpe Ratio
0%
Loss Rate
0%
Win Rate
0%
Profit-Loss Ratio
0
Alpha
0
Beta
0
Annual Standard Deviation
0
Annual Variance
0
Information Ratio
-18.854
Tracking Error
0.044
Treynor Ratio
0
Total Fees
$0.00
from datetime import timedelta
class CustomConsolidatorAlgorithm(QCAlgorithm):
    def Initialize(self):
        self.SetStartDate(2018,8,1)  
        self.SetEndDate(2018,8,5)    
        self.SetCash(100000)  

        self.AddForex("EURUSD", Resolution.Minute, Market.Oanda)
        consolidator = QuoteBarConsolidator(self.CustomPeriod)
        consolidator.DataConsolidated += self.OnDataConsolidated
        self.SubscriptionManager.AddConsolidator("EURUSD", consolidator)

    def OnDataConsolidated(self, sender, bar):
        self.Debug("Bar date/time: " + bar.Time.ctime())
        self.Debug("Bar date/time: " + bar.EndTime.ctime())

    def CustomPeriod(self, dt):
        '''Custom period Func'''
        
        start = dt.replace(day=1, hour=0, minute=0)
        end = dt.replace(day=1, hour=15, minute=10) 
        return CalendarInfo(start, end - start)  # subtracting two datetimes gives us a timedelta