Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1348

 
Aleksei Stepanenko #:

Помню жаловались тут на Вас в одной из веток.

Пусть ваш жалобщик ответит за свои слова!!!

Он никогда у нас ничего не покупал. 

Поэтому это просто грязная попытка убрать конкурентов.

Я требую вернуть мои продукты в Маркет. Это произвол!
 
Хотел бы узнать. Как можно связаться с тем жалобщиком? Мне кажется что это кто то из вас. Я месяц назад писал в тех.потдержку по поводу приобритения советника Сабита Досаева. Так вы мои письма удолили. Вот скрин NEO Сабита Досаева. Покажите лично мне хотя бы приблизительный который у вас продаётся на вашем марките. И сможет начать торговлю от 26 евроцентов.
 

Я сочувствую вам, друзья. Но здесь вы разговариваете с такими же пользователями как и вы.

Если у вас проблемы, пишите в сервисдеск.

 
Aleksei Stepanenko #:

Я сочувствую вам, друзья. Но здесь вы разговариваете с такими же пользователями как и вы.

Если у вас проблемы, пишите в сервисдеск.

Там сказано. Если  такой  темы нет в списке то  пишите на форуме! 

 

Подскажите, пожалуйста, в МQL5 есть простой понятный способ программно запустить OnCalculate()?

Про эмуляцию тиков с помощью ChartSetSymbolPeriod() я знаю. Но это не совсем то - происходит полный перезапуск всех индикаторов с нуля в окне с прохождением OnInit() и OnDeinit().

Нужен способ запускать OnCalculate() с сохранением  prev_calculated и всех наработанных флагов и значений static в функциях.
Такая необходимость возникает в мультивалютном индикаторе - его надо запускать принудительно, если в соседнее окно по другому символу пришёл обычный тик .

 
User_mt5 #:

Подскажите, пожалуйста, в МQL5 есть простой понятный способ программно запустить OnCalculate()?

Про эмуляцию тиков с помощью ChartSetSymbolPeriod() я знаю. Но это не совсем то - происходит полный перезапуск всех индикаторов с нуля в окне с прохождением OnInit() и OnDeinit().

Нужен способ запускать OnCalculate() с сохранением  prev_calculated и всех наработанных флагов и значений static в функциях.
Такая необходимость возникает в мультивалютном индикаторе - его надо запускать принудительно, если в соседнее окно по другому символу пришёл обычный тик .

Мультивалютник должен работать в таймере.
 
Alexey Viktorov #:
Мультивалютник должен работать в таймере.

Алексей, спасибо за ответ.

Может быть и так. И тогда вот эту чехарду с prev_calculated и доступ к данным, что даёт OnCalculate(), нужно организовать самостоятельно?

Прежде, чем я начну эти переделки, кто-нибудь, скажите, что программно вызвать OnCalculate() невозможно..

 
User_mt5 #:

Алексей, спасибо за ответ.

Может быть и так. И тогда вот эту чехарду с prev_calculated и доступ к данным, что даёт OnCalculate(), нужно организовать самостоятельно?

Прежде, чем я начну эти переделки, кто-нибудь, скажите, что программно вызвать OnCalculate() невозможно..

Но ведь в OnCalculate() по другим инструментам нет данных. Какой резон вызывать её если там нет ничего нужного…

 
Alexey Viktorov #:

Но ведь в OnCalculate() по другим инструментам нет данных. Какой резон вызывать её если там нет ничего нужного…

Возможно, я не всё знаю.. По моим представлениям, ни в какой функции нет данных по другим инструментам.

В моём случае получение цен по другим символам организовано так:

   double close = iClose   (symbol, TF, shift);    // close бара заданного графика

Это код, который отрабатывает в рамках исполнения OnCalculate().
Если бы у меня был способ запустить OnCalculate() по факту прихода тика в соседнее окно, то я бы легко обработал данные со всех окон вовремя.
А поскольку OnCalculate() вызывается только своим тиком, то мой индикатор ничего не знает о событиях в соседних окнах. Там цена уже давно ушла, а он всё спит и ждёт когда свой тик его разбудит..

Ещё.
Если уйти от OnCalculate() , то в моём случае, наверное, имеет смысл использовать OnBookEvent() ?

 
User_mt5 #:

Возможно, я не всё знаю.. По моим представлениям, ни в какой функции нет данных по другим инструментам.

В моём случае получение цен по другим символам организовано так:

Это код, который отрабатывает в рамках исполнения OnCalculate().
Если бы у меня был способ запустить OnCalculate() по факту прихода тика в соседнее окно, то я бы легко обработал данные со всех окон вовремя.
А поскольку OnCalculate() вызывается только своим тиком, то мой индикатор ничего не знает о событиях в соседних окнах. Там цена уже давно ушла, а он всё спит и ждёт когда свой тик его разбудит..

Ещё.
Если уйти от OnCalculate() , то в моём случае, наверное, имеет смысл использовать OnBookEvent() ?

В OnCalculate() пусть обрабатывается свой символ, а всё остальное вынести в пользовательскую функцию и вызывать её из OnTimer()
Причина обращения: