English Русский Español Deutsch 日本語 Português Türkçe
preview
从市场里选择智能交易系统的正确途径

从市场里选择智能交易系统的正确途径

MetaTrader 5测试者 | 4 四月 2022, 11:22
1 644 2
Evgeniy Ilin
Evgeniy Ilin

内容

概述

今日,MetaTrader 市场是汇集交易者、用户和程序员的最大社区,他们有着相同的目的:从投资市场赚取盈利。 论坛上有很多关于本资源中介绍的产品、及其品质的讨论。 在本文中,我将检查所有这些陈述,并向所有仍有疑问的人士展示市场里提供的广泛机会。 甚而,我们将看看在此是否有可能找到一个有价值的产品,如果有的话,我们将尝试如何发现它们。


正确理解市场,以便获得最佳用户体验

任何集市都提供不同类型的产品,包括优秀和糟糕的产品,以及介于两者之间的产品。 市场也不例外。 MQL5 市场拥有如此多的产品,只有那些对这个市场持有偏见态度的用户才会觉得很难或几乎不可能找到想要的产品。 这些用户可能会说:

  • 我测试了 100 套系统,但什么也没找到
  • 如果我写不出圣杯,那么它就不存在了
  • 那里不可能有任何圣杯
  • 终端无法提供足够的数据进行分析
  • 智能交易系统不能像人类那样有效地分析行情
  • 没有人会出售真正有效的系统
  • 系统每月必须生成 +100% 的盈利;而每年 100% 的盈利太少了
  • 智能交易系统的费用越高,评级越高,EA 就越好
  • 一年以上的正面监测才是可靠的
  • 我误导了买家,败坏了市场信誉,因为我在这里没能赚到钱
  • 我是一名论坛老鸟
  • 我生于华尔街

以及类似的事情。 可能有不同的陈述,但相关的主要思路是,如果有人有不好的体验,失败的原因在于集市本身,而不在于个人。

集市不会对某人购买低品质产品(在他们看来)负责。 集市的功能就是把买卖双方带到一起,仅此而已。 我认为这个功能在此已得到了成功实施。 大量的产品和服务导致竞争升级。 如果您不愿竞争,这也许是一个自我发展进行投资的好理由。 如果您具备所需的知识,您应不会轻易被欺骗,并将能够在资源中提供的丰富产品中找到有效的解决方案。 花点时间:有志者事竟成.。

在本文中,我们将详细地研究如何高效、准确地查找交易系统和信号。 我们将选取市场上的例子,从头到尾研究整个过程,当然,不会披露作者的姓名。


评估自动交易系统的关键规则

在我们继续分析示例之前,我们首先定义规则和准则,根据这些规则和准则,我们就能针对集市上的特色产品加以分析。 奇怪的是,绝大多数人不明白可盈利智能交易系统或信号是什么样,以及如何区分真正有效的解决方案和伪造方案。 基于我以 MQL4 和 MQL5 编写自动交易系统的经验,我已经为如何选择一款有潜力的智能交易系统制定了非常明确和有效的准则;如果执行得当,该智能交易系统或许能变成所谓的“圣杯”。 首先,我会在此分享这些规则,然后我将解释每一个规则的含义。 这些规则如下:

  1. 在策略测试器中正确选择测试周期的持续时间
  2. 正确评估智能交易系统的操作(基于柱线或即时报价)
  3. 评估所用的终端数据
  4. 如果可能,遵照作者建议,在接近的时间帧里进行测试
  5. 针对不同交易产品调整独立回测的数量
  6. 凭借可视化能力进行测试,并查看隐藏在背后的东西
  7. 正确的测试范式(测试顺序和从中得出正确结论的能力)
  8. 在策略测试器中测试交易系统时选取的正确点差(在 MetaTrader 5 中,它可通过真实即时报价模式来实现)
  9. 正确评估所有执行的回测
  10. 提供实盘账户监控
  11. 正确分析实盘账户监控
  12. 前向测试是检测过度拟合的途径之一
  13. 了解优化过程及其对前向区间的影响
  14. The understanding of the random walk processes and their influence on trading
  15. 了解 MetaTrader 4 和 MetaTrader 5 测试器的具体情况,以及它们之间的差异(优点和缺点)
  16. 如果可能的话,您要有自己开发交易系统的经验
  17. 了解资金管理机制关键要点,及其对交易的影响
  18. 理解回测和实盘交易之间的区别
  19. 了解演示账户和实盘账户之间的差异
  20. 了解并理解最流行的交易系统
  21. 了解数学知识,包括与市场有关的概率论
  22. 了解有关市场的真相(您可以称之为经验)

正如您所见,我们有一个相当长的清单。 甚至,每一项都有很多细微差别和秘密。 每一处细微差别都会以各自的方式影响结果。 在此我们将研究最低要求的基础,这将有助于您开始有效地分析集市上的产品。 若您明白清单中的大部分内容对您来说没啥作用,那它就不是问题。 在本文中,您将看到,这其中其实没有什么特别困难的地方。 我确信,任何人,即使是第一次使用该平台的人,都能够摆脱恐惧,运用一套简单的规则,以合理的价格来选择优质产品,或者至少能够找到一些重要问题的简单答案。 把这篇文章读到最后,您会发现它有多么容易。


智能交易系统运营机制的关键

我们将研究清单中的前三项组合。 基于测试我自己和其他人员开发的系统经验,以及其他用户的经验,我可以说有这样几种类型的智能交易系统:

  • 基于即时报价的 EA
  • 基于柱线的 EA
  • 由计时器控制的 EA

如您所见,类型并不多。 例如,如果一个 EA 是基于即时报价操作的,那么它只会在该事件发生后,才会执行所有计算和交易操作。 第二种类型稍微复杂一些。 以前我在开发基于即时报价的机器人,现在我已经切换到基于柱线操作的 EA。 不幸的是,在 MQL4 和 MQL5 的智能交易系统中,不可能收到新柱线出现事件。 但它可以通过运用其它功能,以不同的途径实现。 这与测试间隔的长度直接相关。 第三类智能交易系统是由计时器操控的。 并非所有此类 EA 都能在策略测试器中正确测试。 开发人员通常可以证明这种选择是合理的,但我对这种解决方案非常怀疑。

如果一款智能交易系统跟踪即时报价,这会在实际运行时导致自发产生额外的风险和困难。 此类 EA 通常对网速非常敏感,尤其是靠市价单进行交易的情况下。 对它们来说,即使是 50 毫秒的延迟也是至关重要的。 在这种情况下,人们只能租用靠近交易服务器的VPS(虚拟服务器),从而尽量降低这种延迟影响。

如果机器人使用挂单,则几乎可以完全消除这种负面情况。 无论如何,这样的系统可以产生更多的利润、或减少可能的损失。

根据我的经验,最稳定的是追踪柱线的系统 — 我将在文章末尾用我自己开发的系统来证明这一点。 当然,根据即时报价数据可以找到盈利丰厚的系统,但这要困难得多。 我之所以提及这一点,是因为本文的目的是提供制定正确决策的最简单方法。

根据上述思路,最重要的部分是根据以下原则对系统进行测试:

  1. EA 跟踪即时报价
  2. EA 跟踪柱线

我们来看看这些事件是如何在代码中实现的。 以下是新的即时报价出现事件:

//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
  //some logic
  }

一次即时报价是来自服务器的每个新价格。 如果服务器上的价格发生变化,服务器会将此事件发送给所有客户端。 基于柱线的操作可由此事件及额外应用过滤功能来实现:
//+------------------------------------------------------------------+
//| Expert new bar function                                          |
//+------------------------------------------------------------------+
datetime PrevTimeAlpha=0;  
bool bNewBar()
   {
   if ( Time[1] > PrevTimeAlpha )
       {
       if ( PrevTimeAlpha > 0 )
          {
          PrevTimeAlpha=Time[1];
          return true;
          }
       else
          {
          PrevTimeAlpha=Time[1];
          return false;
          }
       }
   else return false;
   }  

这是我如何做到这一点的一个示例。 还有其它可能的方法。 重要的是,所有这些函数最终都将在 OnTick 事件中用到:
void OnTick()
  {
  if ( bNewBar() ) { /*some logic*/ }
  }

