MQL4 Добавление индикатора на график из советника - страница 2

 
Vasyl Nosal:
Может быть, написать в службу поддержки и попросить их добавить ChartIndicatorAdd() как в mql5?
Скорее всего, они не захотят :) они уже отклонили предложение по аналогичному запросу со смещением времени сервера, которое есть в mql5, но нет в mql4. И они не захотят, потому что если они добавят все + из mql5 в mql4, никто больше не будет выбирать mql5!
 
Georgiy Liashchenko:
Скорее всего они не захотят :) они уже отклонили предложение по аналогичному запросу со смещением времени сервера, которое есть в mql5, но нет в mql4. И они не захотят, потому что если они добавят все + из mql5 в mql4, никто больше не будет выбирать mql5!

Это? :)))))))))))))))))))))))))))

TimeGMT()

TimeGMTOffset()

 
Vasyl Nosal:

Это? :)))))))))))))))))))))))))))

TimeGMT()

TimeGMTOffset()

нет, это дает разницу во времени между сервером и локальным временем вашего ПК, я имел в виду разницу между временем GMT сервера и 0 GMT.
 
Georgiy Liashchenko:
нет, это дает разницу во времени между сервером и локальным временем вашего ПК, я имел в виду разницу между временем GMT сервера и 0 GMT.

TimeCurrent()-TimeGMT()

?

 
Vasyl Nosal:

TimeCurrent()-TimeGMT()

?

это работает только если вы сделаете ea специально для вашего часового пояса

 
Georgiy Liashchenko:

это работает, только если вы сделаете ea специально для вашего часового пояса.

Нет. TimeCurrent() - это время брокера, а timeGMT - это время 0 GMT.

мой часовой пояс не учитывается в расчетах

 
Vasyl Nosal:

Нет. TimeCurrent() - это время брокера, а timeGMT - это время по Гринвичу.

мой часовой пояс не учитывается в расчетах

Представьте случай, сервер находится в 0 GMT, вы живете в GMT+1, время брокера GMT+2. TimeCurrent() возвращает GMT 0, потому что сервер находится в GMT 0, то же самое происходит и с TimeGMT(). TimeLocal() возвращает GMT+1 или любое другое время, которое вы выбрали на своем компьютере. TimeGMTOffset() возвращает разницу между GMT+1 и GMT 0, что составляет 1 час. И нет команды для получения смещения между GMT 0 и временем брокера. Которое было бы равно 2ч. Другими словами, нет команды, которая могла бы сказать нам, на сколько часов сдвинулось время.

Зачем нам это нужно? Для стратегий, основанных на заранее определенных временных событиях, таких как торговые сессии, новости и т.д. Когда вы хотите, чтобы ea автоматически подстраивалась под любой часовой пояс или время брокера.

 

Это был ответ службы технической поддержки

"Есть ли в mql4 способ добавить индикатор на график из советника без использования шаблонов?".

Нет никакого способа. И мы не планируем добавлять ChartIndicatorAdd() в MQL4.

 
Georgiy Liashchenko:
Спасибо, теперь заработало, но работает только со второй попытки. Если я запускаю ea, вызов индикатора возвращает ошибку fail to open / .ex4[123]. Если ea уже прикреплена к графику и я пытаюсь прикрепить ее заново, то она работает. Как это можно решить?

У меня нет этой проблемы (с кодом, который я разместил).

Проверьте, что значение hWnd отлично от 0.

Вы также можете попробовать увеличить значение sleep до 50 или 100.

Sleep(10 0);
 
Alain Verleyen:

У меня нет этой проблемы (с кодом, который я разместил).

Проверьте, что значение hWnd отлично от 0.

Вы также можете попробовать увеличить значение sleep до 50 или 100.

sleep сработал, спасибо
Причина обращения: