Jared Broad I am having trouble getting the last 2 bars of data. I have minute data and I've consolidated it to 60 minute bars. In my 60 minute bar handler I do:
var bar = History<TradeBar>(btcusd, 2);
The full example is:
using System;
using System.Collections.Generic;
using System.Linq;
using Accord.Statistics.Links;
using QuantConnect.Brokerages;
using QuantConnect.Data.Consolidators;
using QuantConnect.Data.Market;
using QuantConnect.Indicators;
using QuantConnect.Indicators.CandlestickPatterns;
namespace QuantConnect.Algorithm.CSharp
{
public class Test: QCAlgorithm
{
protected Symbol btcusd = QuantConnect.Symbol.Create("BTCUSD", SecurityType.Crypto, Market.GDAX);
protected decimal signal(TradeBar data)
{
var bar = History<TradeBar>(btcusd, 2);
if (!(bar.Count() > 0)) { return 0.0m; }
return 0.0m;
}
private void ConsolidatedBarHandler(object sender, TradeBar data)
{
Order(btcusd, signal(data);
}
public override void Initialize()
{
// set up our analysis span
SetStartDate(2014, 1, 1);
SetEndDate(2015, 5, 30);
AddCrypto(btcusd, Resolution.Minute);
var consolidator = new TradeBarConsolidator(TimeSpan.FromMinutes(60));
consolidator.DataConsolidated += ConsolidatedBarHandler;
SubscriptionManager.AddConsolidator(btcusd, consolidator);
}
public void OnData(TradeBars data)
{
}
}
}