文章 "使用限价订单替代止盈且无需修改 EA 的原始代码"

 

新文章 使用限价订单替代止盈且无需修改 EA 的原始代码已发布:

使用限价订单来替代传统的止盈是论坛讨论的长期话题。 这种方法的优点是什么?如何在您的交易中实施? 在本文中,我将向您介绍我对此主题的看法。

在各种论坛中,用户批评 MetaTrader 5 的市场止盈价位性能。 这样的帖子也可以在本网站的论坛里找到。 用户撰写了许多在执行止盈期间滑点对结算结果的负面影响。 作为备选方案,一些人建议使用限价订单来取代标准止盈。

另一方面,与标准止盈相比,采用限价订单允许交易者实现部分和逐级平仓的算法,因为在限价订单中,您可以指定不同于实际持仓量的交易量。 在本文中,我想提供一种能够实现此类止盈的替代选项。

我认为,没有必要争论哪种方案更好 — 内置的止盈或取代它的限价订单。 每个交易者都应该根据他们的策略原则和需求来解决这个问题。 本文仅提供一种可能的解决方案。

EA 操作

作者:Dmitriy Gizlyk

 

我们应该重载PositionGetDouble

OrdersTotal 将看到伪 TP。也就是说,在使用该实现时仍会受到某些限制。


如何检查解决方案的正确性?

 
我不认为实施这个想法有什么意义,因为它只会给用户带来额外的费用,即向经纪人支付开立新仓位的佣金!您的 LIMITNIK 只不过是为经纪人开立一个新的订单,经纪人自然会从中收取点差和佣金!因此,目前使用您的想法会给客户带来额外的不合理支出!该项目应推迟到 "更好 "的时候!!!!
 
Olexiy Polyakov:
我不认为实施这一想法有什么意义,因为这只会导致用户因开立新仓位而向经纪商支付佣金,从而增加额外开支!

为什么不怀疑自己的观点可能是错误的呢?

 
fxsaber:

为什么连自己的观点可能是错误的都不被质疑?

你在我的评论中看到了哪个错误?外汇经纪商开仓要收取佣金和点差!按照标准方式平仓不收取佣金!在您的案例中,平仓 是通过开立新的交易来完成的,这意味着您将再次被收取佣金和点差!请解释一下,如果有标准的平仓方式,支付两次费用有什么意义?
 

除非我在文章中遗漏了什么,否则限价订单可能被部分执行(或根本不执行)而价格掉头的情况没有被考虑在内。

而市场 TP 可以全部执行,并保证执行。这是这种方法的一个重大缺点。

总的来说,如果能在 MQL 中增加 SL/TP交易量参数 的设置,以及为一个仓位设置多个 SL/TP 的可能性(不同的价格和交易量),那就更好了。这只是一个梦想。

 
Dmitriy Skub:

除非我在文章中遗漏了什么,否则限价订单可能会被部分执行(或根本不执行),而价格会反转的选项就没有被考虑在内。

而市场 TP 可以全部执行,并保证执行。这是这种方法的一个重大缺点。

在限价订单中,这种情况随处可见。这不可能是缺点。

 
在 DCs 中使用限价订单没有优势。(就滑点而言)在证券交易所,您仍然需要证明这一点。
 
Dmitriy Skub:

除非我在文章中遗漏了什么,否则限价订单可能会被部分执行(或根本不执行),而价格会反转的选项就没有被考虑在内。

而市场 TP 可以全部执行,并保证执行。这是这种方法的一个重大缺陷。

总的来说,如果能在 MQL 中增加 SL/TP 交易量参数的设置,以及为一个仓位设置多个 SL/TP 的可能性(不同的价格和交易量)就更好了。这只是一个梦想。

1.如果限价订单没有被完全触发,订单的其余部分就会被挂起等待价格。

2.2. 至于价格掉头向左,甚至在达到止盈之前都有可能。而事实上,市场订单会以更差的价格成交,这只是所使用策略的哲学方法问题:在执行止盈时,负滑点对您来说是否可以接受。

 
fxsaber:

如何检查解决方案的正确性?

在测试仪和模拟账户上检查了解决方案的正确性。测试同时在净账户和对冲账户上进行。

 
Dmitriy Gizlyk:

在测试仪和模拟账户上检查了解决方案的正确性。测试同时在净账户和对冲账户上进行。

测试的智能交易系统是什么?