下面是计时器事件:
//+------------------------------------------------------------------+
//| Timer function                                                   |
//+------------------------------------------------------------------+
void OnTimer()
  {
  //some logic
  }

可以看出,就像在前面的事件中一样,所有逻辑都源自事件,任何智能交易系统代码都正是由这些事件驱动才进行操作。 在此之前,应在 EA 启动期间为计时器事件设置所需的时间(以毫秒为单位):
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   EventSetTimer(60);
   return(INIT_SUCCEEDED);
  }

这就行了。 我们已经看到了三种可能的 EA 逻辑范式,这足够进一步的分析了。 当然,还有很多其它的事件,但是算法交易者很少会用到它们,因为它们是非常怪异和情景化的。


测试智能交易系统的主要细微差别

首先,理解基础知识令我们对智能交易系统的运作方式有了初步的了解。 如果我们更详细地研究这个问题,我们将看到,例如,基于即时报价的测试可以在策略测试器中以两种方式实现:

  • 依据预定义公式在柱线内人工生成即时报价
  • 从经纪商服务器加载真实的即时报价

这两个选项都已在 MetaTrader 4 和 MetaTrader 5 中实现。 唯一的区别是,在 MetaTrader 5 终端版本中,可以直接采用即时报价进行测试,而 MetaTrader 4 平台需要额外的软件。 因此,如果您可以使用 MetaTrader 5,那么尽量在其策略测试器中进行测试,因为它更便捷。

请注意,真实的即时报价和柱线数据会占用大量磁盘空间。 因此,经纪商只能在其服务器上存储有限数量的相关数据。 如何知道金融产品所能提供的数据量? 这不是问题。 该功能在 MetaTrader 5 中得以实现。 终端的主面板上有 “symbols(品种)”按钮:

Symbols(品种)按钮

点击它会打开一个窗口,其中包含关于即时报价和柱线的必要信息。 若要了解经纪商数据库中可用的即时报价数量,可以指定所需的品种和时间间隔,然后单击“Request(请求)”。 相关的即时报价数据将从服务器下载:

下载即时报价

如果从服务器收到的即时报价数量少于您指定的时间段,您将收到一条相关消息 — 并在上图中用红色边框高亮显示。 此消息建议您在真实即时报价模式下应从数据的哪里开始进行测试。 如果您设置的真实即时报价时间段不可用,那么平台将生成模拟的即时报价。 智能交易系统基于模拟的即时报价进行测试会产生失真的结果,但现在您已知道如何避免它了。 您可以改用基于柱线的智能交易系统,它不存在这个缺点!

基于柱线的与此相同:

下载柱线

根据测试时间帧,大多数品种通常能提供 2000 根或更早时间的柱线数据。 在上图中,消息显示,根据终端内部存储的限制,已经下载了 100000 根柱线数据。 在其它情况下,信息会有所不同。 下表显示了终端存储设置:

MetaTrader 5 存储设置

下面是报价存储配置的大小。 如果其尺寸不足以进行测试,增加它,并重新启动终端。 在下一次请求时就会下载可用的所需历史记录。 一个重要特征是,历史柱线数量等于图表上的柱线数量,即 “Maxbarsinchart(图表最大柱线数)”。

这与 MetaTrader 4 类似 — 从主菜单进入“工具 -> 历史服务器”。

MetaTrader 4 的历史中心

将打开一个类似的窗口:

MetaTrader 4 存储尺寸设置

MetaTrader 5 中的常见变量分为两部分:

  • Max barsinhistory — 可能存在的历史柱线数量
  • Max barsinchart — 图表上可以显示的柱线数量

存储受到第一个变量的限制,而第二个变量限制了存档中显示的数据量,以及终端中任何图表上显示的柱线数量。 也许,在早期的终端版本中,这是为了节省内存。 现在,我们来看一下 MetaTrader 4 中存档是啥样的:

MetaTrader 4 中的报价存档

若要下载历史记录,请选择所需的品种,并单击“下载”。 与 MetaTrader 5 的唯一区别在于,它无法只请求历史记录的一部分 — 根据设置中的限制,所有时间帧的历史记录都是全部下载。 您已经知道如何设置或去除这些限制。

在测试之前,您应该准备历史记录,这对于 MetaTrader 4 尤其重要。 在终端当中,手动下载所需的历史记录,而 MetaTrader 5 则拥有自动加载数据功能。 如果在没有预先下载历史记录的情况下启动回测,终端将下载所需的数据

准备好历史记录之后的下一步是确定从哪个时间点开始进行回测,以及采用哪一种级配。 如果您从当前日期开始,或者从以前的完整年度至当前年度进行测试,我建议采用历史中的最后一年进行第一次测试。 基于这样的测试,您可以对测试器的性能做出初步结论。 如果 EA 在这段时间内没有表现出良好的性能,我们可以立即切换到下一个进行分析。

如果性能可以接受,则使用整个可用历史记录测试 EA,在策略测试器中设置更大的存储空间,以确保 EA 可以通过此回测。 如果可能,测试时采用实际即时报价。 为了进行正确的评估,如果 EA 允许,最好禁用所有资金管理机制。 严格地说,未提供这种机制的智能交易系统应该经过仔细检查,因为您丧失了交易系统最重要的指标之一,即重点的策略原始预期回报。 这个参数在评估交易系统时起着关键作用,其重要性无论怎样估计都不为过。

在测试之前,了解 MetaTrader 4 和 MetaTrader 5 测试器之间的差异非常重要。 在较新的终端版本中,点差有一个较低的限制:如果指定点差低于此限制,测试则仍将以该最小限制执行。 如果您设置的点差高于此值,测试则会采用指定值。 这种机制出于保护买家。 它不允许在测试中设置不真实的低点差,因为即使多一个点也可能会让您耗光资金。 该最小值与测试 EA 的品种价格历史记录中的平均点差值相关联,尽管品种规范中未显示该值。 不要忘记这个特性。 在测试其它交易系统时,最好采用当前点差,在这种情况下,终端将采用历史记录中每根柱线保存的数值。 如果您使用每次即时报价进行测试,终端知道每次即时报价的相关点差值,基于即时报价的智能交易系统的测试会非常接近真实情况。

MetaTrader 4 中的测试提供了更简单的点差设置。 点差可以从 1 开始设置为任何所需的数值。 测试器将使用指定的确定数值。 在整个测试期间,点差都是固定的,这其实并不好,但您可以查看当前的点差,添加佣金、隔夜利息、可能的滑点,以及一些附加数值,从而确保系统能够经受住点差扩大的影响,这是测试中的一个重要方面。

在 MetaTrader 5 中,点差如下设置:

MetaTrader 5 点差

在 MetaTrader 4 中,它更简单:

MetaTrader 4 点差

虽然 MetaTrader 4 中的设置更容易,但在这个版本中进行测试并不可取。 市场上提供的几乎所有 EA 都有两个版本,因此测试 MetaTrader 5 版本不是问题。 了解测试细节将非常有帮助。


综合衡量

如果测试呈正面结果,请注意以下两个自定义衡量指标。 这些变量结合了许多指标的优点,如余额和净值方面的最大回撤相对回撤夏普比率。 这个衡量指标很容易计算。

  • Alpha = TotalProfit / MaximumEquityDrawdown
  • Betta = TotalProfit / MaximumBalanceDrawdown
  • MaximumEquityDrawdown – 最大净值回撤
  • MaximumBalanceDrawdown – 最大余额回撤
  • TotalProfit =  (EndBalance - StartBalance) – 总盈利
  • EndBalance - 测试区间结束时的账户余额
  • StartBalance - 测试开始时的初始余额

为了计算该公式中的最终利润,从初始回测余额中扣除起始余额。 MetaTrader 4 和 MetaTrader 5 平台在回测结果里的净值余额中均提供了最大回撤以点数表示的预期回报之后,这个变量与盈利因子一样重要,它也会在策略测试器报告中提供。 当我讲述这些东西时,我假设读者掌握了最低限度的知识。

另一个重要衡量指标是交易数量。 交易越多越好。 这个数字应该在合理的范围内,意即,不应该太大或太小。 我将在下面展示这些数值的操作范围。 此外,交易图表本身应该看起来不错:它越直越好。

