[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 402

 

大家好!

我试着编了一个函数,谁能告诉我这里犯了什么错误?

//попытка сделать функцию: отключение всех  индикаторов и разрешение только Бай или Селл в зависимости от того, 
//что закуплено, когда баланс снижается на заданный процент
bool fOffInd(){
int i, b, s;
   if( UT_AutoOf==1){
   //если баланс снизился на LossIndikator процентов
       if( gProfit<=((-1.0)* LossIndikator*AccountBalance())/100.0){
          Print ("Индикаторы выключен автоматически!");
          UT_ON=0; //выключатель индикатора, 0-контроль отключен
          VRF_ON=0;//выключатель индикатора, 0-контроль отключен
   //выбираем открытые ордера Бай       
   for( i=1; i<=OrdersTotal(); i++){        
      if(OrderSelect( i-1, SELECT_BY_POS)==true){   
           if(OrderType()==OP_BUY && OrderSymbol()==Symbol()){ b= b+1;}
        }   
        return( b);
        }
   //выбираем открытые ордера Селл     
   for( i=1; i<=OrdersTotal(); i++){        
      if(OrderSelect( i-1, SELECT_BY_POS)==true){   
           if(OrderType()==OP_SELL && OrderSymbol()==Symbol()){ s= s+1;}
        }   
        return( s);
        }
   //если открытых Бай больше чем Селл, то включаем запрет торговли Бай     
       if( s<= b){ CloseAllBuyNow  = true;
         Print ("Работаем только Селл!");
          }
       else{
   //если открытых Селл больше чем Селл, то включаем запрет торговли Селл    
       if( b<= s){ CloseAllSellNow = true;
         Print ("Работаем только Бай!");
             }
           }
            return(false);
         }
       }
       else{
       //все индикаторы должны быть включены и запрет на Бай и Селл снят
          UT_ON=1;
          VRF_ON=1;
          CloseAllBuyNow  = false;
          CloseAllSellNow = false;
//          return(false);
    }
   return(0);    
} 

 
 

因此,你的解决方案是让EA从指标中读取信息,iCustom函数用于此,请阅读文档中的描述。它从指标数组中写出相应条形的值到你的EA中需要的变量。

以下是对该功能的描述:https://docs.mql4.com/ru/indicators/iCustom

谢谢,我会看的。

我现在尝试命令该指标创建一个全局变量,然后按照教程中的描述将其值读入EA。

我没有遇到过这种方式的iCustom功能。

 

你好,请告知如何行动 我开了一个 100美元的模拟账户,想做一笔交易,并将手数改为0.10或0.05,但程序不允许这样做,没有点燃买入和坐庄按钮。

 
Arius писал(а)>>

下午好,请告诉我如何行动,我开了一个100美元的模拟账户,想在改变手数为0.10或0.05时进行交易,但程序不允许这样做,不能点买入和坐下按钮。

巴迪它不能解决任何问题,这完全取决于你开户的公司,如果它可以交易的手数少于0.10,那么这个按钮就会被点亮,否则你就不能影响任何事情。

 
Stanislav.exe писал(а)>>

没有办法解决,这完全取决于你开户的公司,如果他们允许你用小于0.10手的交易,那么按钮就会亮起,否则你就无法影响它。

>> 谢谢你。

 

大家好!!!。请帮助一个新手。

我需要写下面的代码,可惜我自己还搞不清楚。

"在穿越两个MAs到其反向穿越的时间内,EA应该只开一个交易。"

问题:"当然,代码本身以及将其放在哪里?"提前感谢。

 
Stanislav.exe писал(а)>>

大家好!!!。请帮助一个新手。

我需要写下面的代码,可惜我自己还搞不清楚。

"在穿越两个MAs到其反向穿越的时间内,EA应该只开一个交易。"

问题:"当然,代码本身以及将其放在哪里?" 提前感谢。

请看一下CodeBase。它已经在那里了。

 
Vinin писал(а)>>

在CodeBase中查看。它已经在那里了。

谢谢你,我现在就去找它。
 
Nail_Saby >>:

всем привет!

Вот попытался состряпать одну функцию, кто сможет сказать, какие тут ошибки допущены?

这是个聪明的任务还是什么?那么,如果在每个循环的第一次迭代中,你已经有了一个来自程序的return() 调用,那么你为什么还需要for 循环?

 
alsu писал(а)>>

这是个聪明的任务还是什么?那么,如果在每个循环的第一次迭代中,你已经被return() 从程序中调用,那么你为什么还需要for 循环?

我从一个现成的函数中提取了一段带有for的代码http://fxnow.ru/blog.php?user=Yuriy&blogentry_id=66...

但是,我是否应该从最底层的返回() 中删除?为了让它发挥作用?