по GetTradeRecords приходят только открытые позиции (либо отложенные ордера)
ищите Ваш закрытый ордер в AccountHistory. что касается limit-order, у него остаётся тот же самый тикет. сравнивайте списки. либо проверяйте, наличие значений stoploss/takeprofit и сравнивайте их с ценой открытия.
ищите Ваш закрытый ордер в AccountHistory. что касается limit-order, у него остаётся тот же самый тикет. сравнивайте списки. либо проверяйте, наличие значений stoploss/takeprofit и сравнивайте их с ценой открытия.
Получится путаница
Действительно, если я хочу выставить новую заявку, то должен проверить объем выставленных ранее. При этом, программа должна пролистать список полученных строк, но как она сможет понять, читая строку, открыта позиция по данному limit-ордеру или нет? От этого решительным образом зависит модель поведения.
Если ордер не открыт, то его можно либо удалить, либо модифицировать, а если открыт, то только закрыть. Почему не ввести дополнительное поле, которое могло бы служить индикатором состояния заявки?
Действительно, если я хочу выставить новую заявку, то должен проверить объем выставленных ранее. При этом, программа должна пролистать список полученных строк, но как она сможет понять, читая строку, открыта позиция по данному limit-ордеру или нет? От этого решительным образом зависит модель поведения.
Если ордер не открыт, то его можно либо удалить, либо модифицировать, а если открыт, то только закрыть. Почему не ввести дополнительное поле, которое могло бы служить индикатором состояния заявки?
P.S.
Приходит ли новая строка в момент открытия limit ордера?
Я конечно могу следить не пересек ли bid/ask соответствующей цены, но это не гарантирует, что вы исполнили заявку (никто не застрахован от ошибок), поэтому мне нужно какое-то подтверждение со стороны сервера, что все в порядке.
Приходит ли новая строка в момент открытия limit ордера?
Я конечно могу следить не пересек ли bid/ask соответствующей цены, но это не гарантирует, что вы исполнили заявку (никто не застрахован от ошибок), поэтому мне нужно какое-то подтверждение со стороны сервера, что все в порядке.
а вы отслеживайте тип ордера. у открытого ордера может быть только 2 типа - OP_SELL и OP_BUY
если же указан один из лимитных типов, то ордер ещё точно не открыт
если же указан один из лимитных типов, то ордер ещё точно не открыт
да, конечно. только не новая строка.
при любом открытии или закрытии приходит сообщение UPDATE_TRADES, в ответ на которое Вы должны получить новый список открытых позиций
при любом открытии или закрытии приходит сообщение UPDATE_TRADES, в ответ на которое Вы должны получить новый список открытых позиций
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Каким образом можно понять из ссобщений, получаемых функцией MtGetTradeRecors, что limit-order исполнен (открыта позиция). И как понять, что пришедшая строка означает, что он закрыт (например по stop-loss)?