Ema Cross! - pagina 74

 

ciao, aiutare l'aiuto può fare un paio di croci 4 EMA

Non vedo parlare molto bene, aiuto attraversa questi 4 EMA per il mio EA

5

13

21

80

Entrare nel commercio COMPRARE quando:

EMA 5 incrocia sopra l'EMA 13 e l'EMA 21

Sia l'EMA 13 che l'EMA 21 sono sopra l'EMA 80

Entrare in trade SELL quando:

EMA 5 incrocia sotto l'EMA 13 e l'EMA 21

Sia l'EMA 13 che l'EMA 21 sono sotto l'EMA 80

Grazie

 

Non vedo parlare molto bene l'inglese

Scusa ..............

 

Oh caro

Penso che sia ok, ma dobbiamo avere un grande margine.

 
ycontroller:
Non vedo parlare molto bene, aiuta a incrociare queste 4 EMA per il mio EA

5

13

21

80

Entrare nel trade BUY quando:

EMA 5 incrocia sopra l'EMA 13 e l'EMA 21

Sia l'EMA 13 che l'EMA 21 sono sopra l'EMA 80

Entrare in trade SELL quando:

EMA 5 incrocia sotto l'EMA 13 e l'EMA 21

Sia l'EMA 13 che l'EMA 21 sono sotto l'EMA 80

Grazie

Dai un'occhiata qui http://sufx.core.t3-ism.net/ExpertAdvisorBuilder/ e sono sicuro che sarai in grado di costruire il tuo EA.

Buona fortuna!

 
vincethebeast:
Dai un'occhiata qui http://sufx.core.t3-ism.net/ExpertAdvisorBuilder/ e sono sicuro che sarai in grado di costruire il tuo EA. Buona fortuna!

Fantastico, grazie mille Come funziona la sintassi di acquisto e vendita?

Diciamo che scelgo l'indicatore personalizzato e voglio usare un indicatore a barre per comprare e vendere quando la barra cambia colore?

Ho provato a mettere il nome dell'indicatore e il parametro left > right ma non apre una compravendita

 
 

ciao,

per favore, qualcuno può aggiungere MM a questa versione di ema cross?

grazie

//+------------------------------------------------------------------+

//| EMA_CROSS.mq4 |

//| Codificatori Guru ||

//| Forex TSD| Indicatori Metatrader e Consulenti Esperti ||

//+------------------------------------------------------------------+

//+------------------------------------------------------------------+

//| TODO: Aggiungere la routine di gestione del denaro |

//+------------------------------------------------------------------+

#proprietà copyright "Coders Guru"

#property link "https://www.forex-tsd.com"

//---- parametri di ingresso

extern double TakeProfit=110;

extern double StopLoss=100;;

extern double TrailingStop=30;

extern int ShortEma = 1;

extern int LongEma = 13;

extern bool UseStopLoss = false;

extern double Lots=1;

//+------------------------------------------------------------------+

//| funzione di inizializzazione esperto |

//+------------------------------------------------------------------+

int init()

{

//----

//----

return(0);

}

//+------------------------------------------------------------------+

//| funzione di deinizializzazione esperto |

//+------------------------------------------------------------------+

int deinit()

{

//----

//----

return(0);

}

bool isNewSumbol(string current_symbol)

{

//ciclo attraverso tutti gli ordini aperti e confronto dei simboli

int total = OrdersTotal();

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

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

//Print("OrderSymbol = " + OrderSymbol() + ": Symbol = " + current_symbol);

stringa selected_symbol = OrderSymbol();

se (current_symbol == selected_symbol)

ritorna (Falso);

}

return (True);

}

int Crossed (doppia linea1 , doppia linea2)

{

static int last_direction = 0;

static int current_direction = 0;

//Non funziona nel primo caricamento, aspetta il primo incrocio!

static bool first_time = true;

if(first_time == true)

{

first_time = false;

return (0);

}

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

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

if(last_direction == 0) //primo utilizzo

{

last_direction = current_direction;

return(0);

}

if(current_direction != last_direction) //cambiamento

{

last_direction = current_direction

return (last_direction);

}

else

{

return (0); //non è cambiato

}

}

