Come codificare? - pagina 121

 
IN10TION:
Ciao! Controlla il codice all'interno di questo indicatore... (solo per la tua apertura, non è un EA)

grazie bro....

Darò un'occhiata

 
:: se è sempre in loop devi smettere di chiamare la tua funzione ogni tick di prezzo in arrivo ... controlla il tuo altro codice ...
fercan:
Qualcuno può impedire che questo vada sempre in loop?
 
denis68:
matrixebiz ho fatto che ora non posso compilare il mio ea quando ho aggiunto le seguenti linee al mio ea

double ac1 = iCustom(NULL, 0, "AcceleratorMod", 1, 1);

double ac2 = iCustom(NULL, 0, "AcceleratorMod", 2, 1);

double ac11 = iCustom(NULL, 0, "AcceleratorMod", 1, 2);

double ac22 = iCustom(NULL, 0, "AcceleratorMod", 2, 2);

bool acbuy = ac2==0 && ac11==0; // Il rosso cambia in Lime

bool acsell = ac1==0 && ac22==0; // Lime cambia in Red

Ottengo 12 errori: Variabile AC non definita:

e vorrei ringraziarvi per l'aiuto

Beh, non puoi semplicemente aggiungere quelle linee senza fare le altre modifiche necessarie al tuo codice EA.

Come la tua istruzione CloseBuy cambierebbe da;

se ((AC1 < AC2)) Ordine = SIGNAL_CLOSEBUY;

a;

se ((ac1==0 && ac22==0)) Ordine = SIGNAL_CLOSEBUY;

se hai intenzione di usare questo tipo di comandi

se ((ac1==0 && ac22==0)) Order = SIGNAL_CLOSEBUY;

allora non avresti bisogno di questi;

bool acbuy = ac2==0 && ac11==0; // Il rosso cambia in Lime

bool acsell = ac1==0 && ac22==0; // Lime cambia in Red

Pensavo che tu avessi più codice di quello che hai.

 
IN10TION:
:: se è sempre in loop devi smettere di chiamare la tua funzione ogni tick di prezzo in arrivo ... controlla il tuo altro codice ...

Ok? Allora come fai? Puoi darmi un codice che posso aggiungere prima del BEM?

 
:: BEM si occupa dei segnali del tuo indicatore, giusto? come i tuoi valori di pips & BE che sono calcolati da qualche altra parte nel tuo codice... bene, fai questo confronto da qualche altra parte... non in loop ogni volta tra i tuoi ordini. Non vedo il resto del tuo codice... questo dipende da te...

IN10ZIONE

fercan:
Ok, allora come fai? Puoi darmi un codice che posso aggiungere prima di BEM?
 

Sto ancora lottando con il conteggio delle barre di stop loss dei miei post precedenti.

Guardando il codice originale, ho la sensazione che potrebbe essere difettoso. Sembra che stia impostando lo stoploss al minimo della barra da "x" barre indietro piuttosto che al minimo nel periodo delle "x" barre.

Si legge:

SL=iLow(Symbol(),Period(),iLowest(Symbol(),Period( ),MODE_LOW,StopLossBars,0));

Non capisco perché sta usando sia iLow che iLowest. Sarei corretto nel pensare che iLowest da solo è tutto ciò che è necessario?

 

Ho anche un altro problema con il codice del mio EA. Ho una linea che dovrebbe chiudere una posizione quando certi criteri sono soddisfatti. Uno dei criteri è che la posizione è attualmente in perdita.

Questa è la linea:

if ( (openPositions(OP_BUY)>0) && (OrderProfit( ) <= 0 ) && (macdnow macd_sigprevious)) {closeLong();}

L'EA funziona nel senso che chiude certamente le posizioni perdenti quando gli altri criteri sono soddisfatti. Per qualche ragione però, l'EA chiude anche le posizioni vincenti. Immagino che sto usando la funzione OrderProfit in modo errato.

Qualcuno può aiutarmi per favore?

 

winwin

Ciao ragazzi,

eeeeeee ccccht

 

In questo momento questo indicatore pubblica in verde le aperture delle barre che sono maggiori o uguali all'apertura precedente e in rosso quelle inferiori. La mia domanda è: come posso cambiare questo codice per fare in modo che le aperture che sono uguali all'apertura precedente siano visualizzate in GIALLO?

if( X01 >= X02 ) { color_X01 = Lime ; } else { color_X01 = Red ; }

if( X02 >= X03 ) { color_X02 = Lime ; } else { color_X02 = Red ; }

if( X03 >= X04 ) { color_X03 = Lime ; } else { color_X03 = Rosso ; }

if( X04 >= X05 ) { color_X04 = Lime ; } else { color_X04 = Rosso ; }

if( X05 >= X06 ) { color_X05 = Lime ; } else { color_X05 = Rosso ; }

if( X06 >= X07 ) { color_X06 = Lime ; } else { color_X06 = Rosso ; }

if( X07 >= X08 ) { color_X07 = Lime ; } else { color_X07 = Rosso ; }

if( X08 >= X09 ) { color_X08 = Lime ; } else { color_X08 = Rosso ; }

if( X09 >= X10 ) { color_X09 = Lime ; } else { color_X09 = Rosso ; }

 
:: poi definisci ogni dichiarazione che non può essere e che NON è uguale... alla fine usa la dichiarazione uguale per il Giallo.

IN10ZIONE

fireslayer26:
In questo momento questo indicatore pubblica le aperture delle barre che sono maggiori o uguali all'apertura precedente in Verde e inferiori in Rosso. La mia domanda è come potrei cambiare questo codice per far sì che le aperture che sono UGUALI all'apertura precedente appaiano in GIALLO?

if( X01 >= X02 ) { color_X01 = Lime ; } else { color_X01 = Red ; }

if( X02 >= X03 ) { color_X02 = Lime ; } else { color_X02 = Red ; }

if( X03 >= X04 ) { color_X03 = Lime ; } else { color_X03 = Rosso ; }

if( X04 >= X05 ) { color_X04 = Lime ; } else { color_X04 = Rosso ; }

if( X05 >= X06 ) { color_X05 = Lime ; } else { color_X05 = Rosso ; }

if( X06 >= X07 ) { color_X06 = Lime ; } else { color_X06 = Rosso ; }

if( X07 >= X08 ) { color_X07 = Lime ; } else { color_X07 = Rosso ; }

if( X08 >= X09 ) { color_X08 = Lime ; } else { color_X08 = Red ; }

if( X09 >= X10 ) { color_X09 = Lime ; } else { color_X09 = Red ; }
Motivazione: