2007年自动交易锦标赛:专家的常见错误

 

自动测试


今年,我们建立了一个自动检查上传专家的系统,并向作者报告和通知测试结果。这个解决方案提高了检查的速度和质量。 而自动检查EA的头几天显示,许多竞争者在发布EA之前没有检查他们的EA。


应如何正确地进行测试


在MetaTrader build 209终端上测试专家顾问系统(从http://www.metatrader4.com/files/mt4setup.exe 下载
  • 每个参与者都有临时账户(在个人资料中注明),并设置了锦标赛的所有交易条件。要连接到demo.metaquotes.net:443服务器,只需在授权窗口中手动指定您的登录名、密码和服务器名称demo.metaquotes.net:443。



  • 连接到测试账户后,你需要使用1999年的必要符号从HistoryCenter完全下载分钟历史(所有时间段将自动重新计算)。




  • 你应该使用参与者选择的符号和时期,从2007.01.01到2007.08.20进行测试。在Potik类型的条形模型上,勾选了重新计算的数据。



  • 允许的最大测试运行时间是5分钟(在现代Xeon、AMD X2上)。如果 "专家顾问 "花费更多的时间,由于资源消耗过大,它就不能通过测试。

  • 在测试运行后,你应该确保检查所有的日志,看看有没有交易错误。如果在测试中出现任何(绝对是任何!)交易错误,将不允许专家顾问参加锦标赛。交易错误不包括锦标赛期间可能出现的网络问题。

  • 如果专家顾问完成了追加保证金(Stop Out消息),专家顾问将不被允许参加比赛。


EAs中的标准错误


我们首先检查所有交易的结果。 以下是最常见的错误 清单。
  • OrderSend错误130 (ERR_INVALID_STOPS) - 错误或太近的止损。

  • OrderSend错误131 (ERR_INVALID_TRADE_VOLUME) - 错误的交易量。违反的体积条件从0.1到5.0,增量为0.1

  • OrderSend错误134 (ERR_NOT_ENOUGH_MONEY) - 没有足够的资金来执行交易

  • OrderSend错误148 (ERR_TRADE_TOO_MANY_ORDERS) - 未结订单和待定订单的数量已经达到经纪人设定的限制。直接违反冠军条件--不超过3个开放订单。

  • OrderXXXX错误4051(ERR_INVALID_FUNCTION_PARAMETER_VALUE)--函数参数的无效值

  • OrderModify error 1 (ERR_NO_RESULT) - 试图用不变的数值修改订单(例如,将止损设置为与之前相同的数值)。表明编程时不小心。

  • 零除 - 由于编程不慎而出现除以零的错误。

根据ATC2007规则,保证金追加水平为50%。但是,看到几十个专家顾问以追加保证金的方式结束(因止损而停止),这完全是一个意外。在2007.01.01至2007.08.20期间未能通过测试的专家将不被允许参加比赛。


多币种专家顾问


在MetaTrader策略测试器中,多币种专家顾问总是不能被充分测试,经常产生以下错误。
  • OrderSend错误4106(ERR_UNKNOWN_SYMBOL)--未知字符
这个错误不是致命的,可以忽略。 如果没有其他错误,我们不要求成功通过多货币专家顾问系统的测试。当然,这些考官当然必须遵守所有的规则。

参与者必须在其EA的描述中明确说明他们是多币种。由于EA不会被我们保证测试,作者必须独立验证其性能。我们将在9月21日之后手动进行多货币专家顾问的最终验收。不幸的是,如果在9月21日之后检测到错误,则无法更新多货币专家顾问。


过度消耗计算机资源


2007年自动交易锦标赛的举行不仅是为了展示成功的交易策略,也是为了展示高效的软件解决方案。这意味着专家顾问必须写得很好,很有效率/很经济。在每台配备双至强内存4Gb配置的服务器上,将运行约30个带有专家顾问的终端。如果任何一个专家开始消耗过多的资源(CPU、RAM和磁盘内存)并明显干扰其他专家的工作,它将被取消资格。

我们为自动测试设定了5分钟的限制。如果专家在2007.01.01至2007.08.20这段时间内没有通过测试,他将被强行停止,理由是:专家花费的时间太长(超过5分钟)。不幸的是,有几十位专家正是因为过度消耗资源而没有通过测试。

请所有参与者检查他们的资料,阅读评论并对其专家的代码进行修改。
 

亲爱的组织者!

我能否要求对多币种专家 进行准确的定义?我在网站上搜索了 "多币种专家 "几个字。结果,在文档中什么也没找到,其余的页面(主要来自冠军论坛)也没有这个定义。我对什么是多货币专家有一个大致的概念,但我也需要一个精确的定义。

 

如果一个专家达到了 "停止",为什么不允许他参加锦标赛?

(这对我来说还不适用)

锦标赛组织者回答说,专家顾问在止损后仍在游戏中,但存款较少。

为什么不把同样的原则也用在检查EA上呢?

 
Aleksey24:

为什么专家到了 "止损 "就不能参加锦标赛?

(这对我来说还不适用)

锦标赛组织者回答说,专家顾问在止损后仍在游戏中,但存款较少。

为什么不把同样的原则也用在检查EA上呢?

在我们开始之前,我们的主要任务是剔除那些明知故犯的评估员。

到目前为止,只有~25%的已发表的专家通过了自动测试,而其余的都有错误。这确实是一个令人沮丧的结果。
 
Martes:

亲爱的组织者!

我能否要求对多币种专家进行准确的定义?我在网站上搜索了 "多币种专家 "几个字。结果,在文档中什么也没找到,其余的页面(大部分来自冠军论坛)也没有这个定义。我对什么是多货币专家有一个大致的概念,但我也需要一个精确的定义。

多币种专家顾问 是指在其他工具上开立交易头寸的人,除了它所依附的符号外。任何专家顾问都可以参考其他符号的图表和参数来获取信息,但正因为如此,它不被视为多货币。
 

亲爱的雷纳特-拉希多维奇!

我的多货币专家顾问需要5分11秒的时间来测试。

你写道,在测试中你可以忽略像"OrderSend ERROR 4106 "这样的错误。

专家顾问使用9种货币对,当对其中一种货币对进行测试时,其他8种货币对都会产生这种错误。

结果,从2007年1月1日到2007年8月20日,我们只有35次英镑兑美元的交易,而日志文件包含96 680 Kb

而几乎所有条目都是错误的 "未知符号"。

该专家顾问已经在一个竞赛账户和一个真实账户上进行了测试。

到目前为止,还没有发现明显的交易错误。

问题:MULTIVATE专家顾问的5分钟限制是否正确?

 

在我的电脑上测试一个 单一货币模式的EA 需要59秒(日志文件大小为23 Kb)。

在多货币模式下的测试花了13分钟(日志文件大小为96,680 Kb)。

 
Referent:

问题:对于这样的EA,5分钟的限制是否正确?

你为什么认为它不正确呢?它已被反复写入 - 任何专家顾问的限制是5分钟。

顺便说一下,100MB的日志文件证实了资源的过度消耗。这一点在规则中和本主题的第一篇帖子中都有明确规定。
 

但这个日志文件中的所有条目都是"OrderSend ERROR 4106"。正如你上面写的--这不是一个致命的错误。

这不是 "过度的资源消耗"。

 
Referent:

但这个日志文件中的所有条目都是"OrderSend ERROR 4106"。正如你上面写的--这不是一个致命的错误。

这不是 "过度的资源消耗"。

留到9月21日,让你的考官在5分钟内失败,然后看结果。

我的印象是,在最简单的测试中,25%的成功率的结果是一种模式。
要么作者没有读过规则,要么不是他们的专家,要么他们按照自己的规则生活在自己的世界里......
 
Renat:

我的印象是,在最简单的测试中,25%的成功率的结果是一种模式。
要么作者没有读过规则,要么不是他们的专家,要么他们按照自己的规则生活在自己的世界里......


他们只是需要把更多的注意力放在这个澄清上。

并用大而粗的字体写上确切的步骤和入学条件。

用如此简单的话语,即使是挤奶女工也能理解,可以说是这样的。

90/10原则适用于生活的所有领域。

(10%的人有90%的钱,10%的人有90%的智力,等等)。

原因: