Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 250

 
Valerius:

Добрый день!

Ребята, подскажите, можно ли программно вывести индикатор на график? Или только вручную?

Если можно, то какая команда даётся?

В mql4 можно только применить шаблон заранее приготовленный с этим индикатором.

 

нет, мне нужно именно программная установка индикатора на график (графики).

Ну  если нельзя так нельзя.... Жаль.

 
Valerius:

нет, мне нужно именно программная установка индикатора на график (графики).

Ну  если нельзя так нельзя.... Жаль.

В МТ5 можно.
 

Мне в МТ4 надо...

 
Valerius:

Мне в МТ4 надо...


Фриланс

 
Valerius:  Ребята, подскажите, можно ли программно вывести индикатор на график? Или только вручную?

Советник (скрипт) может рисовать на экране так, как индикатор. Данные индикатора из функции iCustom или расчет в самом советнике (скрипте)

 

Советник мультивалютный. Представляете себе, если сова будет рисовать сразу на 20 парах эти индикаторы... через годик ))) я дождусь пока сова нарисует мне индюки на графике))))

Ладно, понятно, что нельзя из программы запустить индикатор на график. Больше вариантов нет.

 
Valerius:

Советник мультивалютный. Представляете себе, если сова будет рисовать сразу на 20 парах эти индикаторы... через годик ))) я дождусь пока сова нарисует мне индюки на графике))))

Ладно, понятно, что нельзя из программы запустить индикатор на график. Больше вариантов нет.

Варианты есть. Забыть про зоопарк и отнестись серьёзно к ответам - один из них решает проблему.

 

Добрый день!

Очень странная ситуация. В советнике рассчитывается направление движения линии MODE_SIGNAL в осциляторе MACD и положение MODE_MAIN относительно нуля. Вроде всё просто. Использую функцию iMACD. Запускаю тест и он мне выдает Tester: exchange rate cannot be calculated. Долго думал. Решил разбить на более простые элементы (как в коде ниже). Оказалось, что убрав строку " MyMACDMode < 0 " тест успешно запускается. Пытался сделать разные комбинации и результат остается неизменным. Попробовал немного исхитриться и поставил вывод MyMACDMode на график в виде текста - получилось, если линия ниже нуля - на экране пишет цифру, которую получает (само число получается очень большим по значению 9.213552135, но на индикаторе что-то вроде 0,00123). Знак соответствует, а это мне и нужно. Пробовал вывести результат выполнения этого кода на экран, всегда получается, что MACD выше нуля. Не знаю, что с ним не так... Что мне с этим сделать?


// Объявляем переменные

MyMACDOld = iMACD(_Symbol, IndicatorPeriod, 12, 26, 9, PRICE_CLOSE, MODE_SIGNAL, 1);
MyMACDNew = iMACD(_Symbol, IndicatorPeriod, 12, 26, 9, PRICE_CLOSE, MODE_SIGNAL, 0);
MyMACDMode = iMACD(_Symbol, IndicatorPeriod, 12, 26, 9, PRICE_CLOSE, MODE_MAIN, 0);

// Выполнение

if ( MyMACDOld > MyMACDNew )
{
   if (MyMACDMode < 0)
   {           
      return(1);
   }
}

 
RaX79:

Добрый день!

Очень странная ситуация. В советнике рассчитывается направление движения линии MODE_SIGNAL в осциляторе MACD и положение MODE_MAIN относительно нуля. Вроде всё просто. Использую функцию iMACD. Запускаю тест и он мне выдает Tester: exchange rate cannot be calculated. Долго думал. Решил разбить на более простые элементы (как в коде ниже). Оказалось, что убрав строку " MyMACDMode < 0 " тест успешно запускается. Пытался сделать разные комбинации и результат остается неизменным. Попробовал немного исхитриться и поставил вывод MyMACDMode на график в виде текста - получилось, если линия ниже нуля - на экране пишет цифру, которую получает (само число получается очень большим по значению 9.213552135, но на индикаторе что-то вроде 0,00123). Знак соответствует, а это мне и нужно. Пробовал вывести результат выполнения этого кода на экран, всегда получается, что MACD выше нуля. Не знаю, что с ним не так... Что мне с этим сделать?

Возможно, инструмент - неторгуемый, поэтому данных, необходимых для расчёта прибыли нет. Тестер просто не знает, как считать. Попробуйте другой.
Причина обращения: