![Show Menu](styles/mobile-menu.png)
![Page Background](./../common/page-substrates/page0043.png)
“paquetes de zipline” para ver si la descarga tuvo éxito. En
realidad, Zipline ya estaría listo para usarse y usted podría
realizar una prueba histórica de su primera estrategia.
El problema es que no se ha programado aún ninguna
estrategia.
Estrategia de trading
La simplicidad de Python y Zipline nos permitirá revisar
fácilmente la estrategia. Al principio, nos centra-
remos en 2 funciones: “initialize ()” y “handle_data ()”.
La función “initialize ()” se llama una vez en cada una
de las pruebas históricas al inicio. Por ejemplo, puede
utilizar esta función para definir parámetros iniciales. La
segunda función “handle_data ()” se llama durante las
pruebas históricas con cada entrada de datos. Entonces,
si se reciben datos de precio a diario, la función handle_
data () se llamará todos los días. En este artículo vamos
a comprar una acción a diario durante las pruebas histó-
ricas. Para implementarlo, se requiere un nuevo archivo
de Python. En este archivo se escribe “ from zipline.api
import order, symbol”. Esto significa que podrá importar
las siguientes funciones del paquete “ zipline “ y del
módulo “api “: “order ()” y “symbol ()”. Por ejemplo, podrá
utilizar la función order () para comprar acciones. La
función requiere los 2 parámetros “activo” y “cantidad”.
Como parámetros se pasarán las acciones y el número
de acciones “acción” y “cantidad”, aquellos que desee
comprar. Por otro lado, con la función “símbolo ()”, podrá
pasar una abreviatura de la acción a la función. Si desea
saber más acerca de las características incorporadas
en Zipline, puede utilizar la documentación Quantopian
(www.quantopian.com/help). Al definir las funciones
“initalize()” y “handle_data ()” seguramente notará que
el “contexto” está configurado como parámetro (no
introduciremos “datos” ahora porque no los usaremos
en absoluto). “Contexto” es un diccionario de Python
vacío que se usa para acceder a los objetos dentro de
las funciones que se configuran dentro de la función
“inicializar ()”. También podrá leerlo con más detalle
en la documentación, el resto le quedará más claro con
ejemplos. Busque el código fuente en la imagen 2.
TRADERS´ 03.2019
HERRAMIENTAS
Realizar las pruebas históricas
Si desea ejecutar el algoritmo, vuelva ahora al terminal
desde donde ya se ha iniciado el entorno de Python con
el paquete “zipline”. Escriba allí el comando “zipline run
-f C: /Users/alank/Desktop
/test.py--start 2016-1-1 -
end 2018-1-1 -b quantopian-quandl “. Luego ejecute las
pruebas históricas hasta llegar a la salida (ver imagen
3). El archivo en el que se encuentra el algoritmo lo
podrá encontrar en la siguiente ruta “C: / Users / alank
/Desktop
/test.py”. La ruta está marcada con la opción
“-f”. A ello le sigue la definición de las fechas en donde
se indica desde cuándo a cuándo se deben ejecutar las
pruebas históricas. Las opciones “--start” y “--end” se
usan con esta finalidad. Por último, usted especifica qué
paquete de datos se debe usar para las pruebas histó-
ricas. Utilizaremos el paquete de datos previamente
descargado “ quantopian-quandl “.
Conclusión
En esta parte de nuestra serie de artículos, hemos
analizado la instalación de Zipline y su uso práctico en
pruebas históricas con las que le hemos ofrecido una
descripción general del proceso. Seguramente aún le
podrán quedar algunas preguntas las cuales las acla-
raremos en la siguiente parte de esta serie de artículos.
En esta nueva parte entraremos en los detalles sobre la
implementación práctica.
Cuántica
Quantopian es una empresa que provee una pla-
taforma para programar y preparar algoritmos
de trading para analistas cuánticos. En el caso de
algoritmos profesionales, es posible eventualmente
crear una conexión a los fondos de cobertura, para
que luego dichos fondos nos puedan comprar o pro-
mover el algoritmo. Más información sobre todo ello
en
www.quantopian.com.
Al definir las funciones “initalize()” y “handle_data ()” seguramente
notará que el “contexto” está configurado como parámetro.
43