Llopis Olmos, Alberto Alejandro

Job Title
Last Name
Llopis Olmos
First Name
Alberto Alejandro
ORCID
Personal page
Name
Email Address

Search Results

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Publication

Framework en python para el backtesting de algoritmos de inversión en el mercado de valores

2023-09-18, Llopis Olmos, Alberto Alejandro, Busquets Mataix, José Vicente, Meneses González, Kevin Moisés, Dpto. de Informática de Sistemas y Computadores, Instituto Universitario de Tecnologías de la Información y Comunicaciones, Centro de Investigación en Gestión e Ingeniería de Producción, Escuela Técnica Superior de Ingeniería Informática

[ES] Para el desarrollo de estrategias de inversion en bolsa, es muy arriesgado ponerlas en funcionamiento luego de crearlas. Es necesaria una estimacion de sus posibles resultados, de donde nace la idea de backtesting: con datos pasados, comprobar que resultados habria obtenido el algoritmo. De esta forma podemos obtener una estimacion del riesgo y de los beneficios que tiene el algoritmo. El proceso de backtesting requiere de un proceso extenso: la recogida de datos pasados, el procesamiento de los mismos, para asegurar su validez y que estan en el timeframe en el que funciona nuestro algoritmo, separacion de los datos para entrenamiento y test, para tener diferentes casos con los que estimar el rendimiento, el proceso de simulacion de la operativa, y por ultimo el analisis de resultados. Cada una de estas fases es compleja en si misma, pero no existen estandares para el desarrollo completo del proceso. En este documento se enseñaran las librerias de codigo estandar para cada una de estas fases, asi como sus ventajas y desventajas frente a sus alternativas. Para cada fase se facilitaran implementaciones de metodos de muy alta conveniencia, ya que muchas de las herramientas proporcionadas a continuacion no estan especializadas para el analisis de datos en bolsa. Para la obtencion de datos existen muchas posibles fuentes: pandas, kaggle y binance entre muchas otras. Para la recepcion y procesamiento de estos datos se usara python, en concreto pandas. Esta libreria es un estandar para la ciencia de datos y permite una manipulacion y visualizacion rapida de datos. Existen otras muchas alternativas, y se usaran sus ventajas en conveniencia para el desarrollo del framework. Para el proceso de backtesting, existe la libreria backtesting, un estandar de evaluacion de algoritmos en bolsa en python, que expandiremos con indicadores de riesgo como la simulacion de montecarlo, o indicadores de rendimiento como el ratio de ganancia frente al mercado. Los resultados que proporciona el backtesting son fundamentales para la decision de puesta en marcha en tiempo real de la estrategia. Un analisis o desarrollo incorrectos puede suponer la perdida total del capital.