minería de datos para trading automático
DESCRIPTION
Líneas magistrales de la master class ofrecida por Fernando Monera, CINO de OpenSIstemas, en el Master de Minería de Datos 2013/2014 de la UCM.TRANSCRIPT
![Page 1: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/1.jpg)
Minería de datos para la construcción de sistemas de trading automático
OpenSistemas 2014
Fernando Monera ([email protected])
![Page 2: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/2.jpg)
Índice
❏ 1. Planteamiento general❏ 2. Equipo / roles necesarios❏ 3. Conceptos básicos❏ 4. Ejemplo práctico
❏ Idea operativa❏ Programación❏ Ejecución
❏ 5. Conclusiones
![Page 3: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/3.jpg)
● ¿Conocimientos o experiencia sobre bolsa u otros mercados?
Pregunta
![Page 4: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/4.jpg)
● ¿Alguien tiene experiencia con trading automático?
Pregunta
![Page 5: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/5.jpg)
PARTE 1
CONCEPTOS BÁSICOS
![Page 6: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/6.jpg)
● Objetivo:○ Ventajas competitivas○ Sostenidas○ Mercados financieros
Planteamiento General
![Page 7: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/7.jpg)
Planteamiento general
○ Sistemas automáticos vs. manuales■ Sistemas automáticos: >70%■ Sistemas manuales: <30%
○ El porcentaje va aumentando a favor de los sitemas automáticos
○ Barreras de entrada han bajado enormemente
![Page 8: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/8.jpg)
● Enfoques:○ Tradicional
■ Idea operativa■ Programación del algoritmo■ Backtesting■ Optimización
○ Otros enfoques
■ Redes neuronales, Walk Forward, Data Mining de sistemas (vs parámetros), ...
Planteamiento general
![Page 9: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/9.jpg)
Para construir un sistema de trading son necesarios expertos en las siguientes áreas:
● Trader: Conoce los mercados y proporciona la idea operativa
● Programador: Convierte la idea operativa en un algoritmo
● Sistemas/infraestructura: Máquinas, comunicaciones, monitorización, ...
Equipo / roles necesarios
![Page 10: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/10.jpg)
Una misma persona puede asumir dos o incluso los tres roles:
● Lenguajes de programación sencillos● Plataformas orientadas a “retail trading” /
“home trading”● Precio de datos muy barato incluso gratuito
en algunos casos● Mucha información disponible en Internet
sobre trading
Equipo / roles necesarios
![Page 11: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/11.jpg)
● Datos disponibles: ○ Precio y Volumen
● Representación Gráfica○ Series temporales: es la forma más
común de representación○ Eje X: tiempo○ Eje Y: precio
Conceptos básicos
![Page 12: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/12.jpg)
● Velas japonesas○ Apertura○ Cierre○ Máximo○ Mínimo
● Marcos temporales
Conceptos básicos
![Page 13: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/13.jpg)
● Indicadores: ○ Operaciones sobre el precio y/o el
volumen○ Otros (noticias por ejemplo)
● Indicadores comunes:○ Medias móviles: Tendencia
○ Osciladores: Sobrecompra / Sobreventa
○ Bandas: Niveles de precio extremos○ Estructura del precio: Zigzag○ ...
Conceptos básicos
![Page 14: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/14.jpg)
○ Ejemplo: medias móviles
Conceptos básicos
![Page 15: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/15.jpg)
○ Ejemplo: ZigZag
Conceptos básicos
![Page 16: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/16.jpg)
○ Ejemplo: Bollinger Bands
Conceptos básicos
![Page 17: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/17.jpg)
● Ineficiencia de un mercado○ Un mercado es EFICIENTE cuando es
completamente aleatorio.○ La eficiencia completa no existe○ Ineficiencias:
■ situaciones puntuales de mercado ■ probabilidad de predicción a corto plazo > 50%
○ Nuestro trabajo como diseñador de la estrategia es identificar ineficiencias
Conceptos básicos
![Page 18: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/18.jpg)
● Algoritmo de trading■ Software■ ENTRADA: Datos del mercado en tiempo real■ SALIDA: Decisiones de trading (comprar/vender)
Conceptos básicos
Datos del mercado
Algoritmode trading
Analizar datosDecisiones
Comprar / Vender
![Page 19: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/19.jpg)
● Testing○ Comprobar comportamiento
■ Backtest: Prueba del comportamiento sobre datos históricos
■ Forward test: Prueba del comportamiento sobre el mercado real
● Filtros y mejoras○ Mejoras a la estrategia para mejorar
resultados de testing
● Optimización○ Adaptación de variables al mercado
Conceptos básicos
![Page 20: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/20.jpg)
PARTE 2
PRÁCTICA: Construcción de un sistema de trading automático
![Page 21: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/21.jpg)
● Vamos a construir un algoritmo de trading
● ¿Qué necesitamos? ○ (3 cosas)
Práctica
![Page 22: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/22.jpg)
● Vamos a construir un algoritmo de trading
● ¿Qué necesitamos? ○ Idea operativa (trader / analista de
mercados)
Práctica
![Page 23: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/23.jpg)
● Vamos a construir un algoritmo de trading
● ¿Qué necesitamos?○ Idea operativa (trader / analista de
mercados)
○ Programador / entorno de programación
Práctica
![Page 24: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/24.jpg)
● Vamos a construir un algoritmo de trading
● ¿Qué necesitamos?○ Idea operativa (trader / analista de
mercados)
○ Programador / entorno de programación
○ Infraestructura: plataforma de trading
Práctica
![Page 25: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/25.jpg)
● Idea operativa: Cruce de medias móviles periodos 30 y 100
● Plataforma: Metatrader en este ejemplo
● Infraestructura: Local. Sin conexión al broker.
Práctica
![Page 26: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/26.jpg)
● IDEA OPERATIVAIdea Operativa
![Page 27: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/27.jpg)
● IDEA OPERATIVA○ Cruce de medias móviles
○ Comprar cuando la media móvil rápida se cruza hacia arriba con la lenta
○ Vender en caso contrario
Idea Operativa
![Page 28: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/28.jpg)
● PROGRAMACIÓN○ Similar a cualquier lenguaje○ Barras numeradas de 0 en adelante
■ 0 -> barra “viva”■ 1 en adelante -> barras ya cerradas
Programación
![Page 29: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/29.jpg)
● Fase 1: Obtener valores de medias móviles
■ Entorno de programación■ Funciones principales de un algoritmo■ Funcionamiento general■ Obtención de valores de un indicador
Programación
![Page 30: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/30.jpg)
● Fase 2: Cruce de medias■ Identificar condiciones del mercado favorables
Programación
![Page 31: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/31.jpg)
● Fase 3: Operaciones de trading
■ Realizar operaciones de trading en condiciones del mercado favorables
■ Probar en varios mercados y marcos temporales
Programación
![Page 32: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/32.jpg)
● Fase 4: Mejoras en salidas■ Añadimos una media móvil adicional
Programación
![Page 33: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/33.jpg)
● Fase 5: Parámetros y optimización
■ Añadimos parámetros■ Probamos cambiando los parámetros■ Optimización■ Probamos en distintos mercados
Programación
![Page 34: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/34.jpg)
● El algoritmo ya podría ejecutarse en una cuenta real
● Hemos dejado fuera aspectos muy importantes:○ Sobre optimización / curve fitting○ Filtros○ Gestión del riesgo / gestión monetaria○ ...
Programación
![Page 35: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/35.jpg)
○ Mercados accesibles a todos. No hay barreras de entrada.
○ La competencia es enorme.
○ Es muy sencillo desarrollar estrategias automáticas de trading.
Conclusiones
![Page 36: Minería de datos para trading automático](https://reader034.vdocuments.co/reader034/viewer/2022042613/5499e8d2b47959514d8b58c5/html5/thumbnails/36.jpg)
○ Contacto:■ Fernando Monera■ [email protected] ■ www.opensistemas.com Contacto