Получение истории по OrderCloseBy через MQL - страница 3

 
Ihor Herasko:
Можно и постфактум. Ведь в конце прогона все рабочие ордера будут отображены в истории счета.
Рабочие ордера отображены всегда, надо только объединить обе таблицы (MODE_TRADES и MODE_HISTORY).
 
fxsaber:
Рабочие ордера отображены всегда, надо только объединить обе таблицы (MODE_TRADES и MODE_HISTORY).
Я имею в виду, что в конце прогона не будет рабочих ордеров. А потому говорить в данном случае о MODE_TRADES не приходится. Я так понял, ТС видит проблему в сопоставлении комментариев рабочих и исторических ордеров. Этого, действительно, можно избежать, дождавшись закрытия всех рабочих ордеров. А это будет аккурат к концу прогона тестера.
 
Ihor Herasko:
Я имею в виду, что в конце прогона не будет рабочих ордеров. А потому говорить в данном случае о MODE_TRADES не приходится. Я так понял, ТС видит проблему в сопоставлении комментариев рабочих и исторических ордеров. Этого, действительно, можно избежать, дождавшись закрытия всех рабочих ордеров. А это будет аккурат к концу прогона тестера.
Не понимаю, почему нельзя просто объединить обе таблицы ордеров и работать так, будто это полностью History.
 
fxsaber:
Не понимаю, почему нельзя просто объединить обе таблицы ордеров и работать так, будто это полностью History.
ТС, по всей видимости, хочет сделать отчет одним махом, после окончания прогона тестера, не заморачиваясь поддержкой отчета по ходу теста. В принципе, в этом есть смысл, т. к. уменьшится время каждого прогона.
 
Ihor Herasko:
ТС, по всей видимости, хочет сделать отчет одним махом, после окончания прогона тестера, не заморачиваясь поддержкой отчета по ходу теста. В принципе, в этом есть смысл, т. к. уменьшится время каждого прогона.
Да, была именно такая простая на первый взгляд задачка, но с учетом того, что ордера меняются (лоты, комментарии) и часть инфы доступна только во время торговли, подход нужно менять.
 
Stanislav Korotky:
Да, была именно такая простая на первый взгляд задачка, но с учетом того, что ордера меняются (лоты, комментарии) и часть инфы доступна только во время торговли, подход нужно менять.
Вся информация доступна в истории счета. Ведь ордер sell 0.13 когда-нибудь, да закроется. Просто до этого мы обсуждали установление соответствия на определенный момент времени, когда этот ордер еще был рабочим.
 
Ihor Herasko:
Вся информация доступна в истории счета. Ведь ордер sell 0.13 когда-нибудь, да закроется. Просто до этого мы обсуждали установление соответствия на определенный момент времени, когда этот ордер еще был рабочим.
Допустим, этот ордер еще не закрыт. Что мешает решить задачу?
 
Ihor Herasko:
Вся информация доступна в истории счета. Ведь ордер sell 0.13 когда-нибудь, да закроется. Просто до этого мы обсуждали установление соответствия на определенный момент времени, когда этот ордер еще был рабочим.
Что-то мне кажется, что Вы теперь себе противоречите, да и имеющимся данным. В истории мы видим уже окончательное состояние каждого ордера, а как он менялся за счет встречных закрытий - восстановить после прогона нельзя.
 
Stanislav Korotky:
Что-то мне кажется, что Вы теперь себе противоречите, да и имеющимся данным. В истории мы видим уже окончательное состояние каждого ордера, а как он менялся за счет встречных закрытий - восстановить после прогона нельзя.

Можно. Комментарии к ордеру - в помощь. Ведь в тестере нет брокера, который "портит комментарии" )) 

Да и в приведенном Вами логе достаточно для этого информации. Просто там алгоритм сопоставления будет хитрее. А вот если добавить сбор истории по ходу тестирования, то алгоритм будет проще.

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

P. S. Смысл сопоставления: у ордеров #2 и #3 время и цена открытия одинаковы. Если при этом ордер #2 был закрыт встречно с другим ордером (#1), то это прямое указание на то, что ордер #3 является дочерним ордером от #2. В таком духе далее и разматывается клубок соответствий.

 
Да, работает.
Причина обращения: