回溯测试/优化 - 页 15

 
Ducati:
赫伯特。

是的,在下载了build 200之后,它确实立即发生了变化!我完全忘记了它下载了新的build。我完全忘记了它下载了一个新的版本。

我也刚刚从metatrader网站下载了一个全新的metatrader版本,它是4 build 200版本,它不会让我从Alpari导入历史数据。我选择了文件,但什么也没有发生。这真是太糟糕了!

你可以再说一遍。

我在MetaQuote提交了一份错误报告,但没有收到任何回应。

在MetaQuote论坛上,类似的问题只是被回答。我怀疑是否只有我们有这种行为的问题,"它已被改进"。

说实话,如果真的有什么改进,我应该重新做我所有的专家优化,我会深呼吸并做到这一点,但这个导入的 数据与我以前所有的测试不兼容。

它仍然应该允许我们在新的下载方法(从MetaQuote?)和从其他来源如Alpari导入之间进行选择。

 

幸运的是,我的电脑上还有build198。 我只是要复制那个文件夹。

 

获得99%的建模质量

我确实在另一个论坛上看到了这个。这是我们可以使用的东西吗?

Paul Dawidowicz 16.11.06 05:46

斯拉瓦。

我曾经从tick数据中生成一个fxt文件,然后把它移到历史目录中,这样我就得到了99%的建模质量。

随着新的更新,它忽略了生成的fxt文件,同一EA的质量,M1下降到了25%。

上一个版本198是很好的,现在我不知道该如何处理我拥有的并想用来回测的 tick数据。

Slawa 16.11.06 10:32

将fxt的版本改为403。

 

凤凰网的主题也有一个关于回测EA的优秀指南。

现在build 200出来了,你不需要再担心手动下载报价历史了。

https://c.mql5.com/forextsd/forum/162/phoenix-2007-how-to-optimize-phoenix.pdf

 

这是一个错误:Metatrader覆盖了它。

右键点击你的fxt数据文件,并在属性 标签中设置 "只读",这将防止删除它,这样我就能让tick数据在build 200中工作。

你知道我怎样才能获得比1分钟更高的tf吗? 任何脚本?

 

从Alpari数据库进行回测的正确方法

我从另一个网站上得到这个消息,想确保你们用Alpari数据库的正确数据进行回测。

对于可靠性问题以及如何实现最准确的结果,似乎有很多困惑。我不是一个编程或交易大师,但我相信我可以提供一个关于使用MT4进行回测的有用的小FAQ。

在考虑系统交易方法时,良好的回测是很重要的,因为你想在上线前对你的想法的可行性有一些了解[至少我是这样想的]。如果你用50%的模型质量进行回测,那么......你就不能真正确定发生了什么。如果你有90%的建模质量,你可以对你的系统实际表现有更多的信心。

+=========================+

|MCBoogs的MT4回测常见问题v1.0 |

+=========================+

内容。

- 第1节:MT4回测是否可靠?

- 第2节:下载/导入/转换1M数据

- 第3节:配置回测器

- 第4节:其他问题

第1节:MT4回测可靠吗?

这个问题往往会变得非常激烈,人们甚至会因此而互相谩骂。MT4的回测可以是可靠的,但其可靠性取决于您回测的数据。通过模拟账户经纪商流入的模拟账户 数据有缺口、漏洞,基本上不适合测试。

当回溯测试时,你想使用EVERY TICK模型,并拥有准确的1M数据,以获得尽可能准确的测试。1M数据很重要,因为EVERY TICK MODEL使用任何最小的可用时间框架,并在最小的可用条中 "伪造 "价格的运动。有了1M的数据,就可以使条形内的分形插值只发生在1M条形的极小范围内。

最简单的[也是唯一的]解决方案是使用好的1M数据。你能得到的最完整的数据[至少是免费的]是来自Alpari的数据库。他们有MT原生格式的数据,在1M的时间框架内,可以追溯到2004年中期。然而,设置数据的使用需要做一些工作。

---------------------------------------------------------------------------

第2部分:下载/导入/转换1M数据

(1) 您需要修改MT4以允许更多的条数。进入工具菜单,然后进入选项[或直接点击C+O]。进入图表标签,在历史条数中输入999999999999。MT4将默认为它的最大值。

[注意:MT4之所以有有限的条数,是因为更多的条数(特别是在回测模型中使用)意味着MT4将占用更多的硬盘空间。]

(2) 从 Alpari 的数据库中下载 1M 的数据,无论你要测试什么货币。

(3) 使用历史中心将数据导入 MT4。进入工具 => 历史中心[或按 F2]。确保你以适当的货币和M1时间框架导入数据。例如,您不希望欧元兑美元的数据被导入美元兑加元。

(4) 使用MT4中的周期转换脚本转换数据[你现在只有1M条]。你必须打开离线图表才能做到这一点。

-进入文件菜单,然后打开离线,选择您需要转换的货币的1M数据。将会弹出一个包含该数据的图表。

