Ошибки, баги, вопросы - страница 3077
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
BarsCalculated() https://www.mql5.com/ru/docs/series/barscalculated
что возвращает? - это просто число которое после окончания расчетов в OnCalculate() индикатор вернул в return(rates_total) ?
Как я понимаю, это используется в случае пересчёта индикатора по ТФ отличному от текущего. А для текущего ТФ BarsCalculated() == prev_calculated
Запустите эксперта - он распечатает количество отложенных ордеров и позиций в рынке. Именно в рынке, а не в торговой истории.
Не много не понял, Вы имеете ввиду запустить на демо? Да я вижу что этот эксперт ищет ордера и позиции в рынке. Но я имел в виду Дебагер. Запуская код дебагером я вижу что Ордер номер 9 находиться в рынке это видно на вкладке торговля. Извиняюсь что скриншот смазал .Внизу Вкладка ТОРГОВЛЯ открыта. А значит ордер висит в рынке. Но по коду видно в ВЫРАЖЕНИИ (переменой statusOrder) что ордер выполнен полностью (может я не правильно понимаю статус ) с тикетом 9
ORDER_STATE_FILLED
Ордер выполнен полностью
Запуская код дебагером я вижу что Ордер номер 9 находиться в рынке это видно на вкладке торговля.
Визуализатор далеко не всегда синхронизирован с торговым окружением. Т.е. он может показывать старую информацию. Актуальная всегда в советнике.
Это очень частый вопрос, когда советник говорит одно, а Визуализатор показывает иное.
Визуализатор далеко не всегда синхронизирован с торговым окружением. Т.е. он может показывать старую информацию. Актуальная всегда в советнике.
Это очень частый вопрос, когда советник говорит одно, а Визуализатор показывает иное.
Ок. Понял спасибо . В принципе советник работает дальше логично, и ордер действительно выполнен только визуально это видно позже.
Ок. Понял спасибо . В принципе советник работает дальше логично, и ордер действительно выполнен только визуально это видно позже.
Чтобы видеть синхронизированную ситуацию в нужный момент, нужно после остановки тестера дождаться следующего тика.
Например, можно быстро промотать за пять секунд ДО интересного момента, затем нажать на паузу и по F12 пробрасывать каждый следующий тик. Все эти тики будут визуализированы корректно.
Идентифицировать рассинхрон можно выводом в комментарий времени текущего тика (с точностью до миллисекунд) и, сравнивая с тем, что показыват Обзор рынка Визуализатора. Если есть расхождение - рассинхрон.
ЗЫ Синхронизацию визуализатора при остановке дебагером (или при нажатии пауза), конечно, давно надо было сделать.
BarsCalculated() https://www.mql5.com/ru/docs/series/barscalculated
что возвращает? - это просто число которое после окончания расчетов в OnCalculate() индикатор вернул в return(rates_total) ?
проверил, да BarsCalculated() это return(rates_total)
инд А:
int OnCalculate... { static int cnt = 0; cnt++; Print("cnt = ", cnt); return(cnt); }инд В:
запустил на Н1 индикатор В, лог:
2021.09.02 16:11:44.872 A (EURUSD,M1) cnt = 1
2021.09.02 16:11:44.873 A (EURUSD,M1) cnt = 2
2021.09.02 16:11:44.998 A (EURUSD,M1) cnt = 3
2021.09.02 16:11:44.998 B (EURUSD,H1) BarsCalculated = 3
2021.09.02 16:11:46.617 A (EURUSD,M1) cnt = 4
2021.09.02 16:11:46.617 B (EURUSD,H1) BarsCalculated = 4
2021.09.02 16:11:46.663 A (EURUSD,M1) cnt = 5
2021.09.02 16:11:46.663 B (EURUSD,H1) BarsCalculated = 5
2021.09.02 16:11:46.671 A (EURUSD,M1) cnt = 6
2021.09.02 16:11:46.671 B (EURUSD,H1) BarsCalculated = 6
2021.09.02 16:11:46.684 A (EURUSD,M1) cnt = 7
2021.09.02 16:11:46.685 B (EURUSD,H1) BarsCalculated = 7
2021.09.02 16:11:46.697 A (EURUSD,M1) cnt = 8
2021.09.02 16:11:46.697 B (EURUSD,H1) BarsCalculated = 8
2021.09.02 16:11:47.008 A (EURUSD,M1) cnt = 9
2021.09.02 16:11:47.008 B (EURUSD,H1) BarsCalculated = 9
2021.09.02 16:11:47.029 A (EURUSD,M1) cnt = 10
2021.09.02 16:11:47.029 B (EURUSD,H1) BarsCalculated = 10
2021.09.02 16:11:47.502 A (EURUSD,M1) cnt = 11
2021.09.02 16:11:47.502 B (EURUSD,H1) BarsCalculated = 11
2021.09.02 16:11:47.614 A (EURUSD,M1) cnt = 12
2021.09.02 16:11:47.614 B (EURUSD,H1) BarsCalculated = 12
2021.09.02 16:11:47.620 A (EURUSD,M1) cnt = 13
2021.09.02 16:11:47.620 B (EURUSD,H1) BarsCalculated = 13
2021.09.02 16:11:47.667 A (EURUSD,M1) cnt = 14
2021.09.02 16:11:47.667 B (EURUSD,H1) BarsCalculated = 14
2021.09.02 16:11:47.713 A (EURUSD,M1) cnt = 15
2021.09.02 16:11:47.713 B (EURUSD,H1) BarsCalculated = 15
2021.09.02 16:11:47.726 A (EURUSD,M1) cnt = 16
2021.09.02 16:11:47.726 B (EURUSD,H1) BarsCalculated = 16
Добрый день! Что-то не получается решить проблему.
Нужно при первом запуске обработать все бары, после обработки обрабатывать только последний бар.
Сперва печатает 0, потом на каждом новом баре только последний, промежуточные бары не печатает.
В чем ошибка?
Добрый день! Что-то не получается решить проблему.
Нужно при первом запуске обработать все бары, после обработки обрабатывать только последний бар.
Сперва печатает 0, потом на каждом новом баре только последний, промежуточные бары не печатает.
В чем ошибка?
Добрый день! Что-то не получается решить проблему.
Нужно при первом запуске обработать все бары, после обработки обрабатывать только последний бар.
Сперва печатает 0, потом на каждом новом баре только последний, промежуточные бары не печатает.
В чем ошибка?
Для начала я бы попробовал поправить так:
Всем доброго времени суток. Подскажите кто ни будь сталкивался с такой проблемой. Сегодня до 10мск было все норм в мт5. Открывал ордера, выставлял стоп и профит.
После 10мск при открытии ордера, выставления стопа или профита происходит ожидание поставки в очередь и по истечении 10 и более минут, выставляется. И это до сих пор.