Objective: Store 5Min OHLC prices and corresponding 60Min prices in a 2D array of 24 X8 (Past 24- 5 mins bars). Update these prices on bar update.Save the timestamps in another array of 24 X 1.
Code:
Initialization
--------------------------------------------------------------
else if (State == State.Configure)
{
AddDataSeries("EURUSD", Data.BarsPeriodType.Minute, 1, Data.MarketDataType.Last);
AddDataSeries("EURUSD", Data.BarsPeriodType.Minute, 5, Data.MarketDataType.Last);
AddDataSeries("EURUSD", Data.BarsPeriodType.Minute, 60, Data.MarketDataType.Last);
AddDataSeries("EURUSD", Data.BarsPeriodType.Minute, 240, Data.MarketDataType.Last);
AddDataSeries("EURUSD", Data.BarsPeriodType.Minute, 480, Data.MarketDataType.Last);
AddDataSeries("EURUSD", Data.BarsPeriodType.Minute, 720, Data.MarketDataType.Last);
AddDataSeries("EURUSD", Data.BarsPeriodType.Day, 1, Data.MarketDataType.Last);
AddDataSeries("EURUSD", Data.BarsPeriodType.Week, 1, Data.MarketDataType.Last);
SetProfitTarget("", CalculationMode.Price, 0);
SetStopLoss("", CalculationMode.Price, 0, false);
}
else if (State == State.DataLoaded)
{
i=0;
DateTime[] dt=new DateTime[BarsRequiredToTrade]; <-----------------------------initialize (I have tried to initialize on state.defaults too without success)
double[,] prices5=new double[BarsRequiredToTrade,4];
}
Use of code:
----------------------------------------------------------------------------------
protected override void OnBarUpdate()
{
if (BarsInProgress == 2)
{
if (CurrentBars[0] <1|| CurrentBars[1] <1 || CurrentBars[2] <2 || CurrentBars[3] <2 || CurrentBars[4] <2 || CurrentBars[5] <2 || CurrentBars[6] <1 || CurrentBars[7] <1|| CurrentBars[8] <1)
return;
if(i<BarsRequiredToTrade)
{
dt[i]=Times[2][0];<---------error
prices5[i,0]=Opens[2][0] ;
}
What am i doing wrong? Your help would be greatly appreciated.
THank You
Comment