-然后将 period_converter 脚本拖放到离线图表上。你可以修改的ExtPeriodMultiplier int是你应用到图表上的乘数。所以把它变成5,就可以把1M的数据转换成5M的数据。

-为简单起见,你需要用以下整数运行周期转换器,以获得所有回测时间段:5,15,30,60,240和1440。

[注意:如果您想在其他时间段做一些指标分析或其他事情,您也可以将1M数据转换为非MT4原生时间段。]

恭喜您,您现在已经将数据导入并转换到MT4。现在,为了说明我前面的一个观点,请打开您导入数据的货币。看看下载的数据与从模拟经纪商处流入的数据之间的差异[因此,如果您下载了04年7月至05年8月的1M数据,看看05年8月底和9月初的图表]。你会注意到,你下载的时间段的条形图(在每个时间段,如果你已经正确地转换了它们)将更加完整。

------------------------------------------------------------------

第三部分:配置反向测试器

现在你已经成功地导入了完整的数据,为了运行一个可靠的回测,你还需要做几件事。

(1) 在你下次运行回测时勾选重新计算选项,因为你需要回测器利用你闪亮的新快乐数据(除非你告诉它,否则它不会这样做)。任何时候你导入新的数据,你都需要重新计算(我每隔几次测试就重新计算一次,只是为了感到安全,也许这反映了内部的信心问题,但这是另一个常见问题)。

(2) 勾选使用日期选项,只在你有良好的可靠数据的时间段内设置日期范围。这样,你就只对好的东西进行回测。这将反映在建模的质量百分比上。

(3) 确保模型被设置为EVERY TICK。如果你不这样做,我们刚才所做的这些努力就白费了。我在前面的常见问题中谈到了我们为什么要这样做。

------------------------------------------------------------------------

第四部分:其他问题

MT4是一项正在进行的工作,有时在回测中会出现一些奇怪的错误。然而,通常当你认为你的手上有一个bug时,你的代码就有问题了。我怎么强调都不为过,调试是多么重要。如果你有问题,首先检查你的代码,因为它可能是问题所在。如果你真的认为你手上有一个合法的错误,请把它发布到MT4论坛上。

因为你实际上不是在对发生的每一个tick进行回测[你处理的是1M数据的插值],它仍然不是对市场上实际发生情况的完美再现。正因为如此,1M和5M的剥头皮的EA,如果真的快速进入和退出交易,就会因为这个限制而遇到一些问题。你交易的时间框架越长,你的测试就越不可能受此影响。

好了,这就是我现在能想到的全部。我读了一遍,我想我已经把一切都说清楚了,并且正确地列出了步骤。如果你发现了错误,请告诉我,我会在下一版的MT4回溯测试常见问题中予以纠正。

 

你是如何进行回测 的?

当我加载我的EA进行回测,然后进入专家设置,为什么每一行都有4个独立的选项?

例如:SL有价值、开始、步骤和停止?

我只想把SL设置为15

谢谢

 
matrixebiz:
当我加载我的EA进行回测,然后进入专家设置,为什么每一行都有4个单独的选项?

EG: SL有价值、开始、步骤和停止吗?

我只想把SL设置为15

谢谢

这是为了优化设置。比如说。

SL=15

从第1步的5开始,以20停止。

因此,如果你正在优化以找到更好的设置,你将需要它。

关于回测和优化设置,我们有以下链接。

-回测建模质量

- MetaTrader策略测试器,第2部分

- MetaTrader策略测试器,第1部分

-M1 Tick by Tick数据用于回测

请确保你有足够的数据,以90%的建模质量进行回测。

 

MT4回测数据--从何而来

你好

MT4 200版本现在可以下载1999年以来的1分钟历史数据。这对测试长期策略非常有利。问题是,如果我在这些数据上进行回测,我可以在任何真实的数据资料上复制结果吗?这些数据是否来自于我们可以获得有代表性的实时数据的经纪人?

澄清一下,我可以注册一个经纪人并获得相同的实时数据吗?我发现,不同经纪商数据的细微差别会使利润/亏损水平产生很大差异。如果我回溯测试某样东西,并且它赚了钱,那么如果我可以用同样的数据进行实盘交易,就有可能赚到钱。

 
tururo:
你好

MT4 200版本现在可以下载1999年以来的1分钟历史。对于测试长期的任何策略都是非常好的。问题是,如果我在这个数据上进行回测,我可以在任何真实的数据源上复制结果吗?这些数据是否来自于我们可以得到有代表性的实时数据的经纪人?

澄清一下,我可以注册一个经纪商并获得同样的数据作为实时反馈吗?我发现,不同经纪商数据的微小差异会使盈亏水平产生很大的差异。如果我回溯测试某样东西,并且它赚了钱,那么如果我可以用同样的数据进行实盘交易,就有可能赚到钱。

正如我所理解的那样,这个构建200,所以我认为数据是来自某处。我认为这不是你或我的经纪人的数据。

这就是为什么我到现在还在使用Alpari的数据(用于回测/优化)。

如果我说错了,对这个问题比较了解的人可以指正我。