What am I doing wrong here?
#region Using declarations
using System;
using System.ComponentModel;
using System.Diagnostics;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Xml.Serialization;
using NinjaTrader.Cbi;
using NinjaTrader.Data;
using NinjaTrader.Gui.Chart;
#endregion
// This namespace holds all indicators and is required. Do not change it.
namespace NinjaTrader.Indicator
{
/// <summary>
/// Enter the description of your new custom indicator here
/// </summary>
[Description("Enter the description of your new custom indicator here")]
public class Black : Indicator
{
#region Variables
//Narrow Range
private BoolSeries NR4;
private double R1 = 0;
private double R2 = 0;
private double R3 = 0;
private double R4 = 0;
#endregion
protected override void Initialize()
{
Overlay = false;
NR4 = new BoolSeries(this, MaximumBarsLookBack.Infinite);
}
protected override void OnBarUpdate()
{
if(Bars.GetDayBar(4).Close != null)
{
R1 = Bars.GetDayBar(1).High - Bars.GetDayBar(1).Low;
R2 = Bars.GetDayBar(2).High - Bars.GetDayBar(2).Low;
R3 = Bars.GetDayBar(3).High - Bars.GetDayBar(3).Low;
R4 = Bars.GetDayBar(4).High - Bars.GetDayBar(4).Low;
}
else return;
NR4.Set(R1 < R2 && R1 < R3 && R1 < R4 ? true : false);
}
#region Properties
#endregion
}
}
Error on calling 'OnBarUpdate' method for indicator 'Black' on bar 0: Object reference not set to an instance of an object.
Any help would be appreciated.

Comment