Table of Contents Table of Contents
Previous Page  32 / 84 Next Page
Information
Show Menu
Previous Page 32 / 84 Next Page
Page Background

32

TRADERS´ 04.2019

PORTADA

el gráfico dónde toma una posición y dónde la cierra.

La escritura de mensajes en una terminal donde se nos

informe de eventos no suele estar contemplado.

Sistema automático independiente a la plataforma:

La

programación de estos sistemas se hacen en un lenguaje

independientealaplataformadelbróker.Mediantefunciones

API (Application Programming Interface) se conectará con

ella y las órdenes serán colocadas o canceladas como si

de forma manual se tratara. No sólo habrá programada una

estrategia sino todo un sistema que mediante mensajes

en una terminal informará de condiciones de mercado,

escaneo de activos listos para ser operable, operaciones en

curso, envío de emails con avisos, etc.

Dos potentes lenguajes están disponibles para ello:

Python y R con librerías de trading, backtesting y el uso

de Machine Learning.

Para el ejemplo elegiremos Python pero R es igual de

bueno. En cuanto al uso de redes neuronales encontra-

remos cuatro librerías muy potentes: TensorFlow, Scikit-

learn, Pytorch y Keras. Una breve descripción sobre ellas

puede ver en el cuadro correspondiente.

Código de ejemplo con Keras

Se describirá a continuación el código de una estrategia

que utiliza Keras para predicción del movimientos de

precios de mini DAX utilizando para ello los datos de la

serie diaria del futuro del mini DAX. El código se puede

descargar desde

aquí .

Primeramente se importan las librerías necesarias,

Numpy es una poderosa librería científica, Pandas es

usada para estructurar datos, en este caso, para coger

los datos descargados desde Yahoo Finance del mini DAX

desde el año 1996 hasta Abril del 2019 y poder tratarlos

más tarde. Talib es una herramienta ampliamente utili-

zada por desarrolladores con más de 200 indicadores

programados, muchos de ellos conocidos con MACD,

RSI, media móviles, estocástico, Bollinger, ADX etc. Aquí

será usada para coger alguno de ellos e implementar la

estrategia a la hora de búsqueda de señales de compra

o venta. A continuación otra función generará un número

pseudo aleatorio para comenzar el entrenamiento.

El ficher

o “ csv

generado enYahoo Finance estará ubicado

en c:\tmp y se prepara la data usando además una media

móvil simple de 10 períodos y un RSI de 9 períodos.

Con la función dataset.dropna() se elimina de la data filas

vacías si las hubiese.

Dos marcos de datos que almacenarán las entradas y

las variables de salida (representado gráficamente en el

esquema de una red neuronal de la figura 1). “X” almace-

nará las entidades de entrada. “Y” almacenará el valor a

predecir: aumento del precio.

Observamos que cada vez que realiza una pasada (epoch o época) va ofreciendo un porcentaje de aciertos que comienza sobre el 53%

Fuente: Ejecución en Python con Keras por

tradingalgoritmico.com

G1

Inicio de la fase de aprendizaje