首页 > 解决方案 > 更改 request.comment-value?

问题描述

我使用了不同类型的止损,并希望收到通知 ( 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?我究竟做错了什么?

谢谢!

标签: mql4algorithmic-tradingmetatrader4mql5metatrader5

解决方案


我现在想要request.comment改变

在 MQL4/5 交易平台中从来没有办法做到这一点

悲伤,但真实。

核心功能始终专注于设计快速、可靠的软实时(在外部注入的 FxMarket-Event-Flow 流旁边仍然提供尽力而为的调度),因此请按原样忍受产品。

另外,总是存在更多程度的不确定性,经纪人侧自动化几乎可以免费修改.comment交易头寸的 - 部分,因此即使您OrderSend()明确说明应该在那里存储什么,结果也不确定并且代理端可以(无论何时,无论是立即还是在以后的任何阶段)都可以在任何控制之外更改此字段(没有留在您身边),因此唯一的半 UUID# 键可以放置在.magic( 和您的本地应用程序代码总是必须通过key:value对其他不确定的代理端内容的一些存储扩展来完成所有工作。

即使是贸易编号 ( ID, ticket) 标识符也不总是永久密钥,并且可能会在某些贸易管理操作下发生变化,因此在决定您的方式之前确实要非常小心。

希望收到通知 ( SendNotification()) 关于在交易退出时触发了哪种止损。

可行,但需要自己构建所有中间件逻辑:

这个愿望是明确和可行的。如果将构建适当的中间件逻辑层,则可以享受任何此类自动化。

已经构建了增强视觉交易、远程 AI/ML 量化预测器或实时完全自适应非阻塞 GUI 量化工具增强(您的交易者在 GUI 内获得在线图形视觉辅助,自动覆盖在其他GUI 界面上的 EA + 指标工具,完全点击和修改交互式/自适应快速视觉增强的交易资产管理自由修改),所以这里只有一个人的想象力和可用资源是一个人的限制。

然而,人们必须尊重已发布的平台限制 - 就像OrderModify()没有为上述愿望提供任何手段一样,附加交易资产客户特定的头寸终止报告将由自己主动组装,就像平台一样不提供(出于上述明显原因)与此类非核心活动相关的任何工具。


推荐阅读