How to Place Stop Loss below Low of Signal Bar

Responder
Avatar de Usuario
eryo
Mensajes: 663
Registrado: 17 Sep 2004 23:37
Ubicación: desubicado

How to Place Stop Loss below Low of Signal Bar

Mensaje por eryo »

Hola. Quiero poner un stop debajo de la barra de entrada. Alguien sería tan amable de explicarme paso a paso como hacerlo?

SetStopLoss("long",CalculationMode.Price,Low[0]-2*TickSize, false);

He intentado este código pero no funciona. (NT7)
gracias.
Par est fortuna labori
Potest quia posse videtur
Avatar de Usuario
Karachiento
Mensajes: 68
Registrado: 17 Ago 2018 23:03

Re: How to Place Stop Loss below Low of Signal Bar

Mensaje por Karachiento »

A simple vista, estas usando el low de la barra 0 para fijar es stop. Esa barra todavía no termino de formarse. Creo que el error esta ahi. Deberias usar la barra 1.

Si no es eso, no puedo ayudarte con el codigo por que no conozco NT7.
Saludos
Avatar de Usuario
cls
Mensajes: 1336
Registrado: 24 May 2007 18:46
Contactar:

Re: How to Place Stop Loss below Low of Signal Bar

Mensaje por cls »

Buenas. Si entras a mercado, justo después (o antes, da igual) del método EnterLong escribe ese mismo SetStopLoss. Si sólo lo pones en el Initialize, que supongo que es como lo estarías haciendo, no te va a funcionar.

Si entras con limitada la cosa se complica porque no sabes en qué barra se hará el filled. Tendrías que sobrescribir el método OnExecution y ahí hacer el cálculo del stoploss.

Al entrar con limitada no podrías usar Low[1] porque ya lo has superado y el Low[0] tampoco porque supuestamente sería el propio precio del filled. Tendrías que poner un stoploss de compromiso y cuando la barra del filled cierre, recalcular el stoploss a partir de su Low. Si la orden de entrada es muy grande y trabajas con barras de poco rango puede darse la casualidad de que tengas varios filleds parciales en diferentes barras, con lo que tendrías que promediar los Lows, o coger el mínimo, o lo que sea que decidas ... Bastante más complicado que si entras a mercado.

Con entradas en stop, problemas parecidos aunque menos. Aquí sí podrías usar el Low[1] para calcular el SetStopLoss dentro del OnExecution.

S2
Avatar de Usuario
eryo
Mensajes: 663
Registrado: 17 Sep 2004 23:37
Ubicación: desubicado

Re: How to Place Stop Loss below Low of Signal Bar

Mensaje por eryo »

Gracias por la respuestas pero no logro hacerlo ni con Low[1] ni Low[0]. Este es el código. Es desesperante :?

EnterLongStop((High[0] + TickSize*2),"long")
SetStopLoss("long", CalculationMode.Price,(Low[1]- 2*TickSize), false);

Me lanza el stops dos ticks por debajo pero de la barra [0] o de la barra [1] pero no consigo que lo haga desde la barra de entrada.
Par est fortuna labori
Potest quia posse videtur
Avatar de Usuario
cls
Mensajes: 1336
Registrado: 24 May 2007 18:46
Contactar:

Re: How to Place Stop Loss below Low of Signal Bar

Mensaje por cls »

Eryo, como te he comentado antes, eso te funcionará bien sólo para entradas a mercado.

Si el Low[1] vale 2630, le estás diciendo a Ninja que a partir de ahora todos los stoploss vayan a 2630. Ninja no presupone que el Low[1] que has puesto es el Low de la barra previa al filled de la entrada. Es el Low de la barra anterior a la que ordenas la nueva configuración de los stoplosses; en ese instante.

Para lo que quieres hacer no te queda otra que hacer los cálculos cuando te llegue el filled, en el OnExecution. Y ahí sí el Low[1] se referirá a la barra previa a la del filled.

Si no quieres sobrescribir el método OnExecution (es un poco avanzado), puedes pasar del SetStopLoss y colocar tú las órdenes de salida con ExitLong lo que sea.

Y si no te quieres complicar, y sólo entras una vez por posición, sin scale-in, chequea el Position.MarketPosition y cuando estés largo pon ahí el SetStopLoss. Y en vez de Low[1] usa BarsSinceEntryExecution (en NT8, en NT7 no sé cuál sería la equivalente).

S2

Avatar de Usuario
eryo
Mensajes: 663
Registrado: 17 Sep 2004 23:37
Ubicación: desubicado

Re: How to Place Stop Loss below Low of Signal Bar

Mensaje por eryo »

Muchas gracias por la aclaración cls. Voy a ponerme a ello a ver si lo consigo. Alucino con la capacidad que teneis algunas personas con la informatica.
Par est fortuna labori
Potest quia posse videtur
Si te ha gustado este hilo del Foro, ¡compártelo en redes!


Responder

Volver a “Estrategias”