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

 
2020.06.02 14:20:32.010 Ticks 'GAZR-6.20' file open or reading error [The process cannot access the file because it is being used by another process. (32)]
2020.06.02 14:20:32.010 Ticks 'GAZR-6.20' base save failed [There are no more files. (18)]
Что это за новые сообщения и как от них избавиться?
 
Andrey Khatimlianskii :

Исправилось само собой:


Очень печальный баг, и тянется, к сожалению, давно (фиксировал такие же странные показания МА).
На скринах видно, что баровая история не поменялась (есть еще другой скрин, который сделал советник в момент этого выброса). Значит, дело не в шпильке, которую оперативно затерли. Да и со стохастиком очевидно, что ошибка не с ценами.

Думал, что руки кривые, и неправильно запрашиваю данные с других ТФ, но проблема не в советнике. Родной индикатор такое рисует на родном ТФ. Ну, и советник видит то же самое.

Это как-то воспроизводимо?
 
Alain Verleyen:
Это как-то воспроизводимо?

Думаю, достаточно написать советника, сохраняющего скриншот при появлении таких значений индикатора.

Я долго отлавливал ошибку в сложном советнике, использующем кастум-индикатор, считающийся по индикаторам с нескольких инструментов. И думал, что косяк у меня.
А тут на совсем простом советнике словил вот такой артефакт. Повезло, что рядом работал советник, отправляющий скрин графика.

То есть, для воспроизведения не нужно ничего, кроме простого советника на одном индикаторе. И ждать.

 

Что-то никто не отвечает на этот вопрос. Может разработчики обратят внимание?

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Ошибки, баги, вопросы

Alexey Viktorov, 2020.06.01 16:32

Вот такой вопрос меня интересует, может кто уже проверял и знает с уверенностью:

Если отложенному ордеру поставить тип экспирации

ORDER_TIME_SPECIFIED_DAY

Ордер будет действовать до 23:59:59 указанного дня. Если это время не попадает на торговую сессию, истечение наступит в ближайшее торговое время.

и 23:59:59 не попадает на торговую сессию, а следующая торговая сессия открывается гепом так, что ордер должен быть активирован. Что будет первым удаление ордера или его активация?


А в общем-то и второй вопрс: Как задать день, в каком формате? Или не важно какое время дня будет указано?
 
Andrey Khatimlianskii :

Думаю, достаточно написать советника , сохраняющего скриншот при появлении таких значений индикатора.

Я долго отлавливал ошибку в сложном советнике, использующем кастум-индикатор, считающийся по индикаторам с нескольких инструментов. И думал, что косяк у меня.
А тут на совсем простом советнике словил вот такой артефакт. Повезло, что рядом работал советник, отправляющий скрин графика.

То есть, для воспроизведения не нужно ничего, кроме простого советника на одном индикаторе. И ждать.

Интересно знать. Спасибо.
 
Alexey Viktorov:

А в общем-то и второй вопрс: Как задать день, в каком формате? Или не важно какое время дня будет указано?

В MqlTradeRequest::expiration нулевое время нужно поставить

 
A100:

через ORDER_TIME_SPECIFIED и MqlTradeRequest::expiration

Давно бы уже документация прочитали бы

Ещё раз! Меня не интересует тип ORDER_TIME_SPECIFIED, меня интересует

ORDER_TIME_SPECIFIED_DAY

Ордер будет действовать до 23:59:59 указанного дня. Если это время не попадает на торговую сессию, истечение наступит в ближайшее торговое время.

Если торговля на ТФ W1 то я хочу задать время экспирации в пятницу. Можно конечно и посчитать время до пятницы, я не только читать умею, но и считать до 1000. Но вопрос именно такой какой меня интересует. В каком формате указать ДЕНЬ. Или не важно конкретно время дня, лишь-бы это время попадало на нужный день? И что произойдёт с ордером если в пятницу торговля закрылась, скажем в 21:00, а понедельник открылся гепом «через ордер». Что должно быть первым экспирация или активация.

 
A100:

Нулевое время нужно поставить

Спасибо что удалили сообщение на которое я так долго отвечал.

Вы уверены? Для подстраховки я конечно так и сделал-бы. Но хочется знать точно.

 
Alexey Viktorov:

Спасибо что удалили сообщение на которое я так долго отвечал.

Вы уверены? Для подстраховки я конечно так и сделал-бы. Но хочется знать точно.

Поставьте вручную отложенный ордер истечением на конкретную дату (без времени) и прочитайте программно его значения type_time и expiration

Я не сам это придумал, а так и сделал

 
A100:

Поставьте вручную отложенный ордер истечением на конкретную дату (без времени) и прочитайте программно его значения type_time и expiration

Я не сам это придумал, а так и сделал

Спасибо за подсказку. Я совсем не торгую руками и даже не подумал, что так можно проверить. Сделал чуток по другому. Вот такой код

  trade.OrderOpen(_Symbol, ORDER_TYPE_SELL_STOP, 0.1, 0, 1.24000, 0.0, 0.0, ORDER_TIME_SPECIFIED_DAY, D'2020.06.03 23:41:02');

и вот такой ордер.


Выходит что время не берётся во внимание.

Но без выяснения остаётся второй вопрос. Что исполнится первым экспирация или активация ордера...

Единственное чего опасаюсь, это разного поведения в тестере и реале или демке. А даже на демке можно ждать до одурения...