6 votos

Alternativas al backtester de Zipline / Alternativas a los datos de futuros de Quandl

Tengo la intención de establecer un sistema completamente automatizado para el comercio de acciones y futuros. Como preparación para este proyecto, trabajé a través de un par de libros sobre el tema, por ejemplo, "Trading Evolved" de Andreas F. Clenow. En dicho libro, Andreas utiliza la biblioteca de Python Zipline para probar estrategias comerciales, mientras que los datos tanto de acciones como de futuros provienen de Quandl. Mientras trabajaba en el libro, hice un par de observaciones que podrían influir en mi elección del motor de prueba posterior, así como la fuente de datos financieros y espero obtener algunos consejos aquí.

En primer lugar, descubrí que la biblioteca de trading algorítmico Zipline ya no se mantiene (aunque funcionó perfectamente para ejecutar todo el código de muestra relacionado con acciones). Por lo tanto, me gustaría saber si existen alternativas a Zipline, que sean recomendables y tengan la misma (o incluso superior) funcionalidad en comparación con Zipline?

Además, al trabajar en el código de muestra de dicho libro, no pude ejecutar estrategias comerciales relacionadas con futuros. La razón es que no pude obtener datos históricos de futuros de Quandl (que, sin embargo, funcionó perfectamente para datos históricos de acciones). Por lo tanto, me pregunto si alguien tiene pistas de cómo obtener datos históricos de futuros de Quandl (ya que debería funcionar según el libro) y/o qué fuentes alternativas de datos históricos de futuros existen y son recomendables.

Desde ya, muchas gracias.

0 votos

Una cálida bienvenida a Quant.SE: ¡por favor, vea mi respuesta abajo!

2voto

smiley Puntos 26

QuantRocket soporta backtesting y trading en vivo con Zipline:

https://www.quantrocket.com/zipline/

QuantRocket mantiene su propia versión de Zipline y por lo tanto no se ve afectado por el cierre de Quantopian, el mantenendor original de Zipline. Se incluyen datos históricos de acciones de fin de día y de 1 minuto, y puedes realizar backtests y operar estrategias de futuros conectándote a una cuenta de Interactive Brokers para obtener datos de futuros.

Descargo de responsabilidad: Estoy afiliado con QuantRocket.

1 votos

Gracias, Brian. He visto partes del video introductorio. ¿Cuál sería el beneficio adicional de usar QuantRocket en lugar de simplemente implementar estrategias de trading utilizando los paquetes de Python zipline, pandas, numpy y pyfolio en combinación con la obtención de datos de Quandl?

0 votos

Al principio, pensé que Quantrocket era una bendición pero me encontré con problemas. Desafortunadamente, el soporte es parte del paquete de pago.

0 votos

@AnatolyAlekseev He suavizado bastante tu comentario. Si tienes problemas con QuantRocket, ponte en contacto con ellos directamente.

2voto

penti Puntos 93

En lo que respecta al motor de backtesting, recomendaría R, especialmente con los paquetes quantmod y PerformanceAnalytics.

Escribí una publicación en mi blog que te ayudará a comenzar proporcionando una plantilla simple paso a paso:

  1. Cargar bibliotecas y datos
  2. Crear tu indicador
  3. Usar el indicador para crear la curva de capital
  4. Evaluación del rendimiento de la estrategia

Puedes encontrar la publicación aquí: Backtest Trading Strategies Like a Real Quant

2 votos

Gracias por tu respuesta. Tu blog se ve muy interesante. No estoy familiarizado con los paquetes R quantmod y PerformanceAnalytics. Después de echar un vistazo rápido, tengo la impresión de que la combinación de los paquetes Python numpy, pandas, pyfolio, zipline deberían proporcionar la misma funcionalidad (podría estar equivocado). No obstante, siempre es bueno tener opciones alternativas disponibles. En caso de que me encuentre con problemas en ciertos temas, por ejemplo, el cálculo futuro, podría considerar cambiar a R. Todo lo mejor.

1voto

Azzy Puntos 11

Hay dos bifurcaciones de Zipline que vale la pena revisar:

No tengo afiliación con ninguna de las dos, pero personalmente me gusta zipline-reloaded más, porque se ejecuta en Python 3.9, mientras que zipline-trader solo recientemente agregó soporte para Python 3.6. Sin embargo, zipline-trader admite el trading en vivo con Alpaca o IB, así que deberías echar un vistazo a estos corredores para ver qué ofrecen en términos del trading futuro y cuánto cuesta.

0voto

PReinie Puntos 1

Para los backtesters, recomendaría quantconnect o backtrader

https://www.quantconnect.com/ https://www.backtrader.com/

Para fuentes de datos...

https://iexcloud.io/ https://polygon.io/

Todo lo mejor, Brett

0 votos

Gracias, Brett. Investigaré más a fondo estas opciones.

1 votos

QuantConnect es bastante similar a Zipline ya que es un backtester basado en eventos. La razón por la que personalmente no me gusta es porque es muy lento, probablemente debido a que el motor está escrito en C#, por lo que cuando ejecuto mis estrategias codificadas en Python todas las llamadas tienen que ser traducidas a C# bajo el capó.

0voto

ebattulga Puntos 2143

El propio Andreas Clenow sugiere Zipline-Reloaded. La documentación se puede encontrar aquí. Es mantenido por Stefan Jansen (gracias Stefan), el autor de Machine Learning for Algorithmic Trading

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