domingo, 9 de julio de 2017

RapidFX : Algoritmo para predecir el comportamiento del par USDCOP

RapidFX : Algoritmo para predecir el comportamiento del USDCOP

Recibimos una de esas invitaciones que nos gustan, nos invitaron a desarrollar un modelo que permita predecir el comportamiento del par USD/COP con una precisión aceptable que permita realizar el intercambio de divisa con un 60% de probabilidad de éxito para un tiempo dado.

Es un campo que encuentro particularmente fascinante, ya que los modelos matemáticos de este tipo de desarrollos se enmarcan dentro de la teoría de juegos y por lo tanto las variables que eventualmente podrían afectar el comportamiento del par USDCOP son múltiples y no sólo relacionadas con el universo económico, pero también con el factor antropico.

Como suelo hacer en este tipo de casos,  comencé a realizar un desarrollo sin realizar ninguna investigación previa, para evitar precisamente un sesgo preliminar en mis hipótesis de partida.
Por lo tanto realicé unas regresiones lineales manuales muy básicas, me divertí jugando con varios tipos de ecuaciones sencillas de la línea recta y con varios tipos de líneas rectas antes de comenzar a explorar a fondo algunas curvas más exóticas de la geometría vectorial.

Comenzar con lo simple es muy importante, porque generalmente se termina llegando nuevamente a lo simple, incluso después de atravesar campos muy complejos.

Por ejemplo, solamente partiendo de una ecuación muy simple de una línea recta que no tenga centro en el origen de coordenadas cartesianas y=mx+b , es posible comenzar a realizar simulaciones simples y manuales con las constantes m y b (parámetros), en otras palabras tratando de encontrar la(s)constante(s) adecuada para un desarrollo determinado, es el fundamento básico de los trabajos de todas las ingenieras.

Por lo tanto, el siguiente paso natural fue parametrizar un grupo de líneas rectas que mejor describieran el comportamiento USDCOP en un tiempo determinado t.

Ahora era el momento de entrar a jugar con las hojas de cálculo, comencé a triturar una serie de datos histórica utilizando los índices técnicos de norma financieros, básicamente los promedios móviles , las medias y desviaciones estándar antes de comenzar a utilizar un índice un poco más sofisticado, el RSI(14) (relative strength index).

En este punto, decidí comenzar a escribir unas cuantas líneas de código básicas, con el propósito de realizar extrapolaciones con unos cuantos índices técnicos básicos, MA5, MA10 y RSI14.

Me gusta seguir una filosofía denominada usualmente como KISS ( keep it simple...)
y por lo tanto las líneas de código las escribí en el VB de excel , utilizando la hoja de cálculo como back y front end por el momento.

Pero no comencé de zero, porque utilice la aplicación financiera RapidConta para comenzar a desarrollar la nueva aplicación RapidFX.
RapidConta es una aplicación financiera que permite calcular los estados financieros de la empresa en tiempo real, cada que se efectúe una orden de compra o se facture.
La diferencia, es que RapidFx realizaría operaciones del tipo bid/ask, pero igualmente modificaría en tiempo real los estados financieros principales después de cada operación de trading, es decir, el P&G, el flujo de caja y el balance.

Por lo tanto la versión cero de RapidFX realiza unas operaciones fundamentales básicas, pero las
realiza en forma eficiente y práctica.

El streaming de big data histórico lo conjuga con el streaming que se desarrolla en tiempo real durante la apertura de los mercados y calcula unos índices técnicos básicos y adicionalmente realiza una simulación de monte carlo que permite introducir unos parámetros estocasticos al modelo y realiza una recomendación basado en los resultados.
En un próximo reporte de progreso sobre la aplicación, esperamos contarles los resultados de la incorporación del modelo básico al marco teórico de la teoría de juegos, que es donde la verdadera diversión comienza.














No hay comentarios:

Publicar un comentario