Aiuto per trovare una parentesi sinistra sbilanciata - pagina 5

 

Usate il print statment per vedere i valori che sono stati controllati e che hanno permesso l'invio dell'ordine.

if(flag==1)  {
      Print("MAFast1=",MAFast1,"  MAFast2=",MAFast2","   MA....", MAFast3 /*and so on  */); 
      Ticket_L = OrderSend(Symbol(),OP_BUY,Lots,Ask,Slip,0,0,Comments,MAGIC,0,Red);
    }
 

senza offesa per il cinese, è solo che non leggo il cinese e tende a confondermi... ;)

per quanto riguarda la tua domanda su come si prende una posizione lunga, fammi vedere se riesco a spiegarlo.

if(flag==1)  {  
      Ticket_L = OrderSend(Symbol(),OP_BUY,Lots,Ask,Slip,0,0,Comments,MAGIC,0,Red);
    }

se i confronti finiscono per impostare la bandiera a uno, il codice tra le parentesi graffe di cui sopra {} verrà eseguito.

altrimenti, se flag non contiene un uno, il programma salta le parentesi graffe e tutto ciò che c'è in mezzo e riprende l'esecuzione del codice dopo la parentesi graffa di chiusura.

vedete cosa intendo?

zero/.

 
Thank you i will add it and see . I really appreciate your helps.
 

I miei migliori auguri a te, Ericman.

zero/.

 
smoknfx:

senza offesa per il cinese, è solo che non leggo il cinese e tende a confondermi... ;)

per quanto riguarda la tua domanda su come si prende una posizione lunga, fammi vedere se riesco a spiegarlo.

se i confronti finiscono per impostare la bandiera a uno, il codice tra le parentesi graffe di cui sopra {} verrà eseguito.

altrimenti, se flag non contiene un uno, il programma salta le parentesi graffe e tutto ciò che c'è in mezzo e riprende l'esecuzione del codice dopo la parentesi graffa di chiusura.

vedete cosa intendo?

zero/.

Grazie per la spiegazione. Sento che il mio cervello produce dopamina ogni volta che risolvi i miei dubbi e le mie domande. Cerco di continuare a codificare. Grazie.
 

ericman,

questo è quello che faccio per divertimento.

Il mio codice di trading è finito.

Sto solo ammazzando il tempo mentre eseguo i miei scambi dal vivo.

Tra l'altro, sto per diventare molto ricco... tipo, miliardi, sai.

capisci.

zero/.

Video: Marilyn Manson - New @#$&%%

 
smoknfx:

ericman,

questo è quello che faccio per divertimento.

Il mio codice di trading è finito.

Sto solo ammazzando il tempo mentre eseguo i miei scambi dal vivo.

Tra l'altro, sto per diventare molto ricco... tipo, miliardi, sai.

capisci.

zero/.

Video: Marilyn Manson - New @#$&%%


Perché stai mostrando i video di Marling Manson lol Pensavo mi avessi mandato il tuo video EA o qualcosa del genere lol... Beh, grazie in ogni modo, continuerò a codificare lol

Prova a pensare in un modo facile oltre che non durerà credo...

 

Dato che questo thread è diventato un insegnamento di tecniche di programmazione, ho pensato di cambiare un po' il codice per aiutare il processo di comprensione del perché il codice potrebbe non funzionare come previsto o per il debug.

#define MAGIC  4649        

// parameter
extern double Lots = 1.0;     //
extern int Slip = 10;         //
extern string Comments =  ""; //

extern int FastMA1_p = 34;
extern int SlowMA1_p = 34;
extern int modeMA1 = MODE_SMA;
extern int modeMA2 = MODE_EMA;
extern int MA1Cross_Timeframe = PERIOD_M15;
extern int FastMA2_p = 68;
extern int SlowMA2_p = 68;
extern int CCI_p = 20;
extern int CCI_Buy_Point = 100;
extern int CCI_Sell_Point = -100;
extern int CCI_Timeframe = PERIOD_M30;
extern int Band_p = 6;
extern int Band_Timeframe = PERIOD_M15;



//variables//
int Ticket_L = 0; 
int Ticket_S = 0; 
int Exit_L = 0;   
int Exit_S = 0;   




int start()
  {


double MAFast1 = iMA(NULL, MA1Cross_Timeframe, FastMA1_p, 0, modeMA2, PRICE_CLOSE, 0);
double MAFast2 = iMA(NULL, MA1Cross_Timeframe, FastMA1_p, 0, modeMA2, PRICE_CLOSE, 1);
double MASlow1 = iMA(NULL, MA1Cross_Timeframe, SlowMA1_p, 0, modeMA1, PRICE_CLOSE, 0);
double MASlow2 = iMA(NULL, MA1Cross_Timeframe, SlowMA1_p, 0, modeMA1, PRICE_CLOSE, 1);
    
double MAFast3 = iMA(NULL, MA1Cross_Timeframe, FastMA2_p, 0, modeMA2, PRICE_CLOSE, 0);
double MAFast4 = iMA(NULL, MA1Cross_Timeframe, FastMA2_p, 0, modeMA2, PRICE_CLOSE, 1);
double MASlow3 = iMA(NULL, MA1Cross_Timeframe, SlowMA2_p, 0, modeMA1, PRICE_CLOSE, 0);
double MASlow4 = iMA(NULL, MA1Cross_Timeframe, SlowMA2_p, 0, modeMA1, PRICE_CLOSE, 1);
    
     
double cci1 = iCCI(NULL, CCI_Timeframe, CCI_p, PRICE_CLOSE, 0);
double cci2 = iCCI(NULL, CCI_Timeframe, CCI_p, PRICE_CLOSE, 1);
double cci3 = iCCI(NULL, CCI_Timeframe, CCI_p, PRICE_CLOSE, 2);
   
double bands_upper1 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_UPPER, 1);
double bands_upper2 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_UPPER, 2);
double bands_lower1 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_LOWER, 1);
double bands_lower2 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_LOWER, 2);

int flag=0;

     

   //Long position entry 
   
flag = 0 ; //ensures that code in development that might appear before this code has not corrupted what we need the status of flag to be

if(MAFast1>MASlow1 && MAFast3>MASlow3 && cci3<100 && cci2>=100 && cci1>100) flag=flag+1; //flag += 1; would do the same thing

if(MAFast1>MASlow1 && MAFast4<MASlow4 && MAFast3>MASlow3 && cci1>100) flag=flag+10; 

if(MAFast2<MASlow2 && MAFast1>MASlow1 && MAFast3>MASlow3 && cci1>100) flag=flag+100;

if(flag>0)  {
      Print("Flag=",Flag) ; //Now we can see which conditions were satisfied  
      Ticket_L = OrderSend(Symbol(),OP_BUY,Lots,Ask,Slip,0,0,Comments,MAGIC,0,Red);
    }
    

    
     
   return(0);
  }
 
ericman:


perché stai mostrando i video di Marling Manson lol ho pensato che mi hai mandato il tuo video EA o qualcosa del genere lol... Bene grazie in ogni modo io continuerò a codificare lol

Prova a pensare in un modo facile oltre che non durerà credo...


mi piace la mia musica mentre lavoro.

buona fortuna a voi con la vostra codifica.

ickyy ha la ruota ora.

i miei migliori auguri a voi.

zero/.

 
Non accetto la responsabilità assegnata.