Automatizar con Ninja

Foro dedicado a esta excelente herramienta de desarrollo e implementación de sistemas de trading
Responder
agtlgtar
Mensajes: 28
Registrado: 23 Jun 2016 13:23

Automatizar con Ninja

Mensaje por agtlgtar »

Estoy teniendo muchos problemas para automatizar mi estrategia con Ninja. Después de muchos esfuerzos, contactos y pruebas he conseguido escribirla y que funcione...aparentemente: Se producen entradas y salidas más o menos correctas (no siempre exactas) y de repente no entra (en un punto claro, igual que los anteriores, etc, etc). O sale mal, desobedeciendo las instrucciones de salida.
Ellos acaban respondiendo que es cuestión de depuración (hay fallos en órdenes que no admiten duda, pero si ellos lo dicen...). ¿Es la plataforma realmente fiable?¿Os han pasado estas cosas?
Vidmar
Mensajes: 231
Registrado: 06 Dic 2006 23:22
Ubicación: Tenerife

Re: Automatizar con Ninja

Mensaje por Vidmar »

Hola agtlgtar. Yo estoy en la misma situación que tu. Estoy intentando automatizar, pero a mi lo que me pasa es que las entradas las hace bien, pero luego las salida no las hace directamente. En simulado va bien y grafica todas las ordenes y todo perfecto. Pero al pasarlo a real, lo dicho, entra pero no sale. Estoy haciendo pruebas a ver si es problema del ninja o de mi broker.
Que proveedor de datos tienes?, entiendo que estas automatizando pero el sistema está andando en simulado, no en real.

En mi caso, en simulado todo bien, el problema es en real.
Avatar de Usuario
cls
Mensajes: 1336
Registrado: 24 May 2007 18:46
Contactar:

Re: Automatizar con Ninja

Mensaje por cls »

Pon en el Initialize TraceOrders = true para que en la ventana Output te saque el log del estado de todas las órdenes. Así podrás detectar si alguna orden es rechazada.

También puedes sobrescribir el método OnOrderUpdate y añadir un simple Print para crear tu propio Log y así monitorizar todos los cambios de estado de las órdenes; envío, aceptación, cancelación, filled, rechazo, etc.
De este modo podrás saber lo que le ocurre a cada orden en todo momento.

Un causa frecuente de rechazo es que el precio de la orden no esté ajustado al del mercado. Por ejemplo una limitada de compra por encima del precio corriente. Es una situación "errónea" y el bróker puede proceder de manera diferente al simulador. Puede aceptarla y enviarla a mercado, o directamente rechazarla. Depende de cómo funcione el bróker, lo que puede provocar que si el sistema lo usas simultáneamente en brókers diferentes, te puedes encontrar también con resultados diferentes para estos casos de error.

Como anécdota, un sistema que se basaba en entrada + bracket OCO para la salida. En simulado funcionaba perfectamente. Pero al ponerlo en real contra InterActive Brokers sólo hacía la primera orden. El problema estaba en que no se podía reutilizar el mismo texto para las etiquetas de las OCOs. Lo curioso es que con órdenes manuales sí valía. Podías etiquetar con el texto OCO que quisieras y una vez resuelto el trade, usar la misma etiqueta OCO para el siguiente trade. Pero en automático no. Un sinsentido pero era así.

Saludos
agtlgtar
Mensajes: 28
Registrado: 23 Jun 2016 13:23

Re: Automatizar con Ninja

Mensaje por agtlgtar »

Gracias a los dos. Estoy pasando datos de €$ que me he ido bajando desde extrernal data feed . Los reproduzco con market replay.
Lo que resumidamente hago es: Si Renko4 (R4) y R5 cortan hacia arriba su HMA25 y en R3 hay una vela roja y luego una verde comprar a Close[0] de la verde.
Y en una onda grande alzista entra. Luego sale. Se mantiene R4y5. Y cuando acaba el recorte (p.e. 1 vela roja) y se produce otra verde, puede entrar o no.
En output veo que detecta la compra entered internal place order, etc., pero como decía, a veces no entra. Hay más entradas (casi todas) con EnterLong(); que con EnterLongLimit(Close[0]);, pero con enterlong nunca sé a que precio voy a entrar.
Luego vendría el problema de las salidas.
Os agradezco vuestras respuestas. He de decir que a base de ensayo-error y algunas indicaciones de los NT he llegado aquí. Pero mis conocimientos son limitados y me veo a veces apurado para seguir vuestras explicaciones.
CLS ¿es cierto que haces formación o hay tutoriales tuyos?
Avatar de Usuario
Gator
Mensajes: 37
Registrado: 07 Sep 2006 18:08
Ubicación: Freedonia

Re: Automatizar con Ninja

