¡Ema Cross! - página 74

 

hola, ayudar a la ayuda puede hacer un par de cruces 4 EMA

No veo hablar muy bien, ayuda cruces estos 4 EMA para mi EA

5

13

21

80

Entrar en el comercio de compra cuando:

La EMA 5 cruza por encima de la EMA 13 y la EMA 21

Tanto la EMA 13 como la EMA 21 están por encima de la EMA 80

Introduzca una operación de VENTA cuando:

La EMA 5 cruza por debajo de la EMA 13 y la EMA 21

Tanto la EMA 13 como la EMA 21 están por debajo de la EMA 80

Gracias

 

No veo hablar muy bien el inglés

Lo siento ..............

 

Oh, Dios.

Creo. Está bien, pero debemos tener un gran margen.

 
ycontroller:
No veo hablar muy bien, ayudar a los cruces de estas 4 EMA para mi EA

5

13

21

80

Entre en la operación de COMPRA cuando:

La EMA 5 cruza por encima de la EMA 13 y la EMA 21

Tanto la EMA 13 como la EMA 21 están por encima de la EMA 80

Introduzca una operación de VENTA cuando:

La EMA 5 cruza por debajo de la EMA 13 y la EMA 21

Tanto la EMA 13 como la EMA 21 están por debajo de la EMA 80

Gracias

Echa un vistazo aquí http://sufx.core.t3-ism.net/ExpertAdvisorBuilder/ y estoy seguro de que serás capaz de construir tu propio EA.

¡Buena suerte!

 
vincethebeast:
Echa un vistazo aquí http://sufx.core.t3-ism.net/ExpertAdvisorBuilder/ y estoy seguro de que serás capaz de construir tu propio EA. ¡Buena suerte!

Eso es genial, muchas gracias ¿Cómo funciona la sintaxis de compra y venta?

Digamos que elijo un indicador personalizado y quiero usar un indicador de barra para comprar y vender cuando la barra cambia de color.

Intenté poner el nombre del indicador y el parámetro izquierda > derecha pero no abre una compra o venta

 
 

Hola,

por favor, ¿alguien puede añadir MM a esta versión de ema cross?

gracias

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

//| EMA_CROSS.mq4 |||||||||||

//| Gurú de los codificadores |||| Forex TSD| Indicadores de Metatrader y Asesores Expertos

//| Forex TSD| Metatrader Indicadores y Asesores Expertos ||||Disfrutar de la información

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

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

//| TODO: Añadir rutina de gestión de dinero

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

#property copyright "Coders Guru"

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

//---- parámetros de entrada

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;

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

//| función de inicialización experta ||.

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

int init()

{

//----

//----

return(0);

}

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

//| función de desinicialización experta ||

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

int deinit()

{

//----

//----

return(0);

}

bool isNewSumbol(string current_symbol)

{

//recorrer todos los pedidos abiertos y comparar los símbolos

int total = OrdersTotal();

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

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

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

string selected_symbol = OrderSymbol();

if (current_symbol == selected_symbol)

return (False);

}

return (True);

}

int Cruzado (doble línea1 , doble línea2)

{

static int última_dirección = 0

static int dirección_actual = 0;

//No funciona en la primera carga, ¡espera al primer cruce!

static bool first_time = true;

if(first_time == true)

{

first_time = false

return (0);

}

if(línea1>línea2)dirección_actual = 1; //arriba

if(línea1<línea2)dirección_actual = 2; //abajo

if(última_dirección == 0) //primer uso

{

última_dirección = dirección_actual;

return(0);

}

if(dirección_actual != última_dirección) //cambio

{

última_dirección = dirección_actual;

return (última_dirección);

}

else

{

return (0); //no ha cambiado

}

}

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

//| función de inicio experto ||

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

int inicio()

{

//----

int cnt, ticket, total

double SEma, LEma;

if(Bars<100)

{

Print("barras inferiores a 100");

return(0);

}

if(TakeProfit<10)

{

Print("TakeProfit menos de 10");

return(0); // comprobar 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);

total = OrdersTotal();

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

{

if(isCrossed == 1 )

{

if(UseStopLoss)

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

si no

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

if(ticket>0)

{

if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("Orden de COMPRA abierta : ",OrderOpenPrice());

}

else Print("Error al abrir la orden de COMPRA : ",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);

si no

ticket=Enviar orden(Símbolo(),OP_SELL,Lotes,Oferta,3,0,Oferta-Toma de beneficios*Punto, "EMA_CROSS",12345,0,Rojo);

if(ticket>0)

{

if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("Orden de venta abierta : ",OrderOpenPrice());

}

else Print("Error al abrir la orden de VENTA : ",GetLastError());

return(0);

}

return(0);

}

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

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

//OrderPrint();

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

{

if(OrderType()==OP_BUY) // se abre una posición larga

{

/*

// ¿se debe cerrar?

if(isCrossed == 2)

{

OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // cerrar posición

return(0); // salir

}*/

// comprobar el trailing stop

if(TrailingStop>0)

{

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

{

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

{

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

return(0);

}

}

}

}

else // ir a la posición corta

{

/*

// ¿se debe cerrar?

if(isCrossed == 1)

{

OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // cerrar posición

return(0); // salir

}*/

// comprobar el trailing stop

if(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:
Hola amigos,

¿Podría alguien decirme qué opina de este sencillo EA?

Funciona bien en metatrader back tester .

Nota: La prueba de espalda optimizado para los resultados de la máxima precisión.

Hola Codersguru,

¡Este foro es grande! ¿Puedo saber es EMA_CROSS.mq4 la última versión actualizada

que podemos probar?

gracias

 
 

Auto robot

HEllo amigos, quiero que todos me ayuden, puede alguien enviarme el mejor AUTO ROBOT disponible con cualquiera de todos ustedes bez lo necesito bez he perdido mucho dinero y necesito recuperarlo y no soy capaz de encontrar un buen AUTO ROBOT para el comercio de divisas.. si alguien puede ayudarme a hacerlo.. enviarme su EA a bhavsar.y@gmail.com

Razón de la queja: