Ema Cross! - pagina 12

 

@codersguru:

grazie per il grande sforzo...

Dopo aver allegato il tuo EA(https://www.mql5.com/en/forum/173468/page7) in 4pair eur/usd, gbp/usd, usd/chf, gbp/jpy.... tre coppie hanno immediatamente iniziato il commercio aperto (gbp/usd, usd/chf, gbp/jpy) e tutti hanno buoni risultati....

Non so nulla di programmazione ... ma sulla base di questo consigliato:

gkozlyk:
Per le frecce invertite, basta scambiare i 2 numeri di freccia nel codice, poi il problema è risolto. Compila in seguito perché abbia effetto su tutti i grafici a cui è applicato l'indicatore Graham

Faccio un piccolo cambiamento nell'EA:

se(linea1>linea2)current_direction = 1; //su

se(linea1<linea2)direzione_corrente = 2; //giù

A

se(linea1>linea2)direzione_corrente = 2; //su

se(linea1<linea2)direzione_corrente = 1; //giù

Ieri, ho attaccato questo EA al conto demo TF30 di neuimex in quattro coppie.... e tutti hanno un buon risultato a....

Continuerò a testare questi EA per altre 2/3 settimane....

 

Nella prossima modifica potrei inserire un altro interruttore in modo che gli utenti possano fare operazioni inverse sull'incrocio (ad esempio, se l'EMA veloce va sopra quello lento, si fa una vendita). Nel mio backtesting visivo, sembra meno redditizio che andare con l'incrocio immediatamente e poi, man mano che i trade invecchiano, cercare un trade inverso.

Un'altra idea che ho avuto è stata quella di aspettare una barra per fare il trade dopo l'incrocio (questo potrebbe prevenire quelle volte che la valuta passa e poi va nella direzione opposta)

Ho trovato un altro programma di cross EMA su questo sito web con alcune buone idee.

https://www.mql5.com/en/forum/173445

 

Codersguru,

Per quanto riguarda la parte MM del trading.

Partendo da un conto di 10.000$:

(capitale del conto * % di rischio)/ perdita maggiore = lotti da scambiare

(10.000* 10%)/ 50= 2 lotti

Questo supponendo che lo SL sia di 50pips.

Quindi il conto deve essere regolato ad ogni scambio con questa formula.

Spero che questo aiuti.

Ma prima di incorporare questa formula, per favore dimmi che tipo di

rapporto vincita/perdita e rapporto rischio/ricompensa ti aspetti per questo sistema.

Possiamo poi costruire una volta che lo sappiamo.

Di conseguenza possiamo regolare la percentuale di rischio al 10 o al 15%.

Anche la tua tipica perdita maggiore sarà uguale al tuo SL, dato che sarà il massimo che puoi perdere in un solo trade. La percentuale di rischio deve anche prendere in considerazione il massimo drawdown o le maggiori perdite consecutive in modo da poter superare il drawdown.

Spero che questo aiuti. Chiunque non sia d'accordo con questo MM è pregato di segnalarlo in modo da migliorare.

I risultati che otteniamo in un backtest di solito prendono solo un trade standard di 1 lotto per ogni trade. Quindi, se incorporiamo MM, la crescita del capitale viene moltiplicata per diverse volte. Questa è la magia di MM.

La maggior parte delle persone si concentra sulla ricerca dei migliori sistemi, ma il vero Santo Graal è la MM. Si può trasformare un sistema medio in un super sistema grazie al MM stesso.

Come avevo sottolineato nel mio post precedente, il seguente esempio lo renderà ovvio.

vittoria - 74%

Senza Money Management

Capitale iniziale - 20.000$

Patrimonio finale - 251.813$

Con MM

capitale iniziale - 30.000$

Patrimonio finale - 582.930.624 $$$$$$$$$$$$$$$

Esatto! Sono 5,82 milioni di dollari!

I valori sono teorici, tuttavia il messaggio è abbastanza chiaro.

 
dedywind:
@codersguru:

grazie per il grande sforzo...

