5 votos

Crear los propios datos diarios de OHLC

Dado que es posible descargar barras horarias, generalmente con una marca de tiempo UTC, de la mayoría de los brokers, se vuelve posible crear tus propias barras diarias. Estoy pensando en hacer esto y me gustaría escuchar opiniones sobre si es aconsejable o no. Específicamente, quiero tomar la marca de tiempo UTC, analizarla en horario de Londres y Nueva York teniendo en cuenta el horario de verano durante los meses de verano, y crear barras diarias que comiencen con la apertura de la sesión asiática y terminen con el cierre de la sesión de Nueva York, teniendo barras que van aproximadamente de 5pm a 5pm hora de Nueva York entre semana, y comenzando a las 10pm hora de Londres los domingos para la barra diaria del lunes.

0 votos

Si proporcionas una muestra de tus datos preparados, intentaré darte una solución funcional utilizando Plotly: plot.ly/python/ohlc-charts

1voto

Bevan Puntos 20976

He implementado algo similar a lo que deseas hacer. Cómo implementarlo depende en gran medida de lo que vayas a hacer con esos datos diarios OHLC y cuántos datos estás manejando.

Las implementaciones más viables que veo son las siguientes:

1. MS Excel

Si estás realizando algún análisis de hoja de cálculo u algo por el estilo y solo estás agregando estos datos una vez al día, puedes hacerlo fácilmente en MS Excel y probablemente sea la ruta más fácil y sin complicaciones para lograr tu objetivo. (no estoy completamente seguro de cómo tratar con las zonas horarias aquí)

2. Python pandas

Otra solución muy fácil de implementar es utilizar la biblioteca Python pandas (https://pandas.pydata.org/ - de la que soy un gran fan, por cierto), y utilizar sus funciones de agregación. Ya tiene la agregación 'OHLC' incorporada en ella (probablemente tendrás que ajustarla un poco para adaptarla a las zonas horarias - pero definitivamente es viable, Python tiene una biblioteca llamada 'pytz' que se ocupa de las zonas horarias).

La ventaja de utilizar la biblioteca pandas es que es súper rápida. Entonces, si estás tratando con mucha datos y MS Excel no es lo suficientemente eficiente, te sugiero esta ruta.

3. Codificación de propósito general

Esta fue en realidad la ruta que personalmente elegí, primero la implementé con pandas, pero como estaba realizando realmente muchas de esas agregaciones de 'OHLC' en transmisiones en vivo, el rendimiento no era muy bueno ya que siempre estaba reagregando todos los datos (quizás haya una mejor manera de implementar esto en pandas, pero no lo sé).

Así que para evitar reagregar los datos todo el tiempo, hice un código algo optimizado para agregar estos datos y lo construí exactamente adaptado a mis necesidades.

Esto requiere mucho más trabajo que otras soluciones, y solo lo recomendaría si realmente necesitas rendimiento Y si quieres trabajar con la agregación de 'OHLC' en tiempo real (actualizando la agregación OHLC para cada dato de tick, por ejemplo).

En cuanto a las zonas horarias, programé en Python y utilicé la biblioteca 'pytz'.

4. NinjaTrader

No sé qué haces con los datos OHLC, pero en caso de que los utilices con fines de visualización, te recomendaría que echaras un vistazo a NinjaTrader. Puedes hacer algunas agregaciones personalizadas allí.

0 votos

Mi pregunta se dirigía más hacia la ventaja informativa que podrían aportar tales barras en lugar de la codificación de la idea.

0 votos

+1 para pytz - excelente biblioteca para gestionar cualquier zona horaria

1voto

Phil Puntos 2076

BL: Utilice herramientas de código abierto, como Plotly: https://plot.ly/python/ohlc-charts/

Resumen: Creo que es importante separar la pregunta de la preparación de datos y trazado real. Diría que no es recomendable hacer todo el trabajo de trazado por su cuenta, a menos que solo esté interesado en la mecánica y el problema en sí mismo. Si ya ha preparado los datos, bibliotecas como Plotly se encargarán del resto por usted, utilizando también pandas: https://plot.ly/python/ohlc-charts/

Finanhelp.com

FinanHelp es una comunidad para personas con conocimientos de economía y finanzas, o quiere aprender. Puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X