评估范围值如下所示:

  • MathWaitingPoints  >=  3*MiddleSpread  (以点数为单位的预期收益应显著超过品种的点差)
  • ProfitFactor >= 1.1 … 1.2 (该策略应具有良好的预判能力)
  • Alpha >= 5 … 10 (良好的 alpha 表明风险较低,并证实了其有良好的预判能力)
  • Betta>= 5 … 10 (良好的 beta 表明该样本在统计和稳定运行方面有显著)
  • TradesPerYear  >= 20 … 30  (对于一种交易产品几乎没有高质量的切入点,但金融产品有很多)
  • MiddleSpread – 品种的平均点差
  • MathWaitingPoints – 以点数为单位的预期收益
  • ProfitFactor – 盈利能力
  • TradesPerYear – 每年的交易数量

这些变量非常灵活,经过调整可以获得更好的结果。 根据我的经验,这些衡量指标通常与市场上的盈利策略相对应。 当然,可以有异常,但不会经常发生。 至于其它特征,它们都是辅助性的,您不一定需要了解它们,但理解它们的含义总归有好处。


谨慎

如果您看到一个系统的交易结果年利润百分比高得过分,您就应该更仔细地检查这类系统,因为它们很可能涉嫌欺诈。 基于 EA 说明中所述的年度利润结果,您可以得出关于未来风险的结论,并在说明阅读阶段剔除绝大多数交易系统。 以下范围似乎涵盖了安全的年度盈利能力:

  • 10 – 200 %

不过,我认为 200% 的风险太大了。 100–150% 每年是较好结果。 当然,有些系统每年能产生高达 1000% 的结果。 但我怀疑市场上是否能找到这样的系统,因为作者不太可能与其他人分享这样的算法。


具有复杂资金管理系统的智能交易系统,如网格、马丁格尔、金字塔或摊薄,往往会对交易历史进行过度优化。 在爆仓之前,这些技巧可以在未来相当长的一段时间内产生利润。 但可以检测到这样的伪圣杯 — 您只需要检查其实盘帐户监控。


实盘账户监控

如果监控可用,您通常可以查看隐藏的内容。 理智地分析交易系统可以节省您的时间。 下面是两个例子:危险信号和安全信号。 我们先从坏的开始:

危险信号

正如您所见,它的利润线非常漂亮。 但如果您留意下图,您会看到向下的绿色尖峰。 这相当蹊跷。 尖峰表明上述重要的 alpha 自定义度量非常低。 您甚至不需要知道这些数字,因为即使是其中的某一个尖峰,就可能在一天之内完全爆掉您的本金。 这表明滥用资金管理,或亏损扛单时间太久。 其结局应该很糟糕:严重的净值回撤。

现在我们来看另一个完全安全的信号:

安全信号

余额不是那么漂亮和平直,但仍然足够好。 这表明信号作者没有运用欺骗性的资金管理技术来制造盈利幻觉。 在这个信号中,alphabeta 都显示出良好的结果。 绿线和蓝线几乎是同步的,它们稳定地向上移动。 年度利润率很低,但作者所增加的风险,以不超过资金 50% 的回撤,产生100-150% 的年利润。 我所展示的该信号是市场上真实的产品。 我只用了 20 分钟就找到了这个信号。 在信号当中,我看到这是一个产品的监控。 这就是我们如何运用逆向算法来节省时间,并避免大多数假货。 当然,这种智能交易系统可能非常昂贵,但最终还是会有回报的。


一些技巧

还可以找到免费信号拥有可接受特征的智能交易系统。 市场上有众多产品可供选择。 例如,您可以选一个免费信号,如果该信号没有 EA,就使用跟单 EA,来免费复制信号的交易! 如此,您就可以在不为产品支付任何费用的情况下赚钱。

