[ARCHIVIO] Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 3. - pagina 414

 
OlegArH:

Buon pomeriggio, gente!

Sto giocando con il mio primo robot. La mia idea è di aprire un ordine pendente con una scadenza impostata.

Non ho abbastanza conoscenze per implementarlo.

Se non ti dispiace, potresti descrivere l'esempio di EA che, se lo compilo, apre solo uno per uno, ad esempio BuyStop per 100 min a 50 punti dal prezzo corrente SL=50, TP=100 per eur/usd a qualsiasi timeframe.

Grazie in anticipo!

un altro esempio
File:
temp_3.mq4  4 kb
 
Non funziona, è solo appeso lì.
 
emotraid:
Non funziona, si blocca e basta.

)

ottimizzarlo.

;)

 
costy_:

Ho pensato che fosse abbastanza chiaro.


Grazie!
 
costy_:
un altro esempio
Grazie mille!!!
 

Per favore, spiegate l'operatore return(-1); chiamato nel corpo della funzione start() - cosa dà?

Return(0); è la stessa cosa o no? Sembra che il risultato non venga passato da nessuna parte.

Perché lo scrivono così in questo caso?

int start()
  {
  if(a == b)return(-1);
  
  return(0);
  }
 
fore-x:

Per favore, spiegate l'operatore return(-1); chiamato nel corpo della funzione start() - cosa dà?

Return(0); è la stessa cosa o no? Il risultato non sembra essere passato da nessuna parte.

Perché lo scrivono così?

Scrivere void start()

e il ritorno non è necessario ))

Non so perché!

 
costy_:
Ho la sensazione che non riuscirai a capirlo da solo.

Come faccio a far controllare tutte le condizioni in ordine: prima la condizione_1, poi la condizione_2, e solo allora la condizione_3, e non così (quale condizione coincideva, che non era soddisfatta in ordine)? E quando tutte le condizioni sono soddisfatte in ordine, allora aprite un ordine di mercato per vendere. Sarà corretto?

bool Val_max=true;
bool Cl_dn=true;
bool Val_min=true;
void start()
  {
      if(Val_max==true)
         if(условие_1)
         {
           Alert("Значение инд. >= 1.0000 (исп. 1-е усл.)");
           Val_max=false;                                       //заглушка
         }
      if(Cl_dn==true && Val_max==false)
         if(условие_2)
         {
           Alert("1 бар закрылся падением (исп. 2-е усл.)");
           Cl_dn=false;                                         //заглушка
         }
      if(Val_min==true && Val_max==false && Cl_dn==false)
         if(условие_3)
         {
           Alert("Значение инд. <= 0.9980 (исп. 3-е усл.)");
           Val_min=false;                                       //заглушка
         }
      if(Val_max!=true && Cl_dn!=true && Val_min!=true)
         {
           Val_max=true;
           Cl_dn=true;
           Val_min=true;      
         }   
//----
   return(0);
  }
 
fore-x:

Per favore, spiegate l'operatore return(-1); chiamato nel corpo della funzione start() - cosa dà?

Return(0); è la stessa cosa o no? Sembra che il risultato non venga passato da nessuna parte.

Perché lo scrivono in questo modo?

Una procedura è una funzione il cui valore di ritorno non viene utilizzato.

return è spesso digitato per divertimento e può essere tranquillamente buttato via.

Nell'esempio precedente, il valore di ritorno può essere usato: Alert(init());

 
kolyango:

Come faccio a far controllare tutte le condizioni in ordine: prima la condizione_1, poi la condizione_2, e solo allora la condizione_3, e non così (quale condizione coincideva, che non era soddisfatta in ordine)? E quando tutte le condizioni sono soddisfatte in ordine, allora aprite un ordine di mercato per vendere. È corretto?

Sì.
Motivazione: