osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de...

34
Marzo, 2015 1 / 34 Wopr: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas F. Monera Daroqui M. Sánchez de León Peque

Transcript of osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de...

Page 1: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 1 / 34

Wopr: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

F. Monera Daroqui

M. Sánchez de León Peque

Page 2: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 2 / 34

Introducción

Wopr, XWopr, Estrategias

Estadísticas de desarrollo

Page 3: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 3 / 34

Introducción

Contexto, motivación, objetivos, requisitos, estructura del proyecto, herramientas

Page 4: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 4 / 34

Contexto, motivación

Abril 2014

Área de I+D: algoritmos de inversión automática

Limitación de las herramientas existentes

Page 5: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 5 / 34

Objetivos

Diseño y desarrollo de una aplicación modular, escalable y distribuida para la realización de operaciones en mercados bursátiles y Forex

Diseño de la arquitectura del sistema (Wopr)

Desarrollo de una interfaz gráfica (XWopr)

Implementación de algoritmos complejos que trabajan con conceptos abstractos

Aplicación de algoritmos de aprendizaje automático

Page 6: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 6 / 34

Estructura del proyecto

Page 7: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 7 / 34

Herramientas

GNU / Linux

Python

ZeroMQ

Git

TDD

Page 8: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 8 / 34

Wopr

Arquitectura del sistema, nodos, nodos especializados

Page 9: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 9 / 34

Arquitectura del sistema (1)

Sistema multiagente

Page 10: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 10 / 34

Arquitectura del sistema (2)

Processing &

routing

Experts

Experts

Brain

Brain

Orders &

more

Broker platform

Broker platform

Page 11: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 11 / 34

Nodos (1)

REQ-REP: El cliente espera siempre una respuesta

PUB-SUB: Distribución de datos a suscriptores

PUSH-PULL: Cola clásica (el cliente no espera respuesta)

Node

REQ PUBPULL

Page 12: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 12 / 34

Otros patrones

XPUB-XSUB, XREQ-XREP...

Balanceo de carga

Alta disponibilidad

Page 13: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 13 / 34

Nodos (2)

Activados por mensajes o por agotamiento de tiempo de espera

Filtrado de mensajes

Sincronización entre nodos

Page 14: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 14 / 34

Enrutador

Maneja datos de mercado crudos (TOHLCV)

Almacenamiento

Distribución

Remuestreo (resampling)

Page 15: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 15 / 34

Remuestreo

2 3 4 5 6 7 8 9

1 min

4 min

5 9

2 3 4 5 6 7 8 9

1 min

4 min

2 6

2 3 4 5 6 7 8 9

1 min

4 min

4 8 12

1 2 3 4 5 6 7 8 9

1 min

4 min

3 7

1

Page 16: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 16 / 34

Cerebro

B B B B B

Market data

Lowest abstraction level B

B B

B

B

B B

B

Middle abstraction levels

Highest abstraction level

Strategy output

Page 17: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 17 / 34

Nigromante

Padre de todos los cerebros de una máquina física

Crea nuevos cerebros bajo demanda

Mata cerebros también bajo demanda

Page 18: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 18 / 34

Otros nodos

Supermente

Consola

Alimentador

Puente

...

Page 19: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 19 / 34

XWopr

Características, ventana principal, gráficos, indicadores

Page 20: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 20 / 34

Características

GUI

Interactúa con Wopr

Es un nodo más dentro de la red

Visualización de gráficos

Gestión de cerebros

Page 21: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 21 / 34

Ventana principal

Page 22: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 22 / 34

Gráficos

Page 23: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 23 / 34

Indicadores

Page 24: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 24 / 34

Estrategias

Elliott, detección de patrones, integración

Page 25: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 25 / 34

Elliott

time

pri

ce

Page 26: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 26 / 34

Detección de patrones (1)

I1

I2

I3

I4

I5

I6

I7

I8

X1

X2

X3

X4

X5

X6

X7

X8

H1

H2

H3

H4

H5

H6

H7

H8

H9

H10

O1

O2

Y1

Y2

B1 B2

Page 27: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 27 / 34

Detección de patrones (2)

0 200 400 600 800 1000 1200 1400Epoch

0.10

0.15

0.20

0.25

0.30

0.35

0.40

0.45Err

or

(%)

Corrections training

ValidationTestTrain

Page 28: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 28 / 34

Resultados preliminares

Page 29: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 29 / 34

Integración

Page 30: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 30 / 34

Estadísticas de desarrollo

Tests, documentación, estadísticas de desarrollo

Page 31: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 31 / 34

Tests

Más de 100 tests de validación

Más de 1000 aserciones o puntos de verificación

(Re)Write a test Write codeCheck test

RefactorRun all tests

Test(s) fail

Test fails

Test succeeds

All tests succeedRepeat

Page 32: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 32 / 34

Documentación

API

Más de 250 docstrings

Más de 2500 líneas

Proyecto

LaTeX

Datos autogenerados

Gráficos vectoriales

Page 33: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 33 / 34

Estadísticas de desarrollo de código

1000+ commits

80000+ líneas modificadas

~30000 líneas de código

Page 34: osBrain: una herramienta para la inversión automática en bolsa y mercados de intercambio de divisas

Marzo, 2015 34 / 34

All text and image content in this document is licensed under the Creative Commons Attribution-Share Alike 3.0 License (unless otherwise specified). "LibreOffice" and "The Document Foundation" are registered trademarks. Their respective logos and icons are subject to international copyright laws. The use of these therefore is subject to the trademark policy.

Gracias por su atención

¿Preguntas?