Sei sulla pagina 1di 34

Wopr: una herramienta para la inversin

automtica en bolsa y mercados de


intercambio de divisas

F. Monera Daroqui
M. Snchez de Len Peque

Marzo, 2015

1 / 34

Introduccin
Wopr, XWopr, Estrategias
Estadsticas de desarrollo

Marzo, 2015

2 / 34

Introduccin
Contexto, motivacin, objetivos, requisitos,
estructura del proyecto, herramientas

Marzo, 2015

3 / 34

Contexto, motivacin
Abril 2014
rea de I+D: algoritmos de inversin automtica
Limitacin de las herramientas existentes

Marzo, 2015

4 / 34

Objetivos
Diseo y desarrollo de una aplicacin modular, escalable y
distribuida para la realizacin de operaciones en
mercados burstiles y Forex
Diseo de la arquitectura del sistema (Wopr)
Desarrollo de una interfaz grfica (XWopr)
Implementacin de algoritmos complejos que trabajan con
conceptos abstractos
Aplicacin de algoritmos de aprendizaje automtico

Marzo, 2015

5 / 34

Estructura del proyecto

Marzo, 2015

6 / 34

Herramientas
GNU / Linux
Python
ZeroMQ
Git
TDD

Marzo, 2015

7 / 34

Wopr
Arquitectura del sistema, nodos, nodos
especializados

Marzo, 2015

8 / 34

Arquitectura del sistema (1)


Sistema multiagente

Marzo, 2015

9 / 34

Arquitectura del sistema (2)

Experts

Brain

Broker
platform

Processing
&
routing

Orders
&
more

Broker
platform

Brain

Experts

Marzo, 2015

10 / 34

Nodos (1)
REQ-REP: El cliente espera siempre una respuesta
PUB-SUB: Distribucin de datos a suscriptores
PUSH-PULL: Cola clsica (el cliente no espera respuesta)

Node
REQ

Marzo, 2015

PULL

PUB

11 / 34

Otros patrones
XPUB-XSUB, XREQ-XREP...
Balanceo de carga
Alta disponibilidad

Marzo, 2015

12 / 34

Nodos (2)
Activados por mensajes o por agotamiento de tiempo de
espera
Filtrado de mensajes
Sincronizacin entre nodos

Marzo, 2015

13 / 34

Enrutador
Maneja datos de mercado crudos (TOHLCV)
Almacenamiento
Distribucin
Remuestreo (resampling)

Marzo, 2015

14 / 34

Remuestreo

1
min

1
min

4
min

4
min
5

1
min

1
min

4
min

4
min
4

Marzo, 2015

12

15 / 34

Cerebro
Strategy output

Highest abstraction
level

Middle abstraction
levels

Lowest abstraction
level

Market data

Marzo, 2015

16 / 34

Nigromante
Padre de todos los cerebros de una mquina fsica
Crea nuevos cerebros bajo demanda
Mata cerebros tambin bajo demanda

Marzo, 2015

17 / 34

Otros nodos
Supermente
Consola
Alimentador
Puente
...

Marzo, 2015

18 / 34

XWopr
Caractersticas, ventana principal, grficos,
indicadores

Marzo, 2015

19 / 34

Caractersticas
GUI
Interacta con Wopr
Es un nodo ms dentro de la red
Visualizacin de grficos
Gestin de cerebros

Marzo, 2015

20 / 34

Ventana principal

Marzo, 2015

21 / 34

Grficos

Marzo, 2015

22 / 34

Indicadores

Marzo, 2015

23 / 34

Estrategias
Elliott, deteccin de patrones, integracin

Marzo, 2015

24 / 34

price

Elliott

time

Marzo, 2015

25 / 34

Deteccin de patrones (1)


B1

B2
H1

X1

I1

H2

X2

I2

H3

X3

I3

H4

X4

I4

H5

O1 Y1

X5

I5

H6

O2 Y2

X6

I6

H7

X7

I7

H8

X8

I8

H9
H10

Marzo, 2015

26 / 34

Deteccin de patrones (2)


Corrections training

0.45

Validation
Test
Train

0.40

Error (%)

0.35

0.30

0.25

0.20

0.15

0.10
0

200

400

600

800

1000

1200

1400

Epoch

Marzo, 2015

27 / 34

Resultados preliminares

Marzo, 2015

28 / 34

Integracin

Marzo, 2015

29 / 34

Estadsticas de desarrollo
Tests, documentacin, estadsticas de desarrollo

Marzo, 2015

30 / 34

Tests
Ms de 100 tests de validacin
Ms de 1000 aserciones o puntos de verificacin
Test succeeds

(Re)Write a test

Repeat

Check test

Refactor

All tests
succeed

Test fails

Write code

Run all
tests

Test(s) fail

Marzo, 2015

31 / 34

Documentacin
API
Ms de 250 docstrings
Ms de 2500 lneas
Proyecto
LaTeX
Datos autogenerados
Grficos vectoriales

Marzo, 2015

32 / 34

Estadsticas de desarrollo de cdigo


1000+ commits
80000+ lneas modificadas
~30000 lneas de cdigo

Marzo, 2015

33 / 34

Gracias por su atencin


Preguntas?

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.

Marzo, 2015

34 / 34

Potrebbero piacerti anche