I cannot figure out why I am getting this error message: "Invalid statement: if at 19:1"
Any help would be greatly appreciated.
my complete code entry is as follows :
input length = 14;
input ADXLevels = 20;
input averageType =
AverageType.WILDERS;
def fiveMinPlus;
def fiveMinMinus;
def fiveMinAdx;
def fiveMinBullishSignal;
def fiveMinBearishSignal;
def fiveMinBullishZone;
def fiveMinBearishZone;
def fiveMinNeutralZone;
def fiveMinHiDiff;
def fiveMinLoDiff;
def fiveMinPlusDM;
def fiveMinMinusDM;
def fiveMinDX;
if GetAggregationPeriod()<=
AggregationPeriod.FIVE_MlN{
fiveMinHiDiff = high(period = "5Min") - high(period = "5 Min")[1];
fiveMinLoDiff = low(period = "5Min")[1] - low(period = "5 Min");
fiveMinPlusDM = if
fiveMinHiDiff > fiveMinLoDiff and
fiveMinHiDiff > 0 then
fiveMinHiDiff else 0;
fiveMinMinusDM = if
fiveMinLoDiff > fiveMinHiDiff and
fiveMinLoDiff > 0 then
fiveMinLoDiff else 0;
fiveMinPlus = 100 *
MovingAverage(averageType,
fiveMinPlusDM, length);
fiveMinMinus = 100 *
MovingAverage(averageType,
fiveMinMinusDM, length);
fiveMinBulishSignal =
fiveMinPlus crosses abovefiveMinMinus;
fiveMinBearishSignal =
fiveMinPlus crosses belowfiveMinMinus;
fiveMinDX = if (fiveMinPlus +
fiveMinMinus > 0) then 100 *
AbsValue(fiveMinPlus -
fiveMinMinus)/ (fiveMinPlus +
fiveMinMinus) else 0;
fiveMinAdx =
fiveMinPlus < fiveMinMinus and
fiveMinBullishZone and !
fiveMinBearishZone;
}
else{
fiveMinPlus = 0;
fiveMinMinus = O;
fiveMinAdx = 0;
fiveMinPlusDM = 0;
fiveMinMinusDM = 0;
fiveMinBullishSignal = 0;
fiveMinBearishSignal =0;
fiveMinDX = 0;
fiveMinBullishZone = 0;
fiveMinBearishZone = 0;
fiveMinNeutralZone = 0;
fiveMinHiDiff = 0;
fiveMinLoDiff = 0;
AddLabel(fiveMinBearishZone,
"5m", Color.GREEN);
AddLabel(fiveMinBearishZone,
"5m", Color.RED);
AddLabel(fiveMinNeutralZone,
"5m", Color. YELLOW);
Any help would be greatly appreciated.
my complete code entry is as follows :
input length = 14;
input ADXLevels = 20;
input averageType =
AverageType.WILDERS;
def fiveMinPlus;
def fiveMinMinus;
def fiveMinAdx;
def fiveMinBullishSignal;
def fiveMinBearishSignal;
def fiveMinBullishZone;
def fiveMinBearishZone;
def fiveMinNeutralZone;
def fiveMinHiDiff;
def fiveMinLoDiff;
def fiveMinPlusDM;
def fiveMinMinusDM;
def fiveMinDX;
if GetAggregationPeriod()<=
AggregationPeriod.FIVE_MlN{
fiveMinHiDiff = high(period = "5Min") - high(period = "5 Min")[1];
fiveMinLoDiff = low(period = "5Min")[1] - low(period = "5 Min");
fiveMinPlusDM = if
fiveMinHiDiff > fiveMinLoDiff and
fiveMinHiDiff > 0 then
fiveMinHiDiff else 0;
fiveMinMinusDM = if
fiveMinLoDiff > fiveMinHiDiff and
fiveMinLoDiff > 0 then
fiveMinLoDiff else 0;
fiveMinPlus = 100 *
MovingAverage(averageType,
fiveMinPlusDM, length);
fiveMinMinus = 100 *
MovingAverage(averageType,
fiveMinMinusDM, length);
fiveMinBulishSignal =
fiveMinPlus crosses abovefiveMinMinus;
fiveMinBearishSignal =
fiveMinPlus crosses belowfiveMinMinus;
fiveMinDX = if (fiveMinPlus +
fiveMinMinus > 0) then 100 *
AbsValue(fiveMinPlus -
fiveMinMinus)/ (fiveMinPlus +
fiveMinMinus) else 0;
fiveMinAdx =
fiveMinPlus < fiveMinMinus and
fiveMinBullishZone and !
fiveMinBearishZone;
}
else{
fiveMinPlus = 0;
fiveMinMinus = O;
fiveMinAdx = 0;
fiveMinPlusDM = 0;
fiveMinMinusDM = 0;
fiveMinBullishSignal = 0;
fiveMinBearishSignal =0;
fiveMinDX = 0;
fiveMinBullishZone = 0;
fiveMinBearishZone = 0;
fiveMinNeutralZone = 0;
fiveMinHiDiff = 0;
fiveMinLoDiff = 0;
AddLabel(fiveMinBearishZone,
"5m", Color.GREEN);
AddLabel(fiveMinBearishZone,
"5m", Color.RED);
AddLabel(fiveMinNeutralZone,
"5m", Color. YELLOW);