I tried this...
public override void Initialize()
{
SetCash(_cash);
SetStartDate(new DateTime(2020, 3, 1);
SetEndDate(new DateTime(2020, 3, 9));
AddEquity(security, Resolution.Minute);
_tradeBarHistory = History<TradeBar>("MSFT", _closingPeroids, Resolution.Minute);
_tradeBars = new RollingWindow<TradeBar>(_closingPeroids);
_warmUpInitializeComplete = false;
SetWarmup(50);
}
public override void OnData(Slice data)
{
if (IsWarmingUp) return;
if(!_warmUpInitializeComplete) {
foreach(var tradeBar in tradeBarHistory) {
tradeBars.Add(tradeBar);
}
_warmUpInitializeComplete = true;
}
if(!data.ContainsKey(security) || data[security] == null) {
Debug(string.Format("Security {0} not found @ {1} and ContainsKey {2}.", security, Time, data.ContainsKey(security)));
continue;
}
if(tradeBars.IsReady && mom.IsReady) {
var firstBar = tradeBars.First();
var lastBar = tradeBars.Last();
var currentTrade = data[security].Bars.Last();
Debug(string.Format("firstBar.Time: {0}, lastBar.Time {1}, currentTrade", firstBar.Time, lastBar.Time, currentTrade.Time));
}
}
When I run the above code I get an error:
Runtime Error: 'QuantConnect.Data.Market.TradeBar' does not contain a definition for 'Bars' (Open Stacktrace)
However, when I look at the documenation here, it appears to have a property called Bars?
Can anyone tell me what i'm doing wrong?
Thanks,
Michael