[АРХИВ!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 4. - страница 291

 
Извините, а мне кто-нибудь поможет ? ))
 
Вам нужно определить наличие значения на индикаторном буфере отличном от IndicatorEmptyValue(), которое для стрелок в 90% == 0, там и будет ваша стрелка. а "true" из вызова уберите.
 

Горы не будет, если:

int start(){
 if(Depth>Bars-1) Depth=Bars-1;
 double RVI=0;// Обратите внимание - нет нужды объявлять переменную на каждой итерации цикла!
        for(int i=1; i<Depth; i++){
                RVI = iRVI(NULL,0,ExtRVIPeriod,MODE_MAIN,i); 
                if(RVI < mini){
                        mini=RVI;
                        Alert("На свече ",i," mini = ",mini);
                }
                if(RVI > maxi){
                        maxi=RVI;
                        Alert("На свече ",i," maxi = ",maxi);
                }
        }
return(0);
}// Автору ведь нужно всего лишь небольшой период, а не все барсы :)
 
Руководство, поставьте пожалуйста в настройках форума размер табуляции в 2-3 пробела. А то код вставляешь и скобки уплывают Бог весть куда...
 
Автору нужно получить значения максимума и минимума на выходе их цикла, и в советнике. лучше избыточный код. чем избыточный геммор.
 

Можно ли вызывать функцию deinit() из функции start()? Например, я хочу сделать так, что бы эксперт сам выгрузился при наступлении заданных условий.

 
FAQ:
Автору нужно получить значения максимума и минимума на выходе их цикла, и в советнике. лучше избыточный код. чем избыточный геммор.


Ясно. Возможно я перемудрил и невнимательно прочёл задание - денёк сегодня выдался не из простых - усталость сказывается.

Передайте пожалуйста админу, чтоб в настройках редактора табуляцию подуменьшил - ну правда, реально неудобно каждый раз править код в редакторе форума.

 
skyjet:
Извините, а мне кто-нибудь поможет ? ))
Вот отрывок кода из советника Integer'а, который показывает работу со стрелочным индикатором.
         double bv=iCustom(NULL,0,"MaSignalFunction",0,1);//стрелка "Вверх" в буфере №0
         double sv=iCustom(NULL,0,"MaSignalFunction",1,1);//стрелка "Вниз"  в буфере №1
         bool BuySignal=false;
         bool SellSignal=false;
            if(bv!=0 && bv!=EMPTY_VALUE){
               BuySignal=true;
            }
            if(sv!=0 && sv!=EMPTY_VALUE){
               SellSignal=true;
            }
            
            if(BuySignal || SellSignal){
               //если разрешено обратное закрытие, вызывается ф-ия закрытия встречных ордеров 
               if(CloseOnRev)fOrderCloseMarket(SellSignal,BuySignal);
               int BuyCount,SellCount;
               int Total=fMarketOrdersTotal(BuyCount,SellCount);
                  if(Total==-1){
                     return(0);
                  }
                  if(Total<MaxCount || MaxCount==-1){
                     if(BuySignal){
                        if(BuyCount<MaxBuyCount || MaxBuyCount==-1){
                           if(LastBuyTime!=iTime(NULL,TimeFrame,0)){
                              Print("BuySignal ",CommentOrder);                          
                              fOrderOpenBuy();//вызывается ф-ия открытия buy
                           }  
                        }
                     }
                     if(SellSignal){
                        if(SellCount<MaxSellCount || MaxSellCount==-1){
                           if(LastSellTime!=iTime(NULL,TimeFrame,0)){
                              Print("SellSignal ",CommentOrder);
                              fOrderOpenSell();//вызывается ф-ия открытия sell                           }
                        }
                     }
                  }
                  
            }
            
  
 
silhouette:

Можно ли вызывать функцию deinit() из функции start()? Например, я хочу сделать так, что бы эксперт сам выгрузился при наступлении заданных условий.


Нельзя вызвать деинициализацию из старта советника, но можно дать команду прекратить работу с помошью ретурна
 
granit77:
Вот отрывок кода из советника Integer'а, который показывает работу со стрелочным индикатором.



Огромное спасибо! Все стало яснее.

Если я правильно понял, то после создания индикаторной функции и упоминания о ней в советнике, с помощью iCustom, я обращаюсь к индикаторным буферам?

Причина обращения: