- www.mql5.com
- Гибкая торговая система MetaTrader 5 со всеми видами ордеров
- Возможности веб-версии - MetaTrader 5
- Инструменты фундаментального анализа в MetaTrader 5
- www.mql5.com
Вот конкретная ситуация. Допустим эксперт выставил ордер на продажу ORDER_TYPE_SELL со стопом. Через некоторое время стоп сработал, произошел вызов OnTrade(). Как в ней узнать, что теперь ордер ORDER_TYPE_SELL отработан? Ведь он как и до срабатывания стопа будет находится в истории сделок.
Разработчики вроде думали на счет параметров для OnTrade().
Пока дело обстоит так - Эксперт сам контролирует какие отложники ставились и какие позы открывались; также он сам "должен понять" почему отложники срабатывают, а позы закрываются.
Возможно надо сделать так. Перебрать все сделки, у каждой сделки посмотреть ордер, который ее инициировал. Сделка инициированная стопом по логике вещей должна показывать на изначальный ордер который изначально выставил позицию.
примерно так, я например отслеживал состояние позиции вот таким образом
int Event() { ulong deal_ticket; // тикет сделки string coment; int deal_type; // тип торговой операции HistorySelectByPosition(ID); int total=HistoryOrdersTotal(); deal_ticket=HistoryDealGetTicket(total-1); coment=HistoryDealGetString(deal_ticket,DEAL_COMMENT); deal_type=(int)HistoryDealGetInteger(deal_ticket,DEAL_TYPE); if(deal_type==1) { if(StringFind(coment,"sl")>=0) { //----- // некоторый код //----- } else if(StringFind(coment,"tp")>=0) { //----- // некоторый код //----- } } if(deal_type==0) { if(StringFind(coment,"sl")>=0) { //----- // некоторый код //----- } else if(StringFind(coment,"tp")>=0) { //----- // некоторый код //----- } } return(0); }
Хорошо, вот конкретная ситуация, срабатывает стоп-лосс. Происходит событие Trade. Однако срабатывания стоп-лосса не переводит ордер, которым была инициирована сделка в историю, как это было в МТ4, потому что ордер уже в истории. Но что делать когда стоп сработает. Произойдет новая сделка которая закроет сделку инициированную ордером. Как узнать что сделка инициированная ордером уже закрыта встречной сделкой инициированной стопом?
Вроде статья есть по поводу OnTrade(), там конечно не все по этому поводу, но многое есть.
Насколько я понимаю ситуация такая в общем виде:
1. Ставим отложку с определенным магиком;
2. Отложка срабатывает и на ее основании открывается поза (тут нужно определить какая поза открылась и на основании какого ордера);
3. Срабатывает SL и поза закрывается (эксперт видит что позы нет), теперь нужно определиться почему поза закрылась. А закрыться она должны в таком случае встречной сделкой.
В таком виде как сейчас есть, однозначно, ни о какой работе на реале не может быть и речи.
Об этом уже задавал вопрос здесь: https://www.mql5.com/ru/forum/1431/page3/#comment_11323
- www.mql5.com
В таком виде как сейчас есть, однозначно, ни о какой работе на реале не может быть и речи.
Об этом уже задавал вопрос здесь: https://www.mql5.com/ru/forum/1431/page3/#comment_11323
На реале не возможно, поскольку реала нет. А по сути возможно и на реале, только "геморно" очень...
PS
На сегодняшний момент есть проблемы и по серьезней...
На реале не возможно, поскольку реала нет. А по сути возможно и на реале, только "геморно" очень...
PS
На сегодняшний момент есть проблемы и по серьезней...
Насколько я понял, терминал отправляет заявку на торговую операцию - сервер (ДЦ) отвечает что заявка принята или отклонена по какой то причине.
Но это не значит, что позиция откроется.
Как узнать что позиция открылась или нет, каким объемом, по какой цене. Сколько нужно ждать чтобы получить результат.
А если мультивалютный эксперт.
- www.mql5.com
Насколько я понял, терминал отправляет заявку на торговую операцию - сервер (ДЦ) отвечает что заявка принята или отклонена по какой то причине.
Но это не значит, что позиция откроется.
Как узнать что позиция открылась или нет, каким объемом, по какой цене. Сколько нужно ждать чтобы получить результат.
А если мультивалютный эксперт.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования