ordersend()编码的帮助... - 页 2 1234 新评论 Ian Venner 2011.10.24 03:46 #11 你知道我只是在想我之前告诉你的我说的话。 如果是买入。 SL = Bid - StopLoss* Point TP = Bid + TakeProfit* Point 如果是卖出。 SL = Ask + StopLoss* Point。 TP = Ask - TakeProfit* Point。 我一直是这样做的,因为MQL4书中的例子就是这样做的,但现在我在想这看起来并不正确,如果你在卖出价上开仓,你想在该价格+你的TP金额上获利,你想在该价格-你的SL金额上止损? 换句话说,你的方法看起来是正确的,还是我错过了什么? blackmore 2011.10.24 03:52 #12 mugged: 1) 是的,这个方法是有效的!但是有什么办法可以解决这个问题吗?我讨厌想到最坏的情况,即最初的订单进去了,但修改却没有发生(连接死亡,发生错误,等等等等)。 好问题!我从来没有见过有人能解决这个问题。 请向你的经纪人了解这种 "最坏的情况"。 Simon Gniadkowski 2011.10.24 05:50 #13 mugged: 1) 是的,这个方法是有效的!但是有什么办法可以解决这个问题吗?我讨厌想到最坏的情况,即最初的订单进去了,但修改没有发生(连接死亡,发生错误,等等等等)。 在我的代码中,如果OrderModify失败,就会重试几次,如果重试失败,订单就会被关闭,如果OrderClose失败,就会重试,如果重试失败,还有一个函数 会检查所有的交易,它会检测没有设置SL或TP的订单,并尝试关闭它。 所有这些失败都会产生错误,这些错误会在屏幕上和通过电子邮件报告,电子邮件也会产生一个推送到我手机上的警报。 还有一种故障模式我还没有处理,那就是在下单后和修改前立即失去了与互联网的连接。 我有一个想法来处理这个问题,但我没有必要的PHP编码技能。 [删除] 2011.10.24 12:18 #14 我联系了我的经纪人,他们非常无用,因为他们不提供任何编程帮助。几乎所有的代表都知道如何在图表上应用EA。 不过,这个问题刚开始发生时有点奇怪,它在过去工作得非常好。我想知道是什么原因造成的... [删除] 2011.10.24 12:38 #15 你们遇到这个问题已经很久了,还是说这是一个新问题? Simon Gniadkowski 2011.10.24 12:41 #16 这是ECN经纪商的一个事实。 [删除] 2011.10.24 12:58 #17 谢谢你们的帮助。 我想,我只是绕过它。 [删除] 2011.10.24 12:58 #18 RaptorUK:在我的代码中,如果OrderModify失败,就会重试几次,如果重试失败,订单就会被关闭,如果OrderClose失败,就会重试,如果重试失败,还有一个函数会检查所有的交易,它会检测没有设置SL或TP的订单并尝试关闭它。所有这些失败都会产生错误,这些错误会在屏幕上和通过电子邮件报告,电子邮件也会产生一个推送到我手机上的警报。还有一种故障模式我还没有处理,那就是在下单后和修改前立即失去了与互联网的连接。我有一个想法来处理这个问题,但我没有必要的PHP编码技能。 Raptor,如果你不介意的话......你打算如何通过php来检查 连接? Ian Venner 2011.10.24 13:05 #19 也许你可以让手机以调制解调器模式连接到电脑上,这样如果电脑失去了常规的互联网连接,它就可以暂时使用手机网络重新连接。 William Roeder 2011.10.24 13:16 #20 RaptorUK: 还有一种故障模式我还没有处理,那就是在下单后和修改前立即失去与互联网的连接...。 我有一个想法来处理这个问题,但我没有必要的PHP编码技能。我的方法是直接报告错误并返回。在下一次勾选时,在重启时,在重新连接时,EA的orderSelect循环将找到未结订单,然后设置止损。 最大的问题是orderSend没有返回结果。该订单可能会或可能不会被打开。一旦你得到下一个tick,你就会知道。 1234 新评论 原因: 取消 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
你知道我只是在想我之前告诉你的我说的话。
如果是买入。
SL = Bid - StopLoss* Point
TP = Bid + TakeProfit* Point
如果是卖出。
SL = Ask + StopLoss* Point。
TP = Ask - TakeProfit* Point。
我一直是这样做的,因为MQL4书中的例子就是这样做的,但现在我在想这看起来并不正确,如果你在卖出价上开仓,你想在该价格+你的TP金额上获利,你想在该价格-你的SL金额上止损?
换句话说,你的方法看起来是正确的,还是我错过了什么?
1) 是的,这个方法是有效的!但是有什么办法可以解决这个问题吗?我讨厌想到最坏的情况,即最初的订单进去了,但修改却没有发生(连接死亡,发生错误,等等等等)。
好问题!我从来没有见过有人能解决这个问题。
请向你的经纪人了解这种 "最坏的情况"。
1) 是的,这个方法是有效的!但是有什么办法可以解决这个问题吗?我讨厌想到最坏的情况,即最初的订单进去了,但修改没有发生(连接死亡,发生错误,等等等等)。
在我的代码中,如果OrderModify失败,就会重试几次,如果重试失败,订单就会被关闭,如果OrderClose失败,就会重试,如果重试失败,还有一个函数 会检查所有的交易,它会检测没有设置SL或TP的订单,并尝试关闭它。 所有这些失败都会产生错误,这些错误会在屏幕上和通过电子邮件报告,电子邮件也会产生一个推送到我手机上的警报。
还有一种故障模式我还没有处理,那就是在下单后和修改前立即失去了与互联网的连接。 我有一个想法来处理这个问题,但我没有必要的PHP编码技能。
我联系了我的经纪人,他们非常无用,因为他们不提供任何编程帮助。几乎所有的代表都知道如何在图表上应用EA。
不过,这个问题刚开始发生时有点奇怪,它在过去工作得非常好。我想知道是什么原因造成的...
谢谢你们的帮助。
我想,我只是绕过它。
在我的代码中,如果OrderModify失败,就会重试几次,如果重试失败,订单就会被关闭,如果OrderClose失败,就会重试,如果重试失败,还有一个函数会检查所有的交易,它会检测没有设置SL或TP的订单并尝试关闭它。所有这些失败都会产生错误,这些错误会在屏幕上和通过电子邮件报告,电子邮件也会产生一个推送到我手机上的警报。
还有一种故障模式我还没有处理,那就是在下单后和修改前立即失去了与互联网的连接。我有一个想法来处理这个问题,但我没有必要的PHP编码技能。
Raptor,如果你不介意的话......你打算如何通过php来检查 连接?
还有一种故障模式我还没有处理,那就是在下单后和修改前立即失去与互联网的连接...。 我有一个想法来处理这个问题,但我没有必要的PHP编码技能。
我的方法是直接报告错误并返回。在下一次勾选时,在重启时,在重新连接时,EA的orderSelect循环将找到未结订单,然后设置止损。
最大的问题是orderSend没有返回结果。该订单可能会或可能不会被打开。一旦你得到下一个tick,你就会知道。