[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 4. - pagina 302

 
skyjet:

Ciao, scusa per l'insistenza, ma se non ti dispiace, potresti consigliarmi?

Con iCustom ottengo un segnale indicatore nell'EA, ma l'EA apre solo trade in una direzione, a seconda della condizione di quella parte .

Non c'è niente di più noioso che cercare errori nel codice di altre persone. E io non sono un programmatore.

Guardate come è fatto il blocco di apertura dall'indicatore della freccia nella procedura guidata. C'è anche un limite al numero di ordini.

         #property copyright "Integer"
         //..............................  
         double bv=iCustom(NULL,TimeFrame,IND,PatternLength,PatternID,UsePatternStr,BuyPatternStr,0,1);
         double sv=iCustom(NULL,TimeFrame,IND,PatternLength,PatternID,UsePatternStr,BuyPatternStr,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)){
                              fOrderOpenBuy();
                           }  
                        }
                     }
                     if(SellSignal){
                        if(SellCount<MaxSellCount || MaxSellCount==-1){
                           if(LastSellTime!=iTime(NULL,TimeFrame,0)){
                              fOrderOpenSell();
                           }
                        }
                     }
                  }
                  
            }
            
 
skyjet:

Ciao, scusa per l'insistenza, ma se non ti dispiace, potresti consigliarmi?

Con iCustom ottengo un segnale indicatore nell'EA, ma l'EA apre solo trade in una direzione, a seconda della condizione di quella parte .


Dovrei anche guardare queste condizioni
 
Vinin:

Ma è meglio non trasferire il codice dell'indicatore all'esperto - ci saranno dei ritardi
Devo usare iCustom per ricevere i dati per l'Expert Advisor?
 
Alexandr24:
Ottenere i dati per l'esperto tramite iCustom?

Una variante ottimale, se il codice dell'indicatore è ottimale. Altrimenti, si può accelerare l'elaborazione
 
Vinin:

Avrei dovuto guardare queste condizioni

Controllando un segnale, all'inizio sia su buy che su sell era db/ub == 0 apre solo trade lunghi


dopo che il segnale è diventato db!=1, ub!=0 apre solo posizioni corte

Ho messo db!=0 e ub!=!0, non si apre affatto

//------ получение сигнала в советнике


double db=iCustom(NULL,0,"GetSignal",0,SignalBar);// Стрелка вниз
double ub=iCustom(NULL,0,"GetSignal",1,SignalBar);// Cтрелка вверх
 
 
 bool BuySignal=false;
 bool SellSignal=false;
 
//-----------------------------------------------------------------------------------+
//Проверка на сигнал
if(db!=1)
 {
  SellSignal=true;
 }
if(ub!=1)
 {
  BuySignal=true;
 }
 
skyjet:

Controllando un segnale, all'inizio sia su buy che su sell era db/ub == 0 apre solo trade lunghi


dopo che il segnale è diventato db!=1, ub!=0 apre solo posizioni corte

Ho messo db!=0 e ub!=!0 i trade non si sono aperti affatto


Non ti dice nulla, soprattutto se l'indicatore è curvo
 
Vinin:

Non ti dice nulla, soprattutto se l'indicatore è storto

Ho monitorato il funzionamento dell'indicatore e non ho notato alcun problema.

Ma se dite che è storto, cosa c'è da controllare?

 
skyjet:
MetaEditor
Grazie!
 

Buonasera, potete dirmi la differenza tra

testo e marchio di testo?

OBJ_TEXT 21 Testo
OBJ_LABEL 23 Etichetta di testo.
 

potrebbe dirmi...
Si cerca un valore massimo su un dato intervallo:

buy_stop_level = High[iHighest(NULL,0,MODE_HIGH,Bars-bar_start,1)];

Richiesto:
Dopo aver trovato un massimo, su un nuovo intervallo (dalla prima barra alla barra su cui il massimo è determinato), trova il minimo.

StopLoseBuy    = Low[iLowest(NULL,0,MODE_LOW,Bars-(бар который приходится на максимум),1)];
Motivazione: