¡El Ninja grafica mal en tiempo real!

Foro dedicado a esta excelente herramienta de desarrollo e implementación de sistemas de trading
Responder
Avatar de Usuario
Jose
Mensajes: 805
Registrado: 22 Mar 2006 14:01

¡El Ninja grafica mal en tiempo real!

Mensaje por Jose »

Ayer tomé datos del ninja alimentado con IB para compararlos con los que da la TWS y el Visual Chart, y me llevé una desagradable sorpresa.

Apunté solamente el cierre de dos barras 30 minutos del dax y una del petróleo, en momentos de mucha volatilidad:

FDAX 15:30: Visual Chart 7037 TWS 7037 NT 7038,5

FDAX: 16:30: Visual Chart 7060 TWS 7059,5 NT 7057

CL 16:30: Visual Chart: 130,40 TWS: 130,60 NT: 131 ((¡¡ciento treintayuno!!))


Hoy el VChart ha corregido el cierre de las 16:30 del dax y lo ha puesto a 59,5, y el Ninja ha corregido todos los datos y los pone igual que la TWS.

Conclusión: parece que el ninja no recoge bien los datos de IB en tiempo real, por lo menos en momentos de alta volatilidad ¿alguien sabe si están trabajando para arreglarlo?

Yo estaba pensando en mudarme de Vchart a NT, pero si no arreglan esto no va a poder ser...
Avatar de Usuario
Tom
Mensajes: 2421
Registrado: 12 Feb 2005 10:23
Ubicación: Madrid

Mensaje por Tom »

Si que parece que el Ninja Trader se come algunos ticks.

Ayer sin ir más lejos se me hizo un objetivo por los pelos :D
Pero el Ninja no registró ese punto extremo.
En otras ocasiones me ha ocurrido con algún Stop :evil:

También es verdad que tengo pendiente de descargar e instalar la última actualización.
Pero no creo que resuelva ese problema que me parece que todos los programas de gráficos lo hacen :D
----- Para que tu y yo ganemos dinero no habrían creado un mercado. ------
AL-G
Mensajes: 189
Registrado: 24 Nov 2007 22:16

Mensaje por AL-G »

Yo creo que ticks se comen todos.

En los futuros en divisas que emite el CME Visual Chart "se come ticks" (la verdad es que no muchos uno de cada 10 o de cada 20) pero si que se come

Lo podeis comprobar porque el propio CME distribuye sus precios de manera gratuita en una utilidad llamada E-quivalents. Lo teneis en http://www.cme.com/trading/dta/real/equivalents.html

Como os digo es gratuita y en tiempo real. Os teneis que najar previamente un programa destinado a que no haya forma humana de capturar esa información (solo son imágenes por así dcirlo).

Pues bien si poneis el E-quivalents a funcionar junto con el VCH (simultaneamente) observad por un minuto y vereis como cada n ticks VCH se come uno sobre todo si hay algo de volatilidad

Lo bueno es que en VCH no son conscientes de ello. . . .
pai
Mensajes: 19
Registrado: 25 Ene 2007 19:34

Mensaje por pai »

Buenas,

El problema no es de NInja, es de IB que grafica datos por segundo, no ticks. Si en un segundo se da más de un cruce, que suele pasar con frecuencia, IB da solo el último cruce de ese segundo.

Para que Ninja u otro progrma grafique bien es necesario un proveedor de datos en ticks, como esignal, tradestation o cualquier otro compatible con Ninja, lo único malo es que hay que pagar!

Un saludo
djmax
Mensajes: 460
Registrado: 14 Abr 2007 01:04

Mensaje por djmax »

En el caso de ninja, se puede obtener tiempo real con zen-fire, y en este caso es gratuito.

Un saludo.

wave
Mensajes: 210
Registrado: 26 Nov 2007 23:21
Ubicación: Londres

Mensaje por wave »

Jose los datos de la TWS son en TR? si no es dificil comparar por lo que comenta pai y por ese motivo al cargar los datos de nuevo los ves bien.

Si ambos han sido en TR es que el NT tiene un problema o que la TWS no envia lo mismo que grafica. Habria que probar otro programa cogiendo los datos de IB.

Otra cosa puede ser el tema del horario y sincronizacion ya que si por algun motivo no esta sincronizado el reloj de tu ordenador las barras no seran iguales, si bien maximos y minimos deberian ser los mismos al igual que el precio actual.

Yo igual estoy viendo de pasarme a un broker de USA con zenfire, a ver si alguien sabe cuanto me puede costar la transferencia.

S2
djmax
Mensajes: 460
Registrado: 14 Abr 2007 01:04

Mensaje por djmax »

Todo y eso en cada ordenador los ticks son distintos....

En el visual o ninja, sea la fuente que sea de datos, en dos ordenadores distintos cada uno con el mismo programa, en diferente ubicacion, da un grafico de ticks distinto. Nose si eso es normal, o tendria que ir igual, pero eso influye a la hora de operar.

Un saludo.
Avatar de Usuario
Jose
Mensajes: 805
Registrado: 22 Mar 2006 14:01

Mensaje por Jose »

pai escribió:El problema no es de NInja, es de IB que grafica datos por segundo, no ticks. Si en un segundo se da más de un cruce, que suele pasar con frecuencia, IB da solo el último cruce de ese segundo.
a mí me valdría con que el ninja graficara igual que la tws en tiempo real, aunque sea por segundos, pero es que hay diferencias, que se corrigen a posteriori :evil:
Avatar de Usuario
Jose
Mensajes: 805
Registrado: 22 Mar 2006 14:01

Mensaje por Jose »

wave escribió:Jose los datos de la TWS son en TR? si no es dificil comparar por lo que comenta pai y por ese motivo al cargar los datos de nuevo los ves bien.

Si ambos han sido en TR es que el NT tiene un problema o que la TWS no envia lo mismo que grafica. Habria que probar otro programa cogiendo los datos de IB.

Otra cosa puede ser el tema del horario y sincronizacion ya que si por algun motivo no esta sincronizado el reloj de tu ordenador las barras no seran iguales, si bien maximos y minimos deberian ser los mismos al igual que el precio actual.
sí, los datos de la tws son en tiempo real.

¿El cierre de barras en el ninja depende del reloj de mi ordenador? Eso no lo había pensado. Como en la tws y el vchart dependen del horario del mercado y les da igual el reloj de mi ordenador, había dado por hecho que en el ninja era igual... :?
Avatar de Usuario
X-Trader
Administrador
Mensajes: 12810
Registrado: 06 Sep 2004 10:18
Contactar:

Mensaje por X-Trader »

Jose escribió:
wave escribió:Jose los datos de la TWS son en TR? si no es dificil comparar por lo que comenta pai y por ese motivo al cargar los datos de nuevo los ves bien.

Si ambos han sido en TR es que el NT tiene un problema o que la TWS no envia lo mismo que grafica. Habria que probar otro programa cogiendo los datos de IB.

Otra cosa puede ser el tema del horario y sincronizacion ya que si por algun motivo no esta sincronizado el reloj de tu ordenador las barras no seran iguales, si bien maximos y minimos deberian ser los mismos al igual que el precio actual.
sí, los datos de la tws son en tiempo real.

¿El cierre de barras en el ninja depende del reloj de mi ordenador? Eso no lo había pensado. Como en la tws y el vchart dependen del horario del mercado y les da igual el reloj de mi ordenador, había dado por hecho que en el ninja era igual... :?
Ese problema lo sufrí yo también cuando trasteé con el JSystemTrader y la solución es pillarse un sincronizador del reloj del ordenador con algún reloj atómico para que no se nos descuadre la hora (hay varios por Internet).

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."
wave
Mensajes: 210
Registrado: 26 Nov 2007 23:21
Ubicación: Londres

Mensaje por wave »

Jose,

mirate este hilo donde se disctute con detalle el problema:

http://www.elitetrader.com/vb/showthrea ... genumber=1

Mira lo que pone AMI sobre IB en su pagina

NOTES ON IB API LIMITATIONS:

1. Backfill is available for REAL IB accounts only (not on demo)

2. Open price is NOT provided by IB. For that reason Open field is empty in real time quote window

3. The data from IB does not include a timestamp on the trades. The current system time is used to timestamp each tick.

4. IB TWS streaming data are NOT tick-by-tick, but rather 0.2-0.3 second snapshots, read this for details: http://www.interactivebrokers.com/cgi-b ... 37364.html



En resumen el problema es el siguiente, IB RT data no tiene timestamp osea que no envia en sus datos la hora y el segundo que se genera por lo que el software el que sea coge la hora de tu ordenador para asignarle el timestamp. Si lo envia en datos historicos al hacer un backfill y por eso la grafica se actualiza ya que sobrescribe el timestamp.

Algunos proveedores si envian un timestamp en TR, como ser eSignal, ZenFire y IQfeed. Esto logicamente usa mas ancho de banda y por eso solo algunos lo dan, los mas baratos logicamente no los dan.

Por su TWS parece coger la hora del servidor de ellos, prueba cambiar lahora de tu ordenador y reiniciar la TWS y ver la hora que ponde debajo. Al haber horas distintas y no tener timestamp tienes diferencias entre Ninja y IB

VC creo que tiene timestamp ya que coge datos de una empresa de eSignal.

En resumen cualquier sofware que coja datos de IB tendra este problema, para tener datos buenos y sin problemas de diferencia de segundos y por lo tanto corte de las barras tienes que contratar un proveedor que de timestamp en TR.

S2
djmax
Mensajes: 460
Registrado: 14 Abr 2007 01:04

Mensaje por djmax »

Gracias por la aclaracion wave, no tenia conocimiento sobre ese tema en IB.

Un saludo.
Avatar de Usuario
Jose
Mensajes: 805
Registrado: 22 Mar 2006 14:01

Mensaje por Jose »

muchas gracias, X y Wave. Lo importante es que me quedo tranquilo sabiendo que NT sigue siendo una alternativa válida para sustituir al Vchart.

De momento probaré con un sincronizador de reloj :D
Si te ha gustado este hilo del Foro, ¡compártelo en redes!


Responder

Volver a “Ninja Trader”