贸易交易时 - 页 6 123456789 新评论 fxsaber 2016.12.04 22:38 #51 prostotrader:你可能根本不记得任何事情 我同意这样做是可行的(在全倒的情况下)。void OnTradeTransaction ( const MqlTradeTransaction &Trans, const MqlTradeRequest &Request, const MqlTradeResult &Result ){ if ((Trans.type == TRADE_TRANSACTION_DEAL_ADD) && (Trans.position > 0) && !PositionSelectByTicket(Trans.position)) Print("Position #" + (string)Trans.position + " - triggered SL/TP.");} 但对话似乎变得 更广泛了。 prostotrader 2016.12.04 22:46 #52 Andrey Dik:你很不专心,我不是话题的发起人。你还应该给我看这样的代码。//——————————————————————————————————————————————————————————————————————————————void OnTradeTransaction (const MqlTradeTransaction &trans, // структура торговой транзакции const MqlTradeRequest &request, // структура запроса const MqlTradeResult &result) // структура ответа{ } 如果你不喜欢它,你可以使用Joba!是这样吗?我已经花了足够的时间来回答你的问题。如果你的问题不是那么 "抽象",也许答案会更具体。即。 1.FORTS或FOREX2.你用的是什么类型的网状物还是绿篱?3.在职位的有效期 内是否使用了其他订单问题和答案是一样的。 prostotrader 2016.12.04 22:52 #53 fxsaber: 我同意这样做是可行的(在充分填充的情况下)。void OnTradeTransaction ( const MqlTradeTransaction &Trans, const MqlTradeRequest &Request, const MqlTradeResult &Result ){ if ((Trans.type == TRADE_TRANSACTION_DEAL_ADD) && (Trans.position > 0) && !PositionSelectByTicket(Trans.position)) Print("Position #" + (string)Trans.position + " - triggered SL/TP.");} 但对话似乎变得 更广泛了一些。我不记得可以为ST/TP设置音量。如果没有(我现在检查),该位置将关闭FULL或SL或TP fxsaber 2016.12.04 22:53 #54 prostotrader:我不记得等待ST/TP设置音量,如果没有的话。那么该仓位将关闭满额或SL或TP 流动性可能就是不够的。 prostotrader 2016.12.04 22:55 #55 fxsaber: 流动性可能就是不够的。 是的,而且经纪人可能会关闭电源:)....。 fxsaber 2016.12.04 23:14 #56 prostotrader: 是的,而且经纪人可以关闭电源 :).... 拿一个低流动性的工具,就这样了。 prostotrader 2016.12.04 23:24 #57 fxsaber: 拿一个低流动性的工具,就这样了。这就是我推荐使用挂单 的原因由以下人员添加这在很大程度上取决于市场和仪器... DMITRII PECHERITSA 2018.10.20 08:55 #58 <br/ translate="no">为了准确识别在OnTradeTransaction事件中哪个订单得到了响应,除第一个订单事件外的所有事件都要用票据签名。第一个事件是由ticket和request_id共同签署的。用户在提交订单后立即从OrderSendAsinc函数中获得 request_id。这就是特定的OrderSendAsinc迭代与OnTradeTransaction中获得的结果的联系。OrderSendAsync 中的票据可能根本就不存在,如果我们以每秒100个的速度发射订单,很可能就不存在了(最多是retcode 10008,就这样)。 prostotrader 2018.10.20 20:02 #59 dmipec:OrderSendAsync中的票据可能存在,也可能不存在,如果订单以每秒几千单位的速度发射,很可能就不存在了(retcode 10008最多就是这样)。好吧,不是10个,只是在标准登录中每秒30个。 如果你写得正确,订单肯定会在那里。 fxsaber 2019.12.16 09:01 #60 Vasiliy Sokolov: 与其分析事件,不如分析交易环境,只有当交易环境发生变化时,你才能做出必要的决定。OnTransaction只能在非常有限的情况下使用,在你的工作中通常最好不要使用它。看看MetaTrader 4,它没有OnTransaction,每个人都没有它。 我同意。但不幸的是,在MT5中,与MT4不同,交易环境可能与现实不相符。例如,当一个挂单被执行了几毫秒后,它可能就不知所踪了。甚至OnTradeTransaction 在这里也无济于事。 123456789 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
你可能根本不记得任何事情
{
if ((Trans.type == TRADE_TRANSACTION_DEAL_ADD) && (Trans.position > 0) && !PositionSelectByTicket(Trans.position))
Print("Position #" + (string)Trans.position + " - triggered SL/TP.");
}
但对话似乎变得 更广泛了。
你很不专心,我不是话题的发起人。
你还应该给我看这样的代码。
void OnTradeTransaction (const MqlTradeTransaction &trans, // структура торговой транзакции
const MqlTradeRequest &request, // структура запроса
const MqlTradeResult &result) // структура ответа
{
}
如果你不喜欢它,你可以使用Joba!是这样吗?
我已经花了足够的时间来回答你的问题。
如果你的问题不是那么 "抽象",也许答案会更具体。
即。
1.FORTS或FOREX
2.你用的是什么类型的网状物还是绿篱?
3.在职位的有效期 内是否使用了其他订单
问题和答案是一样的。
我同意这样做是可行的(在充分填充的情况下)。
{
if ((Trans.type == TRADE_TRANSACTION_DEAL_ADD) && (Trans.position > 0) && !PositionSelectByTicket(Trans.position))
Print("Position #" + (string)Trans.position + " - triggered SL/TP.");
}
但对话似乎变得 更广泛了一些。
我不记得可以为ST/TP设置音量。
如果没有(我现在检查),该位置将关闭FULL或SL或TP
我不记得等待ST/TP设置音量,如果没有的话。
那么该仓位将关闭满额或SL或TP
流动性可能就是不够的。
是的,而且经纪人可以关闭电源 :)....
拿一个低流动性的工具,就这样了。
这就是我推荐使用挂单 的原因
由以下人员添加
这在很大程度上取决于市场和仪器...
为了准确识别在OnTradeTransaction事件中哪个订单得到了响应,除第一个订单事件外的所有事件都要用票据签名。
第一个事件是由ticket和request_id共同签署的。用户在提交订单后立即从OrderSendAsinc函数中获得 request_id。这就是特定的OrderSendAsinc迭代与OnTradeTransaction中获得的结果的联系。
OrderSendAsync 中的票据可能根本就不存在,如果我们以每秒100个的速度发射订单,很可能就不存在了(最多是retcode 10008,就这样)。
OrderSendAsync中的票据可能存在,也可能不存在,如果订单以每秒几千单位的速度发射,很可能就不存在了(retcode 10008最多就是这样)。
好吧,不是10个,只是在标准登录中每秒30个。
如果你写得正确,订单肯定会在那里。
与其分析事件,不如分析交易环境,只有当交易环境发生变化时,你才能做出必要的决定。OnTransaction只能在非常有限的情况下使用,在你的工作中通常最好不要使用它。看看MetaTrader 4,它没有OnTransaction,每个人都没有它。
我同意。但不幸的是,在MT5中,与MT4不同,交易环境可能与现实不相符。例如,当一个挂单被执行了几毫秒后,它可能就不知所踪了。甚至OnTradeTransaction 在这里也无济于事。