Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 2364
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
к сожалению, ничего не изменилось... (
IndicatorDigits() - эта функция устанавливает формат точности для визуализации значений индикатора.визуально и так было 5 знаков. тем более, у меня не индикатор...
но спасибо в любом случае...
if (iMA(NULL,1,24,0,MODE_EMA,PRICE_MEDIAN,0)>iMA(NULL,1,60,0,MODE_EMA,PRICE_MEDIAN,0))//проверяем М1 вверх
{
kM1="Бычий";
for (int i=0;NormalizeDouble(iMA(NULL,1,24,0,MODE_EMA,PRICE_MEDIAN,i),Digits)>NormalizeDouble(iMA(NULL,1,24,0,MODE_EMA,PRICE_MEDIAN,i),Digits);i++)
iM1++;
к сожалению, ничего не изменилось... (
IndicatorDigits() - эта функция устанавливает формат точности для визуализации значений индикатора.визуально и так было 5 знаков. тем более, у меня не индикатор...
но спасибо в любом случае...
У трендовых линий две цены, попробуйте
У трендовых линий две цены, попробуйте
знаю, что два окончания... )
обозначаются 0 и 1, а не 2.
это учтено в моем варианте - беру точку 0 - ObjectGetDouble(0,m_objname,OBJPROP_PRICE,0)
в точке 1 аналогичное значение до 4-го знака после запятой...тоесть если я правильно понял, то ошибка состоит лишь в том что я сравнения имашек запихнул в выражение цикла?
Всем привет! столкнулся с такой проблемой, есть некоторая часть кода MQL4, где цикл for находится внутри оператора IF и при правильности условий цикл все равно игнорируется... Что тут можно сделать чтобы цикл не игнорировался?
if (iMA(NULL,1,24,0,MODE_EMA,PRICE_MEDIAN,0)>iMA(NULL,1,60,0,MODE_EMA,PRICE_MEDIAN,0))//проверяем М1 вверх
{
kM1="Бычий";
for (int i=0;NormalizeDouble(iMA(NULL,1,24,0,MODE_EMA,PRICE_MEDIAN,i),Digits)>NormalizeDouble(iMA(NULL,1,24,0,MODE_EMA,PRICE_MEDIAN,i),Digits);i++)
iM1++;
}
if (iMA(NULL,1,24,0,MODE_EMA,PRICE_MEDIAN,0)<iMA(NULL,1,60,0,MODE_EMA,PRICE_MEDIAN,0))//проверяем М1 вниз
{
kM1="Медвежий";
for (int i=0;NormalizeDouble(iMA(NULL,1,24,0,MODE_EMA,PRICE_MEDIAN,i),Digits)<NormalizeDouble(iMA(NULL,1,24,0,MODE_EMA,PRICE_MEDIAN,i),Digits);i++)
iM1++;
}
Посмотрите внимательно условие цикла. На первый взгляд, у вас условие вида X[i]>X[i], которое всегда будет ложным.
И вставляйте код правильно, через кнопку "</>".
Посмотрите внимательно условие цикла. На первый взгляд, у вас условие вида X[i]>X[i], которое всегда будет ложным.
И вставляйте код правильно, через кнопку "</>".
почему оно всегда будет ложным?
почему оно всегда будет ложным?
Грубо, 1>1 - может быть истинным?
Грубо, 1>1 - может быть истинным?
Вы извините, там 2 разные ЕМА 1-24, 2-60, даже теоретически они не могут быть всегда одинаковыми
знаю, что два окончания... )
обозначаются 0 и 1, а не 2.
это учтено в моем варианте - беру точку 0 - ObjectGetDouble(0,m_objname,OBJPROP_PRICE,0)
в точке 1 аналогичное значение до 4-го знака после запятой...