2007年自动交易锦标赛:专家的常见错误 - 页 5 1234567891011 新评论 kadak 2007.09.04 11:21 #41 komposter: 卡达克。 但主办方会允许这样的EA参加比赛吗。 使用这种设计,5分钟多币种 "过度使用资源 "测试顺利通过EA。 这种设计是专家顾问编程的一个很好的基调。 我还没有听说过组织者取消有能力的EA的资格;) 我也不这么认为。我希望听到组织者的反馈。 Renat Fatkhullin 2007.09.04 13:05 #42 Kadak: 我也这么认为。我希望听到组织者的反馈。 在比赛中跑一跑就知道了。如果不占用太多资源,那就没问题(只要遵守其他规则)。 altaforex 2007.09.04 17:28 #43 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())。 } } ====================================================================================== Automated Trading Championship 2007: Buy order problems 任何菜鸟问题,为了不给论坛添乱。专业人士,不要路过。没有你就无处可去 - 6. [删除] 2007.09.04 18:05 #44 请告知如何摆脱 "关闭订单号时出现错误4108"。它有多关键,因为专家顾问正在正常工作。 Rashid Umarov 2007.09.04 18:15 #45 Tihon_RUS: 请告知如何摆脱 "关闭订单号时出现错误4108"。那么它有多关键呢,因为专家顾问工作正常。 你必须指定正确的票据来关闭它。没有代码,你不能说什么。 [删除] 2007.09.04 19:02 #46 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); Automated Trading Championship 2007: 新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 求助,我想请高手朋友们写一个 止盈--止损脚本 PSmith 2007.09.05 16:19 #47 ... if ((OrderType()>OP_SELL) && (OrderCloseTime() == 0)) ... 增加一个关闭时间检查。不需要删除已经被删除的订单。 Yuriy Zaytsev 2007.09.06 19:45 #48 能否请你告诉我哪里出了问题? 我不明白什么是错的! 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 Alexander Sevastyanov 2007.09.08 09:52 #49 亲爱的Renat 和Rosh! 1.在发送专家顾问时,作者是否应指定专家顾问的测试条件(货币对、TFs)?这当然是一个愚蠢的问题,但如果你选择自己的条件,可能很难将其纳入其中 :) 2.如果多币种EA的条件是几个开放的 外国货币对的图表,并有一定的TF,在锦标赛中启动EA时,是否会观察到它们,在哪里制定它们? Slava 2007.09.08 10:05 #50 goldtrader: 亲爱的Renat 和Rosh! 1.在发送专家顾问时,作者是否应该指定专家顾问的测试条件(货币对、TFs)?这当然是一个愚蠢的问题,但如果你选择自己的条件,可能很难将其纳入其中 :) 2.如果多货币EA的条件是几个开放的外国货币对的图表,并有一定的TF,在锦标赛中启动EA时,是否会遵守这些条件,在哪里制定? 1.我们在参与者档案中 "文件 "选项卡中指定的符号/周期上测试EA。然而,我们可以在任何数据上 测试专家顾问,只是为了检测错误。如果专家顾问写得正确,并在其中提供了错误处理,那么它在任何数据上都会表现得很好,它不会因为错误的请求而使交易服务器超载,也不会产生巨大的日志。 2.在专家顾问的描述中,你需要指定哪些图表应该被打开。如果你不指定图表的周期,相应的图表将以主要符号指定的周期打开。 1234567891011 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
但主办方会允许这样的EA参加比赛吗。 使用这种设计,5分钟多币种 "过度使用资源 "测试顺利通过EA。
我还没有听说过组织者取消有能力的EA的资格;)
我也不这么认为。我希望听到组织者的反馈。
我也这么认为。我希望听到组织者的反馈。
亲爱的组织者!
请问多币种专家顾问的确切定义是什么? 我用 "多币种专家 "这个词在网站上搜索了一下,结果在文档中什么都没有找到,其余的页面(大部分来自冠军论坛)也没有提供定义。我大致猜到了什么是多币种专家,但我也需要一个精确的定义。
也就是说,非多货币专家顾问可以从不同的时间框架中获取不同货币对的信息,从而对当前图表中的货币对的订单做出决定?
在这种情况下,我是否可以使用下面的代码,在单一货币对模式下测试我的多货币专家顾问。在测试过程中是否有可能获得其他货币对的信息?
==========================================================================
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"。那么它有多关键呢,因为专家顾问工作正常。
{
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);
增加一个关闭时间检查。不需要删除已经被删除的订单。
能否请你告诉我哪里出了问题?
我不明白什么是错的!
Trawl在50点时开始工作
在这种情况下,最初的位置是导致无损的+5点,从订单开放的成就35点。
然后当它达到50点时,一个拖网开始工作
在我的机器上测试时,在这个时间段和其他时间段,我没有得到错误130。
---
这是测试顾问的机器给出的结果--我在测试时没有得到一个错误:-(
我想知道,如果转到35便士的Breakeven和下一个50便士的trall会不会给我带来错误?
另一方面,如果我在强壮的运动中模仿强壮的重击 - 我如何避免这个问题?
亲爱的Renat 和Rosh!
1.在发送专家顾问时,作者是否应指定专家顾问的测试条件(货币对、TFs)?这当然是一个愚蠢的问题,但如果你选择自己的条件,可能很难将其纳入其中 :)
2.如果多币种EA的条件是几个开放的 外国货币对的图表,并有一定的TF,在锦标赛中启动EA时,是否会观察到它们,在哪里制定它们?
亲爱的Renat 和Rosh!
1.在发送专家顾问时,作者是否应该指定专家顾问的测试条件(货币对、TFs)?这当然是一个愚蠢的问题,但如果你选择自己的条件,可能很难将其纳入其中 :)
2.如果多货币EA的条件是几个开放的外国货币对的图表,并有一定的TF,在锦标赛中启动EA时,是否会遵守这些条件,在哪里制定?
1.我们在参与者档案中 "文件 "选项卡中指定的符号/周期上测试EA。然而,我们可以在任何数据上 测试专家顾问,只是为了检测错误。如果专家顾问写得正确,并在其中提供了错误处理,那么它在任何数据上都会表现得很好,它不会因为错误的请求而使交易服务器超载,也不会产生巨大的日志。
2.在专家顾问的描述中,你需要指定哪些图表应该被打开。如果你不指定图表的周期,相应的图表将以主要符号指定的周期打开。