我还想提到优化:我们应该优化我们使用的 EA 吗? 许多作者写道,您应该每隔一段时间就优化 EA。 这在极少数情况下可能是正确的。 但基于我在开发自动交易系统方面的经验,我可以说,优化永远不会导致好结果。 执行优化应该非常小心,并且您应该始终清楚自己在做什么,否则您就会过度优化系统,来拟合历史结果。 这是真的! 简单的深度优化可能会导致过度优化和过度拟合,即使您没有添加特定的时间限制。 结果将成为您的 .set 设置文件的一部分。 EA 拥有的自由变量越多,其过度优化的程度就越高! 因此,这里是评估 EA 安全性的另一个简单但重要的标准:输入参数的数量。输入参数的数量越少,EA 操作就越容易,过度拟合就越困难。

此外,并不总是能够理解 EA 操作逻辑。 我认为,在这种情况下,回测和实盘账户监控可以提供所需的信息。 您想赚钱,但不想复制 EA,但如果您有相关的经验和知识,这也是可能的。 您的时间是有限的,当涉及到创造盈利时,没有太多的时间来分析 EA 的每一个细节、或审视其运作原则。 许多系统都基于非常复杂的算法,甚至他们的作者也可能记不住所有细节。


投资组合多样化可降低风险,并提升盈利

现在。 我们来研究一下如何降低风险,并从找到的解决方案中增加利润。 这里的解决方案指的是免费或付费的智能交易系统。 正如我上面提到的,免费 EA 也可以是高效的。 投资中一个流行的概念是多样化,这个概念意味着在资产之间合理分配资金,从而降低风险并增加利润,它是如何实现的? 一切都很简单。 这意味着,一个好主意是,选取许多具有不同特征的智能交易系统 ,并按照以下手数分配同时运行:

  • LotPerDepositDivesrsified[i] = LotPerDeposit[i] / N
  • N – 所找到的智能交易系统数量
  • i = 1 … N – 根据您的资金确定的每种策略的最佳手数索引
  • LotPerDepositDivesrsified[i] – 为了多样化,第 i 个策略降低的手数
  • LotPerDeposit[i] – 第 i 个策略的最优手数

这意味着,首先您应该为每种策略找到一个最优的手数,然后将其除以全部策略的数量。 之后,您可以在一个帐户上独立启动所有这些策略,并为它们设置不同的魔幻数字。 在此情况下,您的 alphabeta 值肯定会增加:您运行的 EA 越高效,值越高。 这意味着您可以通过投资组合的多样化,安全地增加风险,来增加年度利润率。 这是一个真正的数学事实! 我曾运用机器学习创建了若干个智能交易系统,来证明这个数学真理。 这些智能交易系统可在文后附件中找到。 我训练 EA 在不同的图表时间帧里交易若干个主要货币对,以便获得更大的多样性。 此外,您还可以从附件查看各自的回测。 从现在起,EA 的训练区间为 10 年。 我将展示所有回测中的一些平均回测,从而演示其中一个 EA 的平均运行结果。有些 EA 更好,有些更差,但平均结果如下:

平均回测


因为我的 EA 跟踪柱线,所以这些测试可以在柱线模式下运行,替代每次即时报价模式。 我不得不使用 MetaTrader 4 来组合所有的回测,但在附件中也可以找到 MetaTrader 5 的版本。 如您所见,有一个总体的利润趋势,但是 beta 不是很好,以及 alpha 需要改善。 我基于同一时间段训练了 9 种策略。

现在我们用一个特殊的程序来联合回测。 您可以在网上找到它。 该程序名为 “ReportManager”。 还有其它类似的解决方案,但就我们的目的而言,这个已经足够了。 您可以使用任何偏好的应用程序。 当然,MetaTrader 5 支持多货币测试,但这种功能应该在代码级别实现,如此解决方案很能派上用场。 以下是联合回测的结果:

复合策略

由于其它图形上逆势波互补,所有曲线都较为平滑。 在实际交易中也会发生同样的情况。 强势的智能交易系统将支撑较弱的智能交易系统,反之亦然,当更强的智能交易系统出现回撤时,较弱的智能交易系统开始担当助力。 这将令 alphabeta 保持在一个狭窄的范围内。 此外,交易数量已增加到可接受的等级。 这是只联合了九个单独策略的结果。 但它们可能会有更多,“策略越多,图形就越平滑,因为它总是有效的”。

