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

 
komposter:
卡达克
但主办方会允许这样的EA参加比赛吗。 使用这种设计,5分钟多币种 "过度使用资源 "测试顺利通过EA。
这种设计是专家顾问编程的一个很好的基调。
我还没有听说过组织者取消有能力的EA的资格;)

我也不这么认为。我希望听到组织者的反馈。
 
Kadak:

我也这么认为。我希望听到组织者的反馈。
在比赛中跑一跑就知道了。如果不占用太多资源,那就没问题(只要遵守其他规则)。
 
Renat:
马提斯

亲爱的组织者!

请问多币种专家顾问的确切定义是什么? 我用 "多币种专家 "这个词在网站上搜索了一下,结果在文档中什么都没有找到,其余的页面(大部分来自冠军论坛)也没有提供定义。我大致猜到了什么是多币种专家,但我也需要一个精确的定义。

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

也就是说,非多货币专家顾问可以从不同的时间框架中获取不同货币对的信息,从而对当前图表中的货币对的订单做出决定?

在这种情况下,我是否可以使用下面的代码,在单一货币对模式下测试我的多货币专家顾问。在测试过程中是否有可能获得其他货币对的信息?

==========================================================================


if ((mono==1)&&(f==0)) ////=== mono - 在一个货币对上开立订单的标志,f - 当前图表中的货币对标志。
{
ticket=OrderSend(Symbol(, OP_BUY, LotsOptimized, Ask, 5,Bid-StopLoss*Point, Ask+TakeProfit*Point, Commenta,f,0, Green);
如果(ticket>0)
{
如果(OrderSelect(ticket, SELECT_BY_TICKET, MODE_TRADES)){}
else Print("错误打开BUY订单:", GetLastError())。
}

}
否则
{
double bid =MarketInfo(Symbol_array[f], MODE_BID);
double ask =MarketInfo(Symbol_array[f], MODE_ASK);
double point =MarketInfo(Symbol_array[f], MODE_POINT);
ticket=OrderSend(Symbol_array[f], OP_BUY, LotsOptimized, ask, 5,bid-StopLoss*point, ask+TakeProfit*point,Commenta,f,0, Green);
如果(ticket>0)
{
如果(OrderSelect(ticket, SELECT_BY_TICKET, MODE_TRADES)){}
else Print("错误打开BUY订单:", GetLastError())。
}


}

======================================================================================

 
请告知如何摆脱 "关闭订单号时出现错误4108"。它有多关键,因为专家顾问正在正常工作。
 
Tihon_RUS:
请告知如何摆脱 "关闭订单号时出现错误4108"。那么它有多关键呢,因为专家顾问工作正常。
你必须指定正确的票据来关闭它。没有代码,你不能说什么。
 
while (OrdersTotal()>0)
{
if (!OrderSelect(0, SELECT_BY_POS)) break;
if (OrderType()>OP_SELL)
{
if (! OrderDelete(OrderTicket())
{
Print("Error " , GetLastError()," whendeleting a pending order" ,
OrderTicket();
break;
}
}
{
double price;
if (OrderType()==OP_SELL)
price = MarketInfo(OrderSymbol(), MODE_ASK);
else
price = MarketInfo(OrderSymbol(), MODE_BID);

if (! OrderClose(OrderTicket(), OrderLots(), price, 3)
{
Print("Error " , GetLastError()," when closing position " , OrderTicket());
break;
}
}
}
Sleep(10000);
 
...
if ((OrderType()>OP_SELL) && (OrderCloseTime() == 0))
...

增加一个关闭时间检查。不需要删除已经被删除的订单。

 

能否请你告诉我哪里出了问题?

我不明白什么是错的!

Trawl在50点时开始工作

在这种情况下,最初的位置是导致无损的+5点,从订单开放的成就35点。

然后当它达到50点时,一个拖网开始工作

在我的机器上测试时,在这个时间段和其他时间段,我没有得到错误130

---

这是测试顾问的机器给出的结果--我在测试时没有得到一个错误:-(

我想知道,如果转到35便士的Breakeven和下一个50便士的trall会不会给我带来错误?

另一方面,如果我在强壮的运动中模仿强壮的重击 - 我如何避免这个问题?

2007.09.06 19:30 loading
yz_t4 on EURUSD:240
19:30:18 2007.01.03 16:06  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:06  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:06  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:06  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:08  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:08  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:08  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:09  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:10  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:10  yz_t4 EURUSD,H4: OrderModify error 1
19:30:18 2007.01.03 16:10  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 16:24  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 16:25  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 16:25  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 16:30  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 16:30  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 16:30  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 17:12  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 17:12  yz_t4 EURUSD,H4: OrderModify error 1
19:30:19 2007.01.03 17:13  yz_t4 EURUSD,H4: OrderModify error 1
1 min 34 seconds
Errors: 20
  
Код тралла достаточно сложный и все же я приведу его! 
附加的文件:
yz_trall.mq4  10 kb
 

亲爱的RenatRosh!

1.在发送专家顾问时,作者是否应指定专家顾问的测试条件(货币对、TFs)?这当然是一个愚蠢的问题,但如果你选择自己的条件,可能很难将其纳入其中 :)

2.如果多币种EA的条件是几个开放的 外国货币对的图表,并有一定的TF,在锦标赛中启动EA时,是否会观察到它们,在哪里制定它们?

 
goldtrader:

亲爱的RenatRosh!

1.在发送专家顾问时,作者是否应该指定专家顾问的测试条件(货币对、TFs)?这当然是一个愚蠢的问题,但如果你选择自己的条件,可能很难将其纳入其中 :)

2.如果多货币EA的条件是几个开放的外国货币对的图表,并有一定的TF,在锦标赛中启动EA时,是否会遵守这些条件,在哪里制定?


1.我们在参与者档案中 "文件 "选项卡中指定的符号/周期上测试EA。然而,我们可以在任何数据上 测试专家顾问,只是为了检测错误。如果专家顾问写得正确,并在其中提供了错误处理,那么它在任何数据上都会表现得很好,它不会因为错误的请求而使交易服务器超载,也不会产生巨大的日志。

2.在专家顾问的描述中,你需要指定哪些图表应该被打开。如果你不指定图表的周期,相应的图表将以主要符号指定的周期打开。