许多人感兴趣的话题:MetaTrader 4和MQL4的新内容 - 即将发生的重大变化 - 页 56

 
MetaDriver:
有了间隙我就明白了,但测试仪是如何帮助看清滑移的?
每个TS都有自己的定制故事。
 
Avals:
在测试器中,为了捕捉tick数据的滑点,你需要在经纪人和客户之间的数据传输中设置一个大致的时间延迟(滞后)。例如,每个刻度都有其发生的时间,以毫秒为单位。在测试器中,如果下市场订单的时间+滞后时间>下一个tick的时间,那么我们就以新tick的价格执行。很明显,部分执行不能以这种方式模拟,我们需要那里的流动性数据。

是的,这是正确的。

+ 你也可以在时间上指定,即增加新闻发布 时的滞后性(通过预先监测它的真实性)。

 
Avals:

为了在测试器中捕捉tick数据的滑点,你需要设置经纪人和客户之间的大致时间差(lag)。

大家都知道MetaTrader 5策略 测试器有任意延迟模式。在MetaTrader 5的帮助下策略测试器设置

任意延时

任意延迟模式是为了在一个接近真实的环境中测试智能系统。从订单发出的那一刻起,直到它被执行,价格会发生变化。根据订单中设置的偏差,它可以按当前价格执行(如果它在偏差限制之内)或重新报价。在这种模式下进行测试,可以让你正确编制专家顾问程序来处理这种情况。

所有从终端发出的交易请求(下单、改变止损位 等)都会出现延迟。执行中的延迟是根据以下原则实现的:从0到9中选择一个随机数,并执行相同秒数的延迟;如果选择的数字是9,则从同一范围内随机选择另一个数字并加到第一个数字中。因此,延迟0-8秒的概率为90%,而延迟9-18秒的概率为10%。

 
Rosh:

大家都知道MetaTrader5测试仪有一个随机延迟模式在MetaTrader5的帮助下策略测试仪设置

这只有在你能够在真实的蜱虫上进行测试时才有意义,而且还有细微的差别(因为滞后有时会随着时间的推移而改变)。

 
Rosh:

我想大多数人都知道MetaTrader5测试器有一个任意延迟模式在MetaTrader5策略测试器设置 中帮助

是的,这是一个有用的功能,"允许EA作者对这种情况的处理进行适当编程"。但如果没有刻度,滑点对利润/亏损的影响就不会起作用。(虽然大多数人不需要它))。)
 

随机延迟是一个粗略的工具。这是认真测试的唯一方法。

指示性历史(测试仪中的机器人只看到它--就像在现实生活中一样)+它自己为特定的TS创建的自定义历史(测试仪在它上面执行)。

当创建一个自定义历史时,LiveTIME价格(+ping),流动性(Level2和TS操作的量)等都被考虑在内。而我们仍然无法实现理想的匹配,尽管有可能更加接近。只是需要细微的感受--探究他们TS的现实。

P.S. 请注意,在创建这样的自定义构建后,你仍然需要对其应用一个过滤器。因此,这种定制的历史可以采用M1 HighBid+LowAsk的形式。也就是说,没有必要(几乎总是)通过打勾历史 或Level2-历史来测试。我们只应该在这段庞大的历史中创造一个初步的 "执行史"。然后,这种模式继续下去。

 
hrenfx:

随机延迟是一个粗略的工具。这是认真测试的唯一方法。

指示性历史(测试仪中的机器人只看到它--就像在现实生活中一样)+它自己为特定的TS创建的自定义历史(测试仪在它上面执行)。

当创建一个自定义历史时,LiveTIME价格(+ping),流动性(Level2和TS操作的量)等都被考虑在内。而我们仍然无法实现理想的匹配,尽管有可能更加接近。只是需要细微的感受--探究他们TS的现实。

P.S. 请注意,在创建这样的自定义构建后,你仍然需要对其应用一个过滤器。因此,这样的自定义历史可以采用M1 HighBid+LowAsk的形式。也就是说,没有必要(几乎总是)通过打勾历史 或Level2-历史来测试。我们只应该在这段庞大的历史中创造一个初步的 "执行史"。然后这个模式就会走到尽头。

我想只有外汇是指?

因为在期货中,1点(4位数)=10点(5位数居多)的外汇。

 
如果只是指FOREX,我会做一个澄清。
 
hrenfx:

随机延迟是一个粗略的工具。这是认真测试的唯一方法。

指示性历史(测试仪中的机器人只看到它--就像在现实生活中一样)+它自己为特定的TS创建的自定义历史(测试仪在它上面执行)。

当创建一个自定义历史时,LiveTIME价格(+ping),流动性(Level2和TS操作的量)等都被考虑在内。而我们仍然无法实现理想的匹配,尽管有可能更加接近。只是需要细微的感受--探究他们TS的现实。

P.S. 请注意,在创建这样的自定义构建后,你仍然需要对其应用一个过滤器。因此,这样的自定义历史可以采用M1 HighBid+LowAsk的形式。也就是说,没有必要(几乎总是)通过打勾历史 或Level2-历史来测试。我们只应该在这段庞大的历史中创造一个初步的 "执行史"。然后,这种模式继续下去。

这就是测试员的任务。在测试/优化之前,你需要创建必要的自定义历史,这取决于被优化的内容和订单的类型,例如。这纯粹是一个技术层面的问题,可以由一个自动系统最佳地执行。我认为MT在测试人员的能力范围内也会这样做(历史数据准备)。
 

这是一个适当的自动交易商的任务,而不是一个测试员。在MT5测试中,没有关于被测试的TS的特殊性的数据,同样的Level2历史为你的TS创建一个执行历史。

随机延迟 是在编写你的测试器时首先想到的事情。粗糙--是的,但有意义。有时对限幅器也会做这样的粗糙处理--随机拒绝。

这不是关于超级精度,它总是关于精度和速度之间的黄金平均值。只有在非常特殊的情况下,细化才有意义。

因此,对于MT5来说,任意延迟模式的想法(我还没有看到实现)是相当充分的。