即使用一堆免费 EA,也有可能获得这样的结果,前提是当您把每个独立 EA 添加到投资组合之前理应仔细分析它们。 如果您想获得令人印象深刻的结果,不要害怕购买付费 EA,因为它们中的很多都是物有所值的。 您还可以有效地组合免费和付费的 EA,来创建成功的投资组合。


汇总

我认为本文提供了简单易懂的建议,告诉您如何利用智能交易系统在市场上赚钱。 所有细节和行动都可以归结为非常简单的规则,任何人都可以使用这些规则来改善交易结果。 这些规则如下:

  • 测试越多越好
  • 评论并不总是反映业绩(对顶级热销产品更要特别小心)
  • 基于真实即时报价的测试更可取(如果 EA 在即时报价上运行,尝试执行延迟压力测试)
  • 测试应该以固定手数;且应该禁用资金管理
  • 实盘账户监控应具有良好的 alphabeta 值,并应与回测相匹配
  • 基于柱线的 EA 测试速度更快,且它们不依赖于即时报价,因此如果可能,请选择此类 EA
  • 在最大可用样本中进行测试(样本越多越好)
  • 盈利因子应在合理范围内
  • 确保检查过度拟合
  • 如果您的测试能够配合可视化,如果您了解原理,研究工作原理 — 这对您来说将是一个巨大的优势
  • 实行多元化,增加利润(EA 越多越好)

如果您了解基本知识,您可以找到很多其它细节。


结束语

在本文中,我尝试强调用户在购买或使用智能交易系统时可能遇到的主要问题。 我尝试以一种易于理解和简单的方式提供信息。 现在,我希望你们看到,从集市上选择一款产品并不是那么困难。 因此,在此找到合适产品的关键在于正确的搜索

测试文后附带的 EA,尝试使用 ReportManager 组合不同的策略,尝试在市场中找到一些可盈利的 EA,并将它们添加到 MetaTrader 4 和 MetaTrader 5 中的投资组合测试 EA 当中,然后查看差异。 很快您就可以查看前向周期了。 EA 非常简单,故非常适合学习。


本文由MetaQuotes Ltd译自俄文
原文地址: https://www.mql5.com/ru/articles/10212

附加的文件 |
ExpertAdvisors.zip (1983.5 KB)
最近评论 | 前往讨论 (2)
ddwin668
ddwin668 | 21 4月 2022 在 02:04
这是一篇非常好的文章,也是我花了两年多时间实践得出的同样结论。
jiangtao zhang
jiangtao zhang | 21 4月 2022 在 06:39

牛逼,但是我还是不会筛选 趋势性的EA,我看到的EA都是短线高频交易,剥头皮,纯马丁加仓,那样的结果就是速死、速死、速速死。

渴望推荐几款。我将不胜感谢!

交易中的数学:夏普(Sharpe)和索蒂诺(Sortino)比率 交易中的数学:夏普(Sharpe)和索蒂诺(Sortino)比率
投资回报率是投资者和萌新交易员用来分析交易绩效的最明显指标。 专业交易者会采用更可靠的工具来分析策略,比如夏普(Sharpe)比率和索蒂诺(Sortino)比率等。
DoEasy 函数库中的图形(第九十二部分):标准图形对象记忆类。 对象属性变更历史记录 DoEasy 函数库中的图形(第九十二部分):标准图形对象记忆类。 对象属性变更历史记录
在本文中,我将创建标准图形对象记忆类,能够在对象修改其属性时保存其过往状态。 反之,这样就能够溯源以前的图形对象状态。
学习为什么、以及如何设计算法交易系统 学习为什么、以及如何设计算法交易系统
本文在介绍了 MQL5 的一些基础知识之后,通过设计一个简单的算法交易系统,向初学者展示了如何运用 MQL 的基础知识设计他们的算法交易系统(智能交易系统)
优化结果的可视化评估 优化结果的可视化评估
在本文中,我们将研究如何建立所有优化通测的图形,以及选择最优结果的自定义准则。 我们还将看到如何利用网站上发表的文章和论坛评论,在几乎不了解 MQL5 的情况下创建所需的解决方案。