10 puntos 3.mq4 - página 390

 
marcelcorzo:
¡POR FAVOR, PROGRAMADORES!

Necesitamos que cuando se abra la tercera operación, se cierre la primera, lo estoy intentando pero sigue cerrando todas las posiciones.

En realidad tenemos:

if (PreviousOpenOrders>OpenOrders)

{

for(cnt=OrdersTotal();cnt>=0;cnt--)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

mode=Tipo de orden();

if (OrderSymbol()==Symbol() && OrderMagicNumber() == Magic)

{

if (mode==OP_BUY) { OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),slippage,Blue); }

if (mode==OP_SELL) { OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),slippage,Red); }

return(0);

}

}

}

Estaba pensando en hacer esto

1. cambiar el número mágico de la primera operación cuando se abra la segunda, por ejemplo magicnumber+1

2. cuando se abra la tercera operación, cerrar la primera, con el número mágico+1 asignado.

¿Estoy en lo cierto?

¿o de qué otra forma puedo identificar la primera operación abierta para cerrarla después?

hmmm más explicaciones por favor... has dicho que quieres cerrar la primera operación, entonces ¿cómo se abre la segunda cuando se abre la tercera?

 

explicación

1. El primer comercio se abre, basado en el macd.

2. la segunda operación se abre cada "x" pips (pipstep)

3. si el tercero se abre después de 2x pips, el primero se cierra automáticamente, el segundo y el tercero permanecen abiertos.

4. de cuarto comercio abierto, el segundo se cierra, y así sucesivamente.

Porque en realidad (para el ejemplo) puede haber 4 operaciones abiertas, pero suponiendo que la cuarta obtenga beneficios, la primera y la segunda no tienen posibilidad de beneficio. En cambio, la última y el TP dependiente de la anterior, tienen posibilidad de ganancia.

En síntesis, en lugar de cerrar todas las operaciones perdedoras cuando la última obtenga beneficios, simplemente cierre la primera de las tres operaciones En ese caso siempre hay sólo dos operaciones abiertas al mismo tiempo.

Espero que me entiendas.

 

¿Qué te parece esto?

int CNT;

int Magic=1111;

for (CNT = OrdersTotal() - 1; CNT >= 0; CNT--) {

OrderSelect(CNT, SELECT_BY_POS, MODE_TRADES);

if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic) {

if (OrderType() == OP_BUY && Bid - OrderOpenPrice() > 27.0 * Point) {

OrderClose(OrderTicket(), OrderLots(), Bid, 3, Yellow);

}

if (OrderType() == OP_SELL && Ask - OrderOpenPrice() > 27.0 * Point)

OrderClose(OrderTicket(), OrderLots(), Ask, 3, Yellow);

}

}

 

Voy a hacer esos cambios, pero no entiendo por qué 27 pips?

Necesito hacer backtest porque el mercado ya está cerrado.

Bid - OrderOpenPrice() > 27.0 * Punto //¿Por qué?

 

No sé, simplemente escríbalo. ¡Éste es el stoploss!

incluso puedes ponerlo así:

int stoploss = 27;

el stoploss tiene que ser 2 veces mayor que el paso.

Así que si el paso de la apertura de la segunda posición es de 12 pips entonces el stop loss de la primera posición será de 24 ... así que cuando se abra la tercera posición que es después de otros 12 pips el stoploss se activará.

 

hola

Este EA es bueno si usted tiene bolsillos profundos. Probé este EA en la cuenta real en el pasado Aug-Sep con $ 4000 utilizando un lote micro (0.01 lotes) en ibfx. Después de aumentar mi cuenta en $ 6000 en una semana y media, al día siguiente se estrelló mi cuenta en $ 1500. Dejo de usar este EA después. Pero creo que este EA es bueno si usted tiene un gran depósito para manejar el aumento del número de lotes, es decir, al menos 15K depósito para el comercio de un micro lote.

Gracias

Joseph

 
antojoseph:
Este EA es bueno si usted tiene bolsillos profundos. Probé este EA en la cuenta real en el pasado Aug-Sep con $ 4000 utilizando un lote micro (0.01 lotes) en ibfx. Después de aumentar mi cuenta en $ 6000 en una semana y media, al día siguiente se estrelló mi cuenta en $ 1500. Dejo de usar este EA después. Pero creo que este EA es bueno si usted tiene un gran depósito para manejar el aumento del número de lotes, es decir, al menos 15K depósito para el comercio de un lote micro.

Gracias

Joseph

Eso es lo que rezo todo el tiempo.

 

He hecho los cambios para cerrar la primera de cada tres posiciones (estuve aprendiendo y programando todo este fin de semana), y... ¡¡¡es menos rentable!!! . Analizando el backtest, me he dado cuenta que de esta manera proteges un poco más la cuenta cuando hay tendencias continuas grandes, pero como es de vez en cuando, y el caso más común es abrir 2-3 operaciones seguidas, las pérdidas son mayores porque son muchas.

Creo que la mejor forma de usar 10point3 es con un solo par lento, como el EURGBP, en el que estoy usando el EA. 1M timeframe (realmente no me importa si empieza con la tendencia correcta o no, prefiero entrar más rápido en una operación) con estas dos opciones:

Bajo riesgo-- TP 100, pips 50, lotes 0.01, Sl 20, TS 45, maxtrades 8, multiplicador 1.5, orderstoProtect 3 o 4. Este último es una clave, así maxtrades, porque estos hacen un mayor o más corto drawdown. su configuración es una cuenta de $ 1000. Sólo EURGBP, tal vez USDCHF.

Riesgo medio: TP 40, pips 25, orderstoprotect 6.

Utiliza el indicador TSR para ver los rangos diarios y medios de cada par. Lo adjunto.

Archivos adjuntos:
 

Podría alguien por favor publicar algo de código para cerrar todas las posiciones en la apertura de una nueva barra.

Estoy buscando usar esto en un TF diario.

double high = iHigh(NULL,1440,1);

double low = iLow(NULL,1440,1);

double close = iClose(NULL,1440,1);

double P = (high+low+close)/3;

double SellRange=TradingRange*Punto;

double BuyRange=(TradingRange-(TradingRange*2))*Point;

if ((Open[0] > P)){myOrderType=2;}

if ((Open[0] < P)){myOrderType=1;}

Saludos

Beno

 
marcelcorzo:
He hecho los cambios para cerrar la primera de cada tres posiciones (estuve aprendiendo y programando todo este fin de semana), y... ¡¡¡es menos rentable!!! . Analizando el backtest, me imaginé que de esta manera se protege un poco más la cuenta cuando hay tendencias continuas grandes, pero como es de vez en cuando, y el caso más común es abrir 2-3 operaciones seguidas, las pérdidas son mayores porque son muchas.

Creo que la mejor manera de utilizar 10point3 es con un solo par lento, como el EURGBP, en el que estoy utilizando el EA. 1M timeframe (realmente no me importa si empieza con la tendencia correcta o no, prefiero entrar más rápido en una operación) con estas dos opciones:

Bajo riesgo-- TP 100, pips 50, lotes 0.01, Sl 20, TS 45, maxtrades 8, multiplicador 1.5, orderstoProtect 3 o 4. Este último es una clave, así maxtrades, porque estos hacen un mayor o más corto drawdown. su configuración es una cuenta de $ 1000. Sólo EURGBP, tal vez USDCHF.

Riesgo medio: TP 40, pips 25, ordertoprotect 6.

Utiliza el indicador TSR para ver los rangos diarios y medios de cada par. Te lo adjunto.

si no me equivoco, hace tiempo david también quiere cambiar el código.. 1 cerrado despues de la tercera orden abierta.. pero parece que no es bueno... tal vez podemos pensar en otra manera de mejorar este ea...hmmm think3 la otra manera es cambiar la orden...tal vez su ayuda... no puedo pensar en este ea ahora porque estoy trabajando en mi ea...fin de semana duro...hu..hu..

saludos,

MANSTIR

Razón de la queja: