[存档!]任何菜鸟问题,为了不给论坛添乱。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 2. - 页 396 1...389390391392393394395396397398399400401402403...537 新评论 Dimka-novitsek 2011.05.19 12:09 #3951 对不起,我不能编译一个简单-简单的行。 double price=(Ask+Bid)/2; 在我把它放进去之前,它编译成了0,现在... --- 2011.05.19 12:10 #3952 Dimka-novitsek: 对不起,我不能编译简单-简单的行,在我放进去之前,它编译为0,现在它编译为。 把它放在开始 Dimka-novitsek 2011.05.19 12:16 #3953 谢谢你! Dimka-novitsek 2011.05.19 16:16 #3954 我不能让周期正确,在每一个刻度 上都有几个订单被打开,它应该是这样的。当滴答声到来时,变量X在循环内被声明,分别取值为0。 然后在循环内计算X=订单数量,如果X=0或1,那么它们就会打开。 //+------------------------------------------------------------------+ //| блин.mq4 | //| Copyright © 2011, MetaQuotes Software Corp. | //| http://www.metaquotes.net | //+------------------------------------------------------------------+ #property copyright "Copyright © 2011, MetaQuotes Software Corp." #property link "http://www.metaquotes.net" extern double stoploss=0; extern double takeprofit=20;extern int otstup=20; extern datetime expiration=0; //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int tiket,tikett;double volume=0.1;int i=0,R1=0,R2=0,A=1 ; int start() { int X; double price=(Ask+Bid)/2; //---- for(int Uy=OrdersTotal();Uy==0;Uy--){Alert ("OrdersTotal()",OrdersTotal());//тут считаем кол-во уже открытых ордеров. OrderSelect( Uy,SELECT_BY_POS );Alert ("Uy",Uy);if(OrderSymbol()==Symbol()&&OrderMagicNumber( )==1000||OrderMagicNumber( )==2000 &&OrderSymbol()==Symbol()) {X ++;} Alert ("X",X);} //---- if (X<2){ tiket= OrderSend( Symbol(), OP_BUYSTOP, volume*A, price +otstup*Point, Point* 3, R1, price+takeprofit*Point+otstup*Point, "OP_BUYSTOP", 1000, expiration, Red); Alert ("OP_BUYSTOP", GetLastError( )); tikett= OrderSend( Symbol(), OP_SELLSTOP, volume*A, price -otstup*Point, Point* 3,R2, price-takeprofit*Point-otstup*Point, "OP_SELLSTOP" , 2000, expiration,C'0,128,255' ); Alert ("OP_SELLSTOP", GetLastError( )); } //---- return(0); } //+------------------------------------------------------------------+ Vladimir Pastushak 2011.05.19 16:25 #3955 //+------------------------------------------------------------------+ //| блин.mq4 | //| Copyright © 2011, MetaQuotes Software Corp. | //| http://www.metaquotes.net | //+------------------------------------------------------------------+ #property copyright "Copyright © 2011, MetaQuotes Software Corp." #property link "http://www.metaquotes.net" extern double stoploss=0; extern double takeprofit=20;extern int otstup=20; extern datetime expiration=0; //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int tiket,tikett;double volume=0.1;int i=0,R1=0,R2=0,A=1 ; int start() { int X=0; double price=(Ask+Bid)/2; //---- for(int Uy=OrdersTotal();Uy==0;Uy--){Alert ("OrdersTotal()",OrdersTotal()); OrderSelect( Uy,SELECT_BY_POS );Alert ("Uy",Uy);if(OrderSymbol()==Symbol()&&OrderMagicNumber( )==1000||OrderMagicNumber( )==2000 &&OrderSymbol()==Symbol()) {X ++;} Alert ("X",X);} //---- if (X<2){ tiket= OrderSend( Symbol(), OP_BUYSTOP, volume*A, price +otstup*Point, Point* 3, R1, price+takeprofit*Point+otstup*Point, "OP_BUYSTOP", 1000, expiration, Red); Alert ("OP_BUYSTOP", GetLastError( )); tikett= OrderSend( Symbol(), OP_SELLSTOP, volume*A, price -otstup*Point, Point* 3,R2, price-takeprofit*Point-otstup*Point, "OP_SELLSTOP" , 2000, expiration,C'0,128,255' ); Alert ("OP_SELLSTOP", GetLastError( )); } //---- return(0); } //+------------------------------------------------------------------+ Vladimir Pastushak 2011.05.19 16:29 #3956 你已经声明了一个变量,但没有将其归零。因此,随着每一次打勾,它只会增长 !!!!!! 这不是正确的做法。 double price=(Ask+Bid)/2; Dimka-novitsek 2011.05.19 16:36 #3957 谢谢你!!!。我现在就去重设它。但同样的,有些事情是不对的,也许第一个循环由于某种原因没有起作用,X总是保持为0。我甚至不能确定这一点,因为Alert("X",X)没有记录任何东西,只有带零的订单被记录。 Alexander 2011.05.19 16:49 #3958 VOLDEMAR:你已经声明了一个变量,但没有将其归零。因此,随着每一次打勾,它只会增长 !!!!!!这是不对的。 你在这里弄错了。每一次打勾,这个变量都被重新声明,因此它等于0。 这是把它从方程中拿出来。 int start() { int X; double price=(Ask+Bid)/2; //---- for(int Uy=OrdersTotal();Uy==0;Uy--){Alert ("OrdersTotal()",OrdersTotal()); OrderSelect( Uy,SELECT_BY_POS );Alert ("Uy",Uy);if(OrderSymbol()==Symbol()&&(OrderMagicNumber( )==1000||OrderMagicNumber( )==2000 )&&OrderSymbol()==Symbol()) {X ++;} Alert ("X",X);} //---- if (X<2){ tiket= OrderSend( Symbol(), OP_BUYSTOP, volume*A, price +otstup*Point, 3, R1, price+takeprofit*Point+otstup*Point, "OP_BUYSTOP", 1000, expiration, Red); Alert ("OP_BUYSTOP", GetLastError( )); RefreshRates(); tikett= OrderSend( Symbol(), OP_SELLSTOP, volume*A, price -otstup*Point, 3,R2, price-takeprofit*Point-otstup*Point, "OP_SELLSTOP" , 2000, expiration,C'0,128,255' ); Alert ("OP_SELLSTOP", GetLastError( )); } //---- return(0); } Vladimir Pastushak 2011.05.19 16:54 #3959 Roger: 这就是你的错误所在。每一次打勾,这个变量都要重新声明,所以它等于0。是的,如果你把它设置为x=0,它就被归零了,如果你只是把它设置为x:,它就不会被归零,而是被递增。 Alexander 2011.05.19 16:56 #3960 VOLDEMAR: 是的,如果你把它设置为x=0,它就会归零,如果你只是把它设置为x:,它就不会归零,它会上升。 你在哪里读到的? 1...389390391392393394395396397398399400401402403...537 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
对不起,我不能编译简单-简单的行,在我放进去之前,它编译为0,现在它编译为
。
把它放在开始
我不能让周期正确,在每一个刻度 上都有几个订单被打开,它应该是这样的。当滴答声到来时,变量X在循环内被声明,分别取值为0。
然后在循环内计算X=订单数量,如果X=0或1,那么它们就会打开。
你已经声明了一个变量,但没有将其归零。因此,随着每一次打勾,它只会增长 !!!!!!
这不是正确的做法。
你已经声明了一个变量,但没有将其归零。因此,随着每一次打勾,它只会增长 !!!!!!
这是不对的。
你在这里弄错了。每一次打勾,这个变量都被重新声明,因此它等于0。
这是把它从方程中拿出来。
这就是你的错误所在。每一次打勾,这个变量都要重新声明,所以它等于0。
是的,如果你把它设置为x=0,它就被归零了,如果你只是把它设置为x:,它就不会被归零,而是被递增。
是的,如果你把它设置为x=0,它就会归零,如果你只是把它设置为x:,它就不会归零,它会上升。
你在哪里读到的?