//+------------------------------------------------------------------+

//| funzione di avvio esperto |

//+------------------------------------------------------------------+

int start()

{

//----

int cnt, ticket, totale

doppio SEma, LEma;

se(Bars<100)

{

Stampa("barre inferiori a 100");

return(0);

}

se(TakeProfit<10)

{

Print("TakeProfit inferiore a 10");

return(0); // controlla TakeProfit

}

SEma = iMA(NULL,0,ShortEma,0,MODE_EMA,PRICE_CLOSE,0);

LEma = iMA(NULL,0,LongEma,0,MODE_EMA,PRICE_CLOSE,0);

static int isCrossed = 0;

isCrossed = Crossed (LEma,SEma);

totale = OrdiniTotali();

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

{

se(isCrossed == 1 )

{

if(UseStopLoss)

ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-StopLoss*Point,Ask+TakeProfit*Point, "EMA_CROSS",12345,0,Green);

altrimenti

ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,Ask+TakeProfit*Point, "EMA_CROSS",12345,0,Verde);

se(biglietto>0)

{

if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("Ordine BUY aperto : ",OrderOpenPrice());

}

else Print("Errore nell'apertura dell'ordine BUY: ",GetLastError());

return(0);

}

if(isCrossed == 2)

{

if(UseStopLoss)

ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+StopLoss*Point,Bid-TakeProfit*Point, "EMA_CROSS",12345,0,Red);

altrimenti

ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,0,Bid-TakeProfit*Point, "EMA_CROSS",12345,0,Red);

se(ticket>0)

{

if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("Ordine SELL aperto : ",OrderOpenPrice());

}

else Print("Errore nell'apertura dell'ordine SELL: ",GetLastError());

return(0);

}

return(0);

}

for(cnt=0;cnt<totale;cnt++)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

//OrderPrint();

if(OrderType()<=OP_SELL && OrderSymbol()==Symbol())

{

if(OrderType()==OP_BUY) // la posizione lunga è aperta

{

/*

// deve essere chiusa?

if(isCrossed == 2)

{

OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // chiude la posizione

return(0); // uscire

}*/

// controlla il trailing stop

se(TrailingStop>0)

{

if(Bid-OrderOpenPrice()>Point*TrailingStop)

{

if(OrderStopLoss()<Bid-Point*TrailingStop)

{

OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,Green);

return(0);

}

}

}

}

else // passa alla posizione short

{

/*

// deve essere chiuso?

if(isCrossed == 1)

{

OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // chiudere la posizione

return(0); // uscire

}*/

// controlla il trailing stop

se(TrailingStop>0)

{

if((OrderOpenPrice()-Ask)>(Point*TrailingStop))

{

if((OrderStopLoss()>(Ask+Point*TrailingStop)) || (OrderStopLoss()==0))

{

OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(),0,Red);

return(0);

}

}

}

}

}

}

return(0);

}

//+------------------------------------------------------------------+

 
codersguru:
Ciao gente!

Qualcuno potrebbe dirmi cosa ne pensa di questo semplice EA?

Funziona bene in metatrader back tester .

Nota: Il test posteriore ottimizzato per i risultati di massima precisione.

Ciao Codersguru,

Questo forum è fantastico! Posso sapere se EMA_CROSS.mq4 è l'ultima versione aggiornata

che possiamo testare?

grazie

 
 

Auto robot

HEllo amici, voglio tutti voi per aiutarmi, qualcuno può inviarmi il miglior ROBOT AUTO disponibile con uno qualsiasi di voi tutti bez ne ho bisogno bez ho perso un sacco di soldi e bisogno di recuperarlo e non sono in grado di trovare un buon ROBOT AUTO per il forex trading... se qualcuno può aiutarmi a farlo. mail me si EA a bhavsar.y@gmail.com