Индикатор не отображается на графике помогите разобраться
Range = iATR(NULL,0,f,shift)/d;или это
if (nJMAs70[nJMAn] > 10) dJMAs20 = dJMAs8[nJMAn] / 10.0; else dJMAs20 = dJMAs8[nJMAn] / nJMAs70[nJMAn];
dJMAf60 = dJMAs18[nJMAn] / (nJMAs38[nJMAn] - nJMAs40[nJMAn] + 1.0);
if (nJMAfE8== nJMAfE0) dJMAf68 = 1.0; else {dJMAv4 = nJMAfE8 - nJMAfE0; dJMAf68 = (dJMAf78[nJMAn] - nJMAfE0) / dJMAv4;}и так далее
Нужно тупо отследит все места, гдн происходит деление, например вот это:
Range = iATR(NULL,0,f,shift)/d;или это
if (nJMAs70[nJMAn] > 10) dJMAs20 = dJMAs8[nJMAn] / 10.0; else dJMAs20 = dJMAs8[nJMAn] / nJMAs70[nJMAn];
Нужно тупо отследит все места, гдн происходит деление, например вот это:
Range = iATR(NULL,0,f,shift)/d;или это
if (nJMAs70[nJMAn] > 10) dJMAs20 = dJMAs8[nJMAn] / 10.0; else dJMAs20 = dJMAs8[nJMAn] / nJMAs70[nJMAn];
Rosh а помоему эта ошибка вылазит нетолько в случае деления на ноль она еще появляется в случая неверного обращения к размерности массива, а может и еще в каких то случаях
Деление на ноль ахахах)))))))
Собрал индикатор ... пишет:
2007.05.07 16:08:29 BrainTrend_FULL_JMABASED USDJPY,H4: zero divide
zero divide in 'braintrend_full_jmabased.mq4' (601,61) Написано же: строка 601 позиция 61. Исправляю так:
dJMAf60 =0;
if((nJMAs38[nJMAn] - nJMAs40[nJMAn] + 1.0)!=0)
dJMAf60 = dJMAs18[nJMAn] / (nJMAs38[nJMAn] - nJMAs40[nJMAn] + 1.0);
Деление на 0 в другом месте : zero divide in 'braintrend_full_jmabased.mq4' (632,39) Исправил так:
if((dJMAf60>0) && (dJMAf98[nJMAn] >= MathPow(dJMAfA0/dJMAf60, dJMAf88[nJMAn])))
dJMAv1[nJMAn] = MathPow(dJMAfA0/dJMAf60, dJMAf88[nJMAn]); Появилась картинка:
И что она означает?
2007.05.07 16:08:29 BrainTrend_FULL_JMABASED USDJPY,H4: zero divide
2007.05.07 16:08:28 BrainTrend_FULL_JMABASED USDJPY,H4: initialized
профи гляньте плиз свежим взглядом. :)