Ошибки, баги, вопросы - страница 2596

 

Ошибка в формировании транзакций (структура MqlTradeTransaction).

Воспроизведение ошибки: Отправить первый market-ордер объёмом 1 лот в Long, отправить второй market-ордер объёмом 2 лота в Short.

Ошибка в заполнении поля в структуре MqlTradeTransaction->position. В поле заполняется тикет предыдущей позиции. При продолжении торговли ордерами которые переворачивают позицию, в данном поле вообще выдаётся странная мешанина из старых и новых тикетов позиций.

Проверку проводил на Московской бирже, у брокеров: Открытие и БКС. В тестере ошибка тоже воспроизводится.

Скрины транзакций иллюстрирующие ошибку на этих операциях:

Открытие:

Открытие

БКС:

БКС

Тестер:

Тестер

 
Francuz:

Ошибка в формировании транзакций (структура MqlTradeTransaction).

Воспроизведение ошибки: Отправить первый market-ордер объёмом 1 лот в Long, отправить второй market-ордер объёмом 2 лота в Short.

Ошибка в заполнении поля в структуре MqlTradeTransaction->position. В поле заполняется тикет предыдущей позиции. При продолжении торговли ордерами которые переворачивают позицию, в данном поле вообще выдаётся странная мешанина из старых и новых тикетов позиций.

Проверку проводил на Московской бирже, у брокеров: Открытие и БКС. В тестере ошибка тоже воспроизводится.

Скрины транзакций иллюстрирующие ошибку на этих операциях:

Открытие:

БКС:

Тестер:


В режиме торговли "неттинг" есть только одна позиция. За время её жизни её идентификатор (position id) не меняется. Идентификатор равен тикету самого первого ордера, которым была открыта позиция.

 
Я в курсе. Но при "переворачивании" предыдущая позиция закрывается, а новая (с новым тикетом) в противоположную сторону открывается. Что в данных транзакциях отражается с ошибкой.
 
Francuz:
Я в курсе. Но при "переворачивании" предыдущая позиция закрывается, а новая (с новым тикетом) в противоположную сторону открывается. Что в данных транзакциях отражается с ошибкой.

Не закрывается. Вы можете в Терминале месяцами переворачиваться, а Терминал будет считать, что была только одна позиция. И в истории торгов покажет только одну запись за месяцы в режиме отображения закрытых позиций.

 
День добрый. Хочу провести отладку советника на исторических данных. Но отладчик запускает MovingAverage.ex5, а не моего советника. как побороть? Отладка на реальных данные запускает мой советник.
 
Azamat Mullayanov:
День добрый. Хочу провести отладку советника на исторических данных. Но отладчик запускает MovingAverage.ex5, а не моего советника. как побороть? Отладка на реальных данные запускает мой советник.

Опишите пошагово (со скриншотами) что именно Вы делаете и куда нажимаете.

 
Azamat Mullayanov:
День добрый. Хочу провести отладку советника на исторических данных. Но отладчик запускает MovingAverage.ex5, а не моего советника. как побороть? Отладка на реальных данные запускает мой советник.

Возможно, советник находится не в папке Experts. Например, в Scripts.

 
Vladimir Karputov:

Опишите пошагово (со скриншотами) что именно Вы делаете и куда нажимаете.

Извините. Полдня сидел тыкался, как на форум написал так сразу заработал. Отладчик не мог запустить советника с каталога \MQL5\Experts\My, сохранил в \MQL5\Experts отладчик начал работать как надо. Обратно скопировал в \MQL5\Experts\My - отладчик работает. в непонятках.
 
fxsaber:

Не закрывается. Вы можете в Терминале месяцами переворачиваться, а Терминал будет считать, что была только одна позиция. И в истории торгов покажет только одну запись за месяцы в режиме отображения закрытых позиций.

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

 
Francuz:

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

POSITION_TICKET меняется, POSITION_ID - нет.

Причина обращения: