Discusión sobre el artículo "Asesor Experto Multiplataforma: Stops Personalizados, Ausencia de Pérdidas y Trailing"

 

Artículo publicado Asesor Experto Multiplataforma: Stops Personalizados, Ausencia de Pérdidas y Trailing:

En el artículo se discute la colocación de niveles stop personalizados en el asesor multiplataforma. Asimiso, se describe un método estrechamente relacionado con ellos, que ayuda a definir los cambios de los niveles stop a lo largo del tiempo.

Si el precio está por encima del salto inicial de trailing, entonces es muy probable que el nivel stop salga de los marcos de este salto incial. En el caso contrario, usará este punto inicial de trailing como valor para el nuevo nivel stop para la pasada actual. Si el nivel stop aún no ha salido de los límites del precio de activación, sencillamente seguirá a la parte restante del cálculo de la ausencia de pérdidas (el precio de desactivación no se aplica a la ausencia de pérdidas).


Trailing-stop

Autor: Enrico Lambino

 

Hola Enrico. Tu gran trabajo continúa. No te canses, sigue con el gran trabajo.

 

Hola,

Parece que no es posible establecer un volumen específico (porcentaje) para trailing stop?

 

¿Cómo puedo utilizar 2 o más TS?

Este es mi código:

//--- trailing stop
   CTrails *trails=new CTrails();
   //--- establecer el punto de equilibrio
   CTrail *trail_be=new CTrail();
   trail_be.Set(BELevel,BEOpenPriceDist,0);   
   trails.Add(trail_be);
   //--- fijar el trailing stop
   CTrail *trail=new CTrail();
   trail.Set(trail_value,trail_start,trail_step);
   trails.Add(trail);
   //--- 
   main.Add(trails);

Breakeven no funcionan en este caso. Si quito el trailing stop (objeto trail) breakeven funciona bien.

 
mbjen:

Hola,

Parece que no es posible establecer un volumen específico (porcentaje) para trailing stop?

Sí, no es posible. CTrail y CTrails son sólo para modificar el nivel de stop. Para el volumen, es necesario establecer en CStop.
mbjen:

¿Cómo puedo utilizar 2 o más TS?

Este es mi código:

Breakeven no funcionan en este caso. Si quito el trailing stop (objeto trail) el breakeven funciona bien.

Eso dependería de la activación y la distancia que establezca para los dos (breakeven y trail). Pero es probable que el trailing se haya activado primero antes que el breakeven. El breakeven ya no se aplicará si el nivel de stop ya está por encima del precio de breakeven que ha establecido.
 
Enrico Lambino:
Sí, no es posible. CTrail y CTrails sólo sirven para modificar el nivel de stop. Para el volumen, es necesario establecerlo en CStop.Eso dependería de la activación y la distancia que se establece para los dos (breakeven y trail). Pero es probable que el trailing se haya activado primero antes que el breakeven. Breakeven ya no se aplicará si el nivel de parada ya está por encima del precio de equilibrio que ha establecido.
Por debajo de la configuración que utilizo. Breakeven no funciona. Como yo lo entiendo segundo rastro debe ser activado en la distancia 500, ¿verdad? Entonces el breakeven debe ser activado antes. ¿Por qué no funciona entonces?
   //--- trailing stop
   CTrails *trails=new CTrails();
   //--- establecer el punto de equilibrio
   CTrail *trail_be=new CTrail();
   //trail_be.Set(BELevel,BEOpenPriceDist,0); 
   trail_be.Set(230,250,0);   
   trails.Add(trail_be);
   //--- fijar el trailing stop
   CTrail *trail=new CTrail();
   //trail.Set(valor_trayecto,inicio_trayecto,paso_trayecto);
   trail.Set(200,500,10);
   trails.Add(trail);
   //--- 
   main.Add(trails);
 
//--- trailing stop
   CTrails *trails=new CTrails();
   //--- establecer el punto de equilibrio
   CTrail *trail_be=new CTrail();
   //trail_be.Set(BELevel,BEOpenPriceDist,0); 
   trail_be.Set(230,250,0);   
   trails.Add(trail_be);
   //--- fijar el trailing stop
   CTrail *trail=new CTrail();
   //trail.Set(valor_trayecto,inicio_trayecto,paso_trayecto);
   trail.Set(400,500,10);
   trails.Add(trail);
   //--- 
   main.Add(trails);

Tampoco funcionan.

 
mbjen:

Tampoco funcionan.

Intente reducir su objetivo de activación de breakeven/trailing. El hecho de que haya fijado un objetivo de activación no significa que el mercado esté obligado a alcanzarlo.

 
Enrico Lambino:

Intente reducir su objetivo de activación de breakeven/trailing. El hecho de que usted haya fijado un breakeven o trailing no significa que el mercado esté obligado a alcanzarlo.


Lo estoy comprobando en el mismo periodo histórico de mercado en backtest. Si activo tanto el TS (trailing stop normal) como el BE sólo funciona el TS y el BE no funciona (no veo la línea de stop). Si desactivo TS BE funciona bien. Pruebo en backtest y compruebo las líneas de stop.

 
mbjen:

Lo estoy comprobando en el mismo periodo histórico de mercado en backtest. Si activo tanto el TS (trailing stop normal) como el BE sólo funciona el TS y el BE no funciona (no veo la línea de stop). Si desactivo TS BE funciona bien. Hago pruebas en backtest y compruebo las líneas de stop.

¿Cual es el valor de tu takeprofit? ¿Es igual o mayor que el precio de activación (en puntos) para BE?
 
mbjen:

Tampoco funcionan.

Tu primer código activa el breakeven, no el trailingstop. Si hubiera alguna otra modificación del SL, sería el takeprofit. Pero si tu TP es 500 puntos, el trailing no se activaría en absoluto a 500 puntos, puesto que la operación ya ha salido del mercado en ese punto.

Su segundo código utiliza trailingstop, pero no breakeven. Porque incluso antes de que se pueda aplicar el breakeven, el SL ya se ha movido por encima del precio de breakeven.