ayuda con takeprofit y trailing stop

Foro dedicado a todo lo relacionado con la versión 4 de la plataforma de Metaquotes.
diefer
Mensajes: 10
Registrado: 08 Jul 2010 00:42

ayuda con takeprofit y trailing stop

Mensaje por diefer »

Alguien me puede ayudar a colocar un takeprofit y un traling stop a este EA ?

gracias

//+------------------------------------------------------------------+
//| SimpleEMA.mq4 |
//| Programando Forex |
//| http://www.programandoforex.com |
//+------------------------------------------------------------------+
#property copyright "Programando Forex"
#property link "http://www.programandoforex.com"

extern int LargaEMA = 20;
extern int CortaEMA = 5;
extern int Size = 1;

int start()
{
static datetime MarcaTiempo = 0;
static int ticket;
int señal;
datetime NuevaTiempo = Time[0];

// A cada nueva barra
if(MarcaTiempo != NuevaTiempo)
{
// Tomamos datos de las dos EMAs (Corta y Larga).
double emaLargaA = iMA(NULL,0,LargaEMA,0,1,4,3);
double emaLargaB = iMA(NULL,0,LargaEMA,0,1,4,1);
double emaCortaA = iMA(NULL,0,CortaEMA,0,1,4,3);
double emaCortaB = iMA(NULL,0,CortaEMA,0,1,4,1);

// Calculamos si se han cruzado
if(emaCortaA < emaLargaA && emaCortaB > emaLargaB)
señal = 0; // ema corta cruza de abajo a arriba.
else if(emaCortaA > emaLargaA && emaCortaB < emaLargaB)
señal = 1; // ema corta cruza de arriba a abajo.
else
señal = -1; // no hay cruce.

// Si no hay órden abierta y hay señal podemos operar.
if(OrdersTotal() == 0 && señal != -1)
{
if(señal == 0) // Señal 0 -> COMPRA
ticket = OrderSend(Symbol(),OP_BUY,Size,Ask,3,0,0,NULL,23,0,Green);
else if(señal == 1) // Señal 1 -> VENTA
ticket = OrderSend(Symbol(),OP_SELL,Size,Bid,3,0,0,NULL,23,0,Green);
}

// Si hay una orden abierta y hay señal en contra cerramos
if(OrdersTotal() != 0 && señal != -1)
{
// Seleccionamos la orden.
OrderSelect(ticket,SELECT_BY_TICKET);
//Comprobamos si la señal es contraria
if(OrderType() == 0 && señal == 1)
OrderClose(ticket,Size,Bid,3,Yellow); // Cerramos la compra.
if(OrderType() == 1 && señal == 0)
OrderClose(ticket,Size,Ask,3,Yellow); // Cerramos la venta.
}

MarcaTiempo = NuevaTiempo;
}


return(0);
}
//+------------------------------------------------------------------+
Responder

Volver a “Metatrader 4”