[存档]任何菜鸟问题,为了不使论坛变得杂乱无章。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 5. - 页 367 1...360361362363364365366367368369370371372373374...432 新评论 Chiripaha 2013.05.29 09:59 #3661 lottamer: 这个修改器不是我写的。我从图书馆准备好了。这就是为什么我也不能清洗它。最主要的是,它是100%的工作。但为什么里面的参数没有被优化--这就是问题所在.....。没有基本的错误!其余的代码都能工作。 在算法上设置任何条件。- 购买-修改 - 关闭---------------------------并尝试优化订单修改中的参数--即停止并采取 好吧,只要它能工作,甚至如果它是100%,那么就没有问题。我们为什么要在其中寻找错误呢?- 这意味着它不是问题所在!- 而如果你正在寻找一个错误,这意味着你不是100%的确定。所以,问题不在代码,而在你的评价标准,因为它们也让你困惑。(你先开始的:)))我只是给它加点油...)这里所介绍的--我甚至不知道如何称呼它......。可能是--一个单一的动作被膨胀到一个函数的大小。在大多数程序中,这种应用并不理想--在一个区块中的修改与其他东西一起进行。- 虽然。可能有不同的适用条件。但我的观点是,这里没有什么可以优化的......因为它只是一个行动。 Chiripaha 2013.05.29 10:04 #3662 lottamer:看。如果我现在把所有的东西都还回去,即删除外部的STOP和TAKE参数,在函数里面写上数字来代替它们,那么这个EA已经周而复始地运行了10周,并显示出清晰的结果。而如果我手动改变停止和收回的参数--一切都将工作,并给出稍微不同的结果(当然)。而现在,为什么当我把这些参数放在修改器之外时--优化器认为它们不重要? 这正是我想告诉你的--问题很可能在其他地方,而不是在这个函数中。所以你有别的东西混在一起。也许这些SL和TP被应用在其他一些地方,以某种方式重合或其他。我们只能猜测。- 这就是为什么你必须要看整个代码。而且没有人可以盲目地帮助你。- 这里没有巫师。你看,你问了问题,但你没有提供你需要的所有信息来找出原因(合理地隐藏你的诀窍)。- 就像在插头的例子中一样。- 但在这种情况下,你怎么能帮助呢?- 答案是,你不能。所有的帮助都是毫无意义的。而且这也需要大量的精力。 elllfix 2013.05.29 10:04 #3663 Chiripaha:好吧,如果它是有效的,甚至如果它是100%的,那么就没有问题了。那么,你为什么要在其中寻找一个错误呢?- 所以,问题不在这里!- 如果你正在寻找一个错误,这意味着你没有100%的把握。所以,问题不在代码,而在你的评价标准,因为它们也让你困惑。(你先开始的:)))我只是给它加点油...)这里所介绍的--我甚至不知道如何称呼它......。可能是--一个单一的行动被膨胀到一个函数的大小。在大多数程序中,这种应用并不理想--在一个区块中的修改与其他东西一起进行。- 虽然。可能有不同的适用条件。但我的观点是,这里没有什么可以优化的......因为它只是一个行动。 我在其中寻找,因为我们只改变了它,因为它是可优化参数的地方。怎么就没有什么可优化的了呢? elllfix 2013.05.29 10:06 #3664 Chiripaha:这正是我想告诉你的--问题可能出在别的地方,而不是在这个函数中。所以你有其他的困惑。也许这些SLs和TPs被应用于其他一些地方,以某种方式重叠或其他......。我们只能猜测。- 这就是为什么你必须要看整个代码。而且没有人可以盲目地帮助你。- 没有巫师。你看,你问的问题,你漏掉了一些查明原因所需的信息(理智地隐藏你的诀窍)。- 如同在有inludes的例子中。- 但在这种情况下,你怎么能帮助呢?- 答案是,你不能。所有的帮助都是毫无意义的。而且这也需要大量的精力。 我理解...我们需要休息一下... ...思考... 请看....而且我想我知道在哪里... Chiripaha 2013.05.29 10:08 #3665 lottamer:我在其中寻找,因为我们只改变了它,因为它是可优化参数的地方。怎么就没有什么可优化的了呢?:))))))它们是为什么而优化的?"订单的修改?- 你刚才不是这么说的。它们应该根据程序、条件进行优化--你可靠地隐藏了这些条件。但它不能针对单一行动进行优化。 在这种情况下,开发商只需要自己决定这些要点。我们都经历过这种情况,相信我。: ))我和其他同事也是如此。你不能请求帮助并躲起来。然后,你必须透露--在这种情况下根本就不公开,因为论坛是公开的--你的牌。 elllfix 2013.05.29 10:10 #3666 Chiripaha::))))))它们以何种方式被优化? 以何种方式修改?- 你刚才不是这么说的。他们应该根据程序、条件进行优化--你是可靠地隐藏了这些条件。但你不能就单一行动进行优化。 在这种情况下,开发商只需要自己决定这些要点。我们都经历过这种情况,相信我。: ))我和其他同事也是如此。你不能在寻求帮助的同时隐藏自己。然后,你必须公开--在这种情况下,根本就公开,因为论坛是公开的--你的牌。 我现在将准备所有的代码,并显示........ elllfix 2013.05.29 10:44 #3667 这里是代码。欧元兑美元对//+------------------------------------------------------------------+ //| 33.mq4 | //| Copyright 2012, MetaQuotes Software Corp. | //| http://www.metaquotes.net | //+------------------------------------------------------------------+ #property copyright "Copyright 2012, MetaQuotes Software Corp." #property link "http://www.metaquotes.net" #include <WinUser32.mqh> #include <b-Positions.mqh> //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ extern int STOP = 100; extern int TAKE = 200; double Ma_1, Ma_2, m2, m3; // m2 и m3 - это маркеры //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start() { Ma_1=iMA(NULL,PERIOD_M15,20, 0,MODE_SMA,PRICE_CLOSE,1) ; Ma_2=iMA(NULL,PERIOD_M15,100,0,MODE_SMA,PRICE_CLOSE,1) ; //=============================BUY_CONDITIONS============================================= if (Ma_1>Ma_2 && m2==0) {My_close(); My_buy (); My_modify(); m2=1; } // закрыть если висят открытые позы // и открыть новую //=============================SELL_CONDITIONS============================================= if (Ma_1<Ma_2 && m3==0) {My_close(); My_sell (); My_modify(); m3=1; } //====================================== if ( OrdersTotal()==0 && (m2==1 || m3==1)) {m2=0; m3=0;} // обнуляет маркеры при закрытии позиций, // что дает возможность открывать снова //==============переход в безубыток ======================== OrderSelect(0,SELECT_BY_POS,MODE_TRADES); if (OrderProfit()>0.5) {My_modify_close_zero ();} return(0); } //============================функция ПРОДАТЬ============================================== int My_sell() { OrderSend (Symbol( ), OP_SELL, 0.01 ,Bid, 0, 0, 0, NULL, 0, 0, CLR_NONE); } return; ///==================================КУПИТЬ========================================== int My_buy () { OrderSend (Symbol( ), OP_BUY, 0.01 ,Ask, 0, 0, 0, NULL, 0, 0, CLR_NONE); } return; //+---------------------МОДИФИЦИРОВАТЬ сделку сразу по открытии---------------------------------------------+ int My_modify() { bool result; double take_profit,stop_loss,point; int cmd,total,error; //---- total=OrdersTotal(); point=MarketInfo(Symbol(),MODE_POINT); //---- // for(int i=0; i<total; i++) // { if(OrderSelect(0,SELECT_BY_POS,MODE_TRADES)) { //---- print selected order OrderPrint(); cmd=OrderType(); //---- buy or sell orders are considered if(cmd==OP_BUY || cmd==OP_SELL) { //---- modify first market order while(true) { if(cmd==OP_BUY) stop_loss=OrderOpenPrice()-STOP*point; else stop_loss=OrderOpenPrice()+STOP*point; if(cmd==OP_BUY) take_profit=OrderOpenPrice()+TAKE*point; else take_profit=OrderOpenPrice()-TAKE*point; result=OrderModify(OrderTicket(),0,stop_loss, take_profit,0,CLR_NONE); if(result!=TRUE) { error=GetLastError(); Print("LastError = ",error); } else error=0; if(error==135) RefreshRates(); else break; } //---- print modified order (it still selected after modify) OrderPrint(); // break; } } else { Print( "Error when order select ", GetLastError()); } // } return(0); } //==============================выставить стопы в безубыток============================================================ int My_modify_close_zero () { bool result; double stop_loss,point; int cmd,total,error; //---- total=OrdersTotal(); point=MarketInfo(Symbol(),MODE_POINT); //---- // for(int i=0; i<total; i++) // { if(OrderSelect(0,SELECT_BY_POS,MODE_TRADES)) { //---- print selected order OrderPrint(); cmd=OrderType(); //---- buy or sell orders are considered if(cmd==OP_BUY || cmd==OP_SELL) { //---- modify first market order while(true) { if(cmd==OP_BUY) stop_loss=OrderOpenPrice(); else stop_loss=OrderOpenPrice(); result=OrderModify(OrderTicket(),OrderOpenPrice(),stop_loss,OrderTakeProfit(),0,CLR_NONE); if(result!=TRUE) { error=GetLastError(); Print("LastError = ",error); } else error=0; if(error==135) RefreshRates(); else break; } //---- print modified order (it still selected after modify) OrderPrint(); // break; } } else { Print( "Error when order select ", GetLastError()); } // } //---- return(0); } //=================ЗАКРЫТЬ СДЕЛКУ======================================================= int My_close() { bool result; double price; int cmd,error; //---- if(OrderSelect(0,SELECT_BY_POS,MODE_TRADES)) { cmd=OrderType(); //---- first order is buy or sell if(cmd==OP_BUY || cmd==OP_SELL) { while(true) { if(cmd==OP_BUY) price=Bid; else price=Ask; result=OrderClose(OrderTicket(),OrderLots(),price,3,CLR_NONE); if(result!=TRUE) { error=GetLastError(); Print("LastError = ",error); } else error=0; if(error==135) RefreshRates(); else break; } } } else Print( "Error when order select ", GetLastError()); //---- return(0); } Chiripaha 2013.05.29 11:04 #3668 lottamer:这里是代码。欧元兑美元对 b-Positions.mqh的附件--否则你将无法运行它--你不会看到它是如何工作的。 elllfix 2013.05.29 11:11 #3669 Chiripaha: b-Positions.mqh附件--否则你将无法运行它--你将无法看到它工作。 附加的文件: b-positions.mqh 90 kb Chiripaha 2013.05.29 11:24 #3670 lottamer: 我有一个问题--如果你在专家顾问本身就有所有必要的功能,为什么还需要这个文件作为一个插件?你是否打算做其他事情? 1...360361362363364365366367368369370371372373374...432 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
这个修改器不是我写的。
我从图书馆准备好了。
这就是为什么我也不能清洗它。最主要的是,它是100%的工作。
但为什么里面的参数没有被优化--这就是问题所在.....。
没有基本的错误!
其余的代码都能工作。
在算法上设置任何条件。
- 购买
-修改
- 关闭
---------------------------
并尝试优化订单修改中的参数--即停止并采取
好吧,只要它能工作,甚至如果它是100%,那么就没有问题。我们为什么要在其中寻找错误呢?- 这意味着它不是问题所在!- 而如果你正在寻找一个错误,这意味着你不是100%的确定。所以,问题不在代码,而在你的评价标准,因为它们也让你困惑。(你先开始的:)))我只是给它加点油...)
这里所介绍的--我甚至不知道如何称呼它......。可能是--一个单一的动作被膨胀到一个函数的大小。在大多数程序中,这种应用并不理想--在一个区块中的修改与其他东西一起进行。- 虽然。可能有不同的适用条件。但我的观点是,这里没有什么可以优化的......因为它只是一个行动。
看。
如果我现在把所有的东西都还回去,即删除外部的STOP和TAKE参数,在函数里面写上数字来代替它们,那么这个EA已经周而复始地运行了10周,并显示出清晰的结果。
而如果我手动改变停止和收回的参数--一切都将工作,并给出稍微不同的结果(当然)。
而现在,为什么当我把这些参数放在修改器之外时--优化器认为它们不重要?
这正是我想告诉你的--问题很可能在其他地方,而不是在这个函数中。所以你有别的东西混在一起。也许这些SL和TP被应用在其他一些地方,以某种方式重合或其他。我们只能猜测。- 这就是为什么你必须要看整个代码。而且没有人可以盲目地帮助你。- 这里没有巫师。
你看,你问了问题,但你没有提供你需要的所有信息来找出原因(合理地隐藏你的诀窍)。- 就像在插头的例子中一样。- 但在这种情况下,你怎么能帮助呢?- 答案是,你不能。所有的帮助都是毫无意义的。而且这也需要大量的精力。
好吧,如果它是有效的,甚至如果它是100%的,那么就没有问题了。那么,你为什么要在其中寻找一个错误呢?- 所以,问题不在这里!- 如果你正在寻找一个错误,这意味着你没有100%的把握。所以,问题不在代码,而在你的评价标准,因为它们也让你困惑。(你先开始的:)))我只是给它加点油...)
这里所介绍的--我甚至不知道如何称呼它......。可能是--一个单一的行动被膨胀到一个函数的大小。在大多数程序中,这种应用并不理想--在一个区块中的修改与其他东西一起进行。- 虽然。可能有不同的适用条件。但我的观点是,这里没有什么可以优化的......因为它只是一个行动。
我在其中寻找,因为我们只改变了它,因为它是可优化参数的地方。
怎么就没有什么可优化的了呢?
这正是我想告诉你的--问题可能出在别的地方,而不是在这个函数中。所以你有其他的困惑。也许这些SLs和TPs被应用于其他一些地方,以某种方式重叠或其他......。我们只能猜测。- 这就是为什么你必须要看整个代码。而且没有人可以盲目地帮助你。- 没有巫师。
你看,你问的问题,你漏掉了一些查明原因所需的信息(理智地隐藏你的诀窍)。- 如同在有inludes的例子中。- 但在这种情况下,你怎么能帮助呢?- 答案是,你不能。所有的帮助都是毫无意义的。而且这也需要大量的精力。
我理解...
我们需要休息一下... ...思考...
请看....
而且我想我知道在哪里...
我在其中寻找,因为我们只改变了它,因为它是可优化参数的地方。
怎么就没有什么可优化的了呢?
:))))))它们是为什么而优化的?"订单的修改?- 你刚才不是这么说的。
它们应该根据程序、条件进行优化--你可靠地隐藏了这些条件。但它不能针对单一行动进行优化。
在这种情况下,开发商只需要自己决定这些要点。我们都经历过这种情况,相信我。: ))我和其他同事也是如此。你不能请求帮助并躲起来。然后,你必须透露--在这种情况下根本就不公开,因为论坛是公开的--你的牌。:))))))它们以何种方式被优化? 以何种方式修改?- 你刚才不是这么说的。
他们应该根据程序、条件进行优化--你是可靠地隐藏了这些条件。但你不能就单一行动进行优化。
在这种情况下,开发商只需要自己决定这些要点。我们都经历过这种情况,相信我。: ))我和其他同事也是如此。你不能在寻求帮助的同时隐藏自己。然后,你必须公开--在这种情况下,根本就公开,因为论坛是公开的--你的牌。我现在将准备所有的代码,并显示........
这里是代码。
欧元兑美元对
这里是代码。
欧元兑美元对
b-Positions.mqh附件--否则你将无法运行它--你将无法看到它工作。