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
3.534
Tracking Error
0.135
Treynor Ratio
0
Total Fees
$0.00
Estimated Strategy Capacity
$0
Lowest Capacity Asset
# create consolidated bars with historical data update

import datetime

class UpgradedGreenRat(QCAlgorithm):

    def Initialize(self):
        self.SetStartDate(2022, 4, 1)
        self.SetEndDate(2022, 4, 14)
        self.SetCash(100000) 
        self.symbol = self.AddEquity("AAPL", Resolution.Minute).Symbol
 
        # Create consolidator object to consolidate minute bars to 4-hour bars
        four_hour_consolidator = TradeBarConsolidator(datetime.timedelta(minutes=240))
        four_hour_consolidator.DataConsolidated += self.FourHourReceiver
        self.SubscriptionManager.AddConsolidator(self.symbol, four_hour_consolidator)
        
        # Create consolidator object to consolidate hour bars to 4-hour bars
        four_hour_consolidator2 = TradeBarConsolidator(datetime.timedelta(hours=4))
        four_hour_consolidator2.DataConsolidated += self.FourHourReceiver2
        self.SubscriptionManager.AddConsolidator(self.symbol, four_hour_consolidator2) 
        
        # History request minute
        historical_data_m = self.History(self.symbol,  (2*4*60), Resolution.Minute)
        historical_data_m = historical_data_m.loc[self.symbol]
        
        for time, row in historical_data_m.iterrows():
            bar = TradeBar(time - datetime.timedelta(minutes=1), self.symbol, row.open, row.high, row.low, row.close, row.volume, datetime.timedelta(hours=1))
            four_hour_consolidator.Update(bar)
        
        # History request hour
        historical_data_h = self.History(self.symbol, (2*4), Resolution.Hour)
        historical_data_h = historical_data_h.loc[self.symbol]

        for time, row in historical_data_h.iterrows():
            bar = TradeBar(time - datetime.timedelta(hours=1), self.symbol, row.open, row.high, row.low, row.close, row.volume, datetime.timedelta(hours=1))
            four_hour_consolidator2.Update(bar)
        
    
    def FourHourReceiver(self, sender, bar):
        self.Plot(self.symbol, "consolidator from minute bars", bar.Close)

    
    def FourHourReceiver2(self, sender, bar):
        self.Plot(self.symbol, "consolidator from hour bars", bar.Close)