Изменить значение request.comment? - PullRequest
0 голосов
/ 04 мая 2018

Я использую различные виды стоп-лоссов и хотел бы получить уведомление (SendNotification()) о том, какой тип стоп-лосса был достигнут при выходе из сделки.

Допустим, я вошел в сделку по ...

request.action = TRADE_ACTION_DEAL;
request.symbol = pSymbol;
request.type = pType;
request.sl = pStop;
request.tp = pProfit;
request.comment = pComment;
request.volume = pVolume;
request.price = SymbolInfoDouble(pSymbol,SYMBOL_ASK);
request.price = SymbolInfoDouble(pSymbol,SYMBOL_BID)
OrderSend(request,result);

Теперь я хотел бы изменить request.comment на последний стоп-лосс, например:

request.action = TRADE_ACTION_SLTP;
request.symbol = pSymbol;
request.sl = pStop;
request.tp = pProfit;
request.comment = "Fixed SL";
PositionSelect(_Symbol);
request.order = PositionGetInteger(POSITION_IDENTIFIER);
OrderSend(request,result);

К сожалению, второй блок кода не меняет первый request.comment = pComment;, хотя (вместо этого новый комментарий [sl 1.19724]).

Можно ли изменить комментарий через TRADE_ACTION_SLTP? Что я делаю не так?

Спасибо!

1 Ответ

0 голосов
/ 11 мая 2018

Теперь я хотел бы изменить request.comment

На торговых платформах MQL4 / 5 никогда не было возможности сделать это

Грустно, но верно.

Базовая функциональность всегда была сосредоточена на разработке быстрого и надежного программного обеспечения в реальном времени (обеспечивающего все еще лучшее планирование наряду с потоком извне FxMarket-Event-Flow), так что имейте в виду продукт как есть.

Плюс, всегда была еще одна степень неопределенности, автоматизация на стороне брокера была почти бесплатной для изменения .comment части торговой позиции, так что даже если ваша OrderSend() явно указывало на то, что должно храниться там, результат был неуверенным, и сторона Брокера могла (когда бы это ни было, сразу или на любой более поздней стадии) изменить это поле вне какого-либо элемента управления (который был не осталось на вашей стороне), поэтому единственные полу-UUID # ключи могли быть помещены в .magic (и ваш локальный код приложения всегда должен был выполнять всю работу через некоторое key:value расширение хранилища для в противном случае неопределенного содержимого на стороне брокера.

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

нравится получать уведомления (SendNotification()) о том, какой тип стоп-лосса был достигнут при выходе из сделки.

Выполнимо, но нужно будет собрать всю промежуточную логику самостоятельно:

Желание понятно и выполнимо. Если будет создан надлежащий уровень промежуточной логики, можно наслаждаться любой такой автоматизацией.

Создав такие вещи, как расширенная визуальная торговля, удаленные искусственные предикторы ИИ / МЛ или полностью адаптивные неблокирующие графические инструменты с графическим интерфейсом в реальном времени (трейдер автоматически получает графические визуальные средства в графическом интерфейсе онлайн) накладывается поверх других инструментов индикатора EA + на поверхности графического интерфейса, полностью интерактивен / адаптивен и полностью изменяет щелчок мышью и адаптируется для быстрых визуально дополненных дискреционных модификаций управления торгуемыми активами), поэтому здесь ограничены только воображение и доступные ресурсы.

Тем не менее, необходимо соблюдать опубликованные ограничения платформы - так же, как OrderModify() не предоставляет никаких средств для выполнения вышеуказанного желания, дополнительная клиентская отчетность по торгуемым активам о прекращении позиции собираться по собственной инициативе, поскольку платформа не предоставляет (по очевидным причинам, указанным выше) никаких инструментов, имеющих отношение к такой непрофильной деятельности.

...