Dopo aver allegato il tuo EA(https://www.mql5.com/en/forum/173468/page7) in 4pair eur/usd, gbp/usd, usd/chf, gbp/jpy.... tre coppie hanno immediatamente iniziato il commercio aperto (gbp/usd, usd/chf, gbp/jpy) e tutti hanno buon risultato....

Non so nulla di programmazione ... ma sulla base di questo consigliato:

Faccio un piccolo cambiamento nell'EA:

se(linea1>linea2)current_direction = 1; //su

se(linea1<linea2)direzione_corrente = 2; //giù

A

se(linea1>linea2)direzione_corrente = 2; //su

se(linea1<linea2)direzione_corrente = 1; //giù

Ieri, ho attaccato questo EA al conto demo TF30 di neuimex in quattro coppie.... e tutti hanno un buon risultato a....

Continuerò a testare questi EA per altre 2/3 settimane....

Hai invertito la direzione della croce, EMA CROSS funzionerà in entrambe le direzioni ma originariamente si basa sul prendere la direzione inversa del mercato.

 

Nuova versione

Ciao gente!

In primo luogo, voglio ringraziare tutti voi per le vostre azioni e i vostri utili commenti

In secondo luogo, ho aggiornato il consulente esperto EMA CROSS alla versione 2.

Spero che lo troviate utile!
 

Ho provato a fare il back per 1 e 2 codersguru ea, test su eur/usd, D1 it open .5 lot. Non so cosa ho cliccato, ho perso il risultato del test su forward demo acct per 1 settimana è su $# 1025 # . solo su eur/usa.

File:
2_1.gif  9 kb
 

Una domanda

Ciao codersguru e tutti i membri

Ho una domanda e sono un principiante nel forex.

Possiamo usare un EA offline o dobbiamo essere online per usare un EA?

 

Guru dei codificatori

Ho guardato velocemente il codice della vostra nuova versione e ho alcune domande sul codice.

La prima ha a che fare con questo blocco di codice qui sotto;

static int TimeFrame;

...

...

...

int init()

{

TimeFrame=Period();

return(0);

}

...

...

...

int Crossed (double line1 , double line2)

{

static int last_direction = 0;

static int current_direction = 0;

if(TimeFrame!=Period())

{

TimeFrame=Period();

return (0);

}

if(line1>line2)current_direction = 1; //up

if(line1<line2)current_direction = 2; //down

...

...

...

[/CODE]

What is the purpose of the TimeFrame Parameter in this content?

The second code block that is giving me some questions is the purpose of the function isNewSymbol?

[CODE]

bool isNewSumbol(string current_symbol)

{

//loop through all the opened order and compare the symbols

int total = OrdersTotal();

for(int cnt = 0 ; cnt < total ; cnt++)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

string selected_symbol = OrderSymbol();

if (current_symbol == selected_symbol)

return (False);

}

return (True);

}

...

...

...

total = OrdersTotal();

if(total < 1 || isNewSumbol(Symbol()))

{

if(isCrossed == 1)

...

...

...

So che sei molto occupato, ma potresti spiegare lo scopo di questi e perché sono necessari.

Grazie per il vostro tempo,

Il CockeyedCowboy

 

Blocchi di codice!

cockeyedcowboy:
Guru dei codificatori

Ho dato un'occhiata veloce al codice della vostra nuova versione e ho alcune domande sul codice.

La prima ha a che fare con questo blocco di codice qui sotto;

static int TimeFrame;

...

...

...

int init()

{

TimeFrame=Period();

return(0);

}

...

...

...

int Crossed (double line1 , double line2)

{

static int last_direction = 0;

static int current_direction = 0;

if(TimeFrame!=Period())

{

TimeFrame=Period();

return (0);

}

if(line1>line2)current_direction = 1; //up

if(line1<line2)current_direction = 2; //down

...

...

...

[/code]

What is the purpose of the TimeFrame Parameter in this content?

The second code block that is giving me some questions is the purpose of the function isNewSymbol?

[code]

bool isNewSumbol(string current_symbol)

{

//loop through all the opened order and compare the symbols

int total = OrdersTotal();

for(int cnt = 0 ; cnt < total ; cnt++)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

string selected_symbol = OrderSymbol();

if (current_symbol == selected_symbol)

return (False);

}

return (True);

}

...

...

...

total = OrdersTotal();

if(total < 1 || isNewSumbol(Symbol()))

{

if(isCrossed == 1)

...

...

...

So che siete molto occupati, ma potreste spiegare lo scopo di questi blocchi e perché sono necessari.

Grazie per il vostro tempo,

Il CockeyedCowboy

CockeyedCowboy,

Ho usato il primo blocco di codice per essere sicuro che il cambiamento del periodo del grafico non influenzerà il programma.

Per esempio: se hai attaccato l'expert advisor al grafico M30 e la linea Short EMA era sopra la linea Long EMA nel grafico M30, poi hai cliccato il pulsante D1 e hai cambiato il timeframe in giornaliero e sei stato sfortunato e la linea Short EMA nel grafico D1 era sotto la Long EMA in questo grafico. L'expert advisor lo considererà un incrocio e aprirà un trade. Ma con il codice di cui sopra gli do la possibilità di ricordare l'ultimo time frame e aspettare un altro tick.

Ho usato il secondo blocco di codice per controllare i trade attualmente aperti ed evitare che l'expert advisor faccia trading sulla stessa coppia due volte.

 

Grazie!

Audio:
Ho provato a fare il back per 1 e 2 codersguru ea, test su eur/usd, D1 it open .5 lot. Non so cosa ho cliccato, ho perso il test di risultato su forward demo acct per 1 settimana è su $# 1025 # . solo su eur/usa .

Audio,

Grazie mille , spero di vederti fare 1025 x Milioni in un conto reale troppo presto.