Mensaje por Gator »

Hola:
Vaya por delante que no soy usuario de NT, pero.. has probado a lanzar tus compras contra el Ask y tus ventas contra el Bid en vez de contra el ultimo cierre? En MT4 si se puede, no se si se podra en Ninja.

Saludos

Avatar de Usuario
cls
Mensajes: 1336
Registrado: 24 May 2007 18:46
Contactar:

Re: Automatizar con Ninja

Mensaje por cls »

agtlgtar escribió: CLS ¿es cierto que haces formación o hay tutoriales tuyos?
Sí, doy cursos de programación para NinjaTrader. Si quieres envíame un privado y te informo.

Las EnterLong te entrarán todas porque son compras a mercado.
Las EnterLongLimit te entrarán a veces. En backtesting puedes establecer que te entren con que el precio las toque, o bien
que el precio tenga que superarlas (es como si en real estuvieran en el final de la cola de limitadas). Pero es un comportamiento esperado.

En cuanto a Renko es un tipo de barra totalmente desaconsejable para testear estrategias ya que las barras pueden no representar todos los precios realmente visitados. Lo que en backtesting provoca que no te salten stoplosses que en real sí hubieran saltado, por ejemplo. Usa barras Range mejor.

Saludos.
agtlgtar
Mensajes: 28
Registrado: 23 Jun 2016 13:23

Re: Automatizar con Ninja

Mensaje por agtlgtar »

Gracias Gator. En NT tbn se puede. Solo que con bid/ask tampoco sé el precio exacto de entrada y salida. Y lo veía arriesgado para estrategias cortas como alguna de las mías, próximas al escalping. Pero puede que tengas razón, si facilita la operativa...Gracias. A tener en cuenta.
Gracias tbn cls. Recuerdo que hice alguna prueba con barras de range y me quitaba menos ruído que renko. Pero igual todo lo demás son ventajas. Volveré a probar. Sobretodo si puedo hacer un backtest, que me permitiría testear muy rápido períodos largos.
Las pruebas de backtest no me han dado resultado: Testeaban muy pocas operaciones en relación con lo que operaban las estrategias en el gráfico. En NT me decían que en backtest solo entraba ohcl y que no podía salir como en real o market replay. ¿Puedo hacer backtest fiable de alguna forma?
Ahora me encuentro con esto escrito y no veo tu dirección privada. Lo voy a enviar para no perderlo y en cuanto te mande el mensaje te aviso.
agtlgtar
Mensajes: 28
Registrado: 23 Jun 2016 13:23

Re: Automatizar con Ninja

Mensaje por agtlgtar »

cls, no encuentro la forma de enviar un mensaje por privado ¿me puedes decir como?
Avatar de Usuario
X-Trader
Administrador
Mensajes: 12795
Registrado: 06 Sep 2004 10:18
Contactar:

Re: Automatizar con Ninja

Mensaje por X-Trader »

agtlgtar escribió:cls, no encuentro la forma de enviar un mensaje por privado ¿me puedes decir como?
Basta con que hagas click sobre su nombre de usuario y selecciones Responder por mensaje privado.

Saludos,
X-Trader
"Los sistemas de trading pueden funcionar en ciertas condiciones de mercado todo el tiempo, en todas las condiciones de mercado en algún momento del tiempo, pero nunca en todas las condiciones de mercado todo el tiempo."
Eplayan
Mensajes: 4
Registrado: 12 Mar 2018 17:21

Re: Automatizar con Ninja

Mensaje por Eplayan »

Yo también quisiera contactar con el usuario cls y no encuentro la manera de hacerlo!

Tengo una consulta de programación para NinjaTrader.

Un saludo.
Avatar de Usuario
cls
Mensajes: 1336
Registrado: 24 May 2007 18:46
Contactar:

Re: Automatizar con Ninja

Mensaje por cls »

Eplayan escribió: 29 Mar 2018 21:53Yo también quisiera contactar con el usuario cls y no encuentro la manera de hacerlo!

Tengo una consulta de programación para NinjaTrader.

Un saludo.

Hola Eplayan, puedes contactarme enviando un mensaje privado desde el foro como comenta X-Trader un post más arriba. Y si no, en la página http://www.supperia.com tienes un botón de Contacto arriba a la derecha.

Saludos
Eplayan
Mensajes: 4
Registrado: 12 Mar 2018 17:21

Re: Automatizar con Ninja

Mensaje por Eplayan »

Hola, lo he intentado pero no lo he sabido encontrar!!! Lo siento!

Te contacto por la web de supperia!

Muchas gracias, de antemano por tu atención.

Un saludo.
Si te ha gustado este hilo del Foro, ¡compártelo en redes!


Responder

Volver a “Ninja Trader”