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

 
我正在使用一个多货币循环的EA。在测试器中,它根本没有被测试,因为它对新的蜱虫没有反应。 我希望其他一切都没有问题。难道EA不会因为无法运行测试而被拒绝吗?
 
Alexz:
我正在使用一个多货币循环的EA。在测试器中,它根本没有被测试,因为它对新的蜱虫没有反应。 我希望其他一切都没有问题。难道EA不会因为无法运行测试而被拒绝吗?
int start()
{
    while ( !IsStopped() )
    {
        RefreshRates();
 
                // код эксперта
 
        if ( IsTesting() ) break;
        Sleep(500);
    }
    return(0);
}
 

谢谢你,Andrei!

在主循环之外增加了一个单一的测试检查。

 
Alexz:

在主循环之外增加了一个单一的测试检查。

错了。这样一来,专家根本不会工作(?),但在我的变体中--它将像在现实中一样工作,但每一次都 在运行。
 
komposter:
阿列克谢

我在主循环之外添加了一个单一的检查来测试。

错了。因此,EA根本不会工作(?),但在我的变体中,它将像在现实生活中一样工作,但每一次都在运行。


对--不会的 :)

但我需要它甚至不尝试测试,因为反正不会有交易。

再次感谢你的想法。

 
Renat:

我想知道,如果一个EA不处理重新报价,会不会是一个错误?而EA能否因此而被从冠军赛中除名?

无论是在策略测试器中,还是在演示模式中,甚至在微观实时中,都很难发现这个问题。至少在一个月的测试中没有发生过至少一次。然而,组织者似乎已经决定在这次锦标赛中用重新报价来喂养我们。我的判断依据是,我的专家顾问试图在总体平静的市场上关闭一个订单,但得到了重新报价。尽管RefreshRates()紧接在OrderClose()之前,但还是如此。好吧,收到了138号错误,而订单一直在运作。当然,这个逻辑是坏的,但也不是太坏。

各位参赛者,你们的生物是否已经准备好了战斗?

 
Valmars писал (а): 各位参赛者,你们的生物是否准备好处理重新报价的问题?

如果滑点=10,我认为重新报价 的情况会很少。
 
不,不是的,RacerATC报价 与滑坡的关系不大。我甚至不知道是哪一个。Valmars 是对的:你必须做一堆偏执的检查和适当的循环,使EA按计划工作。但是,即使在标准软件包中包含的Expert Advisor源代码和代码库中,我也没有看到任何正常的检查。
 
RacerATC:
Valmars写道(a): 各位参赛者,你们的生物准备好与滑坡作战了吗?

如果滑点=10,我认为重新报价的情况会很少。

这就是你错误的地方,我的滑移量=5 ,看一下日志的摘录。

2007.09.25 01:00:24    '452209': requote 232.38 / 232.45 for order #4848040 buy 0.50 GBPJPY closing at 232.37
2007.09.25 01:00:24    '452209': request was accepted by server
2007.09.25 01:00:23    '452209': close order #4848040 buy 0.50 GBPJPY at 232.96 sl: 230.96 tp: 236.96 at price 232.37

比要求的收盘价 高一个点。

 
我们只使用待定订单,没有重新报价 的问题(我已经三年没有使用直接订单了,包括关闭订单)。