ANDREY: Подскажите пожалуйста почему программа (на mql 4 , на минутках, все тики) по разному читает число в явном виде и это же число вычисленное в функции. Вот код
Программа не читает Pr как 1.60854 , хотя Print() показывает значение Pr как 1.60854 . В результате программа открывает второй ордер, чего делать не должна
А если вместо переменной Pr задать число 1.60854, то программа его читает и второй ордер не открывает.
ВОПРОС Какие изменения нужно внести в код, что бы программа читала Pr и не открывала второй ордер. Спасибо за помощь
Не рекомендуется напрямую сравнивать вещественные числа. Правильно сравнивать их нормализованную разницу с нулём.
Спасибо за ценную информацию. Сам я бы ни за что ни догадался об этом.
Не рекомендуется не значит, что запрещено. Если, например сравниваем текущую цену с ценой предполагаемого стопа, то вполне можно и напрямую сравнить, больше или меньше… Там ведь разница будет достаточно существенная. А вот на равенство это совсем другое дело…
Не рекомендуется не значит, что запрещено. Если, например сравниваем текущую цену с ценой предполагаемого стопа, то вполне можно и напрямую сравнить, больше или меньше… Там ведь разница будет достаточно существенная. А вот на равенство это совсем другое дело…
Здравствуйте. Помогите разобраться в индикаторе Zigzag. Получается весь массив ZigZagBuffer[] принял значение 0.0. Почему выражение if(res != 0.0) иногда становиться истинным. Ведь в весь массив записано значение 0.0?????
if(prev_calculated==0)
{
ArrayInitialize(ZigZagBuffer,0.0);
ArrayInitialize(HighMapBuffer,0.0);
ArrayInitialize(LowMapBuffer,0.0);
start=InpDepth;//Print(start);
}
if(prev_calculated>0)
{
i=rates_total-1;//Print(i);//--- searching for the third extremum from the last uncompleted barwhile(extreme_counter<ExtRecalc && i>rates_total-100)
{
res=ZigZagBuffer[i];
if(res!=0.0) //!!!
extreme_counter++; x++;
i--;
}
i++;
start=i;
Всем доброго времени суток. Подскажите пожалуйста как правильно закодировать при помощи не помню какой математической функции следующее условие.
if (Bid - Low[1]>=0.0030 && Bid - Low[1]<0.0035) {действие;} Я знаю, что есть математическая функция, при помощи которой в вышеприведенном условии можно обойтись без знака && и программа будет проверять соответствии цены в интервале 4 пунктов. Но я не помню как эта математическая функция называется и как ее применять. Спасибо за помощь.
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Подскажите пожалуйста почему программа (на mql 4 , на минутках, все тики) по разному читает число в явном виде и это же число вычисленное в функции.
Вот код
Программа не читает Pr как 1.60854 , хотя Print() показывает значение Pr как 1.60854 . В результате программа открывает второй ордер, чего делать не должна
А если вместо переменной Pr задать число 1.60854, то программа его читает и второй ордер не открывает.
ВОПРОС Какие изменения нужно внести в код, что бы программа читала Pr и не открывала второй ордер.
Спасибо за помощь
Не рекомендуется напрямую сравнивать вещественные числа. Правильно сравнивать их нормализованную разницу с нулём.
Не рекомендуется напрямую сравнивать вещественные числа. Правильно сравнивать их нормализованную разницу с нулём.
Спасибо за ценную информацию. Сам я бы ни за что ни догадался об этом.
Спасибо за ценную информацию. Сам я бы ни за что ни догадался об этом.
Не рекомендуется не значит, что запрещено. Если, например сравниваем текущую цену с ценой предполагаемого стопа, то вполне можно и напрямую сравнить, больше или меньше… Там ведь разница будет достаточно существенная. А вот на равенство это совсем другое дело…
Не рекомендуется не значит, что запрещено. Если, например сравниваем текущую цену с ценой предполагаемого стопа, то вполне можно и напрямую сравнить, больше или меньше… Там ведь разница будет достаточно существенная. А вот на равенство это совсем другое дело…
Понял. Спасибо.
Но так просто это не срабатывает.
Как перехитрить компилятор?
Здравствуйте. Помогите разобраться в индикаторе Zigzag. Получается весь массив ZigZagBuffer[] принял значение 0.0. Почему выражение if(res != 0.0) иногда становиться истинным. Ведь в весь массив записано значение 0.0?????
Всем привет. Уважаемые программисты, нужна ваша помощь.
Пытаюсь переделать индикатор в мультивалютный, в подвале должен показывать SMA c двух инструментов.
Если не сложно, подскажите пожалуйста, в чем ошибка.
Всем доброго времени суток.
Подскажите пожалуйста как правильно закодировать при помощи не помню какой математической функции следующее условие.
if (Bid - Low[1]>=0.0030 && Bid - Low[1]<0.0035) {действие;}
Я знаю, что есть математическая функция, при помощи которой в вышеприведенном условии можно обойтись без знака && и программа будет проверять соответствии цены в интервале 4 пунктов. Но я не помню как эта математическая функция называется и как ее применять.
Спасибо за помощь.
if (MathAbs(Bid - Low[1]) >= 0.0004) {действие;}
if (MathAbs(Bid - Low[1]) >= 0.0004) {действие;}
Ох Тарас, Тарас… В школе думать не учили? Разве 0.0004 бывает меньше 0.0035 ……………
Ох Тарас, Тарас… В школе думать не учили? Разве 0.0004 бывает меньше 0.0035 ……………
читать научитесь, Лжец вы наш
и программа будет проверять соответствии цены в интервале 4 пунктов.