El año empieza con una racha negativa bastante imprevista en las bolsas, en el caso del IBEX, la peor registrada durante los primeros días del año desde su inicio.
Cuando se dan hechos de este calibre históricamente no son buen presagio para lo que puede ocurrir durante el resto del año debido a que las primeras semanas marcan la tendencia que seguirán los mercados durante el resto del año. En la actualiadad podemos ponernos a largo o a corto sin ningún tipo de problema, esto supone una gran ventaja sobre los que sólo ven la parte compradora de los mercados.
Es comprensible que por una parte muchos inversores vean sólo la cara compradora (en largo) ya que cualquier activo tiene un potencial de crecimiento muy superior al 100% pero sólo puede caer como máximo el 100%, en cualquier caso con apalancamiento moderado y con una volatilidad importante es posible aprovecharse de los movimientos de los mercados en los dos sentidos.
Durante los últimos meses he estado estudiando y desarrollando herramientas en Python para mejorar mi propio trading y sobre todo el tiempo necesario para llevar a cabo las tareas más rutinarias, a modo de introducción ya lo traté en este post.
Después de haber visto los beneficios potenciales pero también los riesgos de la automatización, mi preferencia es automatizar sólo las tareas rutinarias y repetitivas como por ejemplo los cálculos necesarios para abrir y cerrar operaciones. En esta entrada quiero poner un ejemplo de código de Python para calcular la equidad, balance, margen y operaciones abiertas que perfectamente puede ser parte de tu propio algoritmo para operar en Forex y CFDs. En mi caso uso OANDA y su librerías de acceso a la información de la cuenta escritas en Python (Oandapy), pero igualmente existe algo similar (ibPy) si operas con Interactive Brokers .
Lo primero debes tener una cuenta Demo o Real en Oanda, para darte de alta el proceso es muy sencillo desde este enlace. En segundo lugar es necesario un token de identificación (gratuito también) para poder comunicarte con los servidores del broker, hay una opción en el menú de inicio de la cuenta que se llama "Manage API access" donde se puede conseguir y cambiar fácilmente dicho token.
Una vez hecho este paso ya podemos usar el siguiente código:
Al importar el fichero de oandapy, es necesario que estén ambos archivos .py en la misma carpeta. He puesto a vuestra disposición los dos archivos en los siguientes enlaces:
Para poder ejecutarlos en terminal de Mac o Windows es necesario tener instalado Python, el cual se puede descargar aquí. Yo me he acostumbrado a trabajar con la versión 2.7, pero debería funcionar también con la versión 3.5.
Así se vería una vez ejecutado el archivo info_cuenta.py y rellenados los datos de cuenta, modo (live o practice) y el token:
Es un simple ejemplo que muestra el potencial para el análisis de cotizaciones, diseño e implementación de estrategias y análisis de los resultados de las propias cuentas de trading. Lo mejor es que es gratis. En un futuro pondré más código de ejemplo que os puede ser de utilidad.
En la operativa de la cuenta objeto de este blog he cerrado un año 2014 discreto con una rentabilidad del 15%. Desde el inicio del proyecto los números que vemos en Forex Factory de mi cuenta son:
Los ratios a 31 de Diciembre 2015:
CAGR (Rent.%AnualComp.) | 51,3% |
Max.Drawdown % | 30,4% |
MAR (CAGR/Max.Drawd.) | 1,69 |
Year to Date % | 15,4% |
Fecha inicio | 19/11/12 |
Fecha Fin | 31/12/15 |
Días | 1137 |
Semanas | 162 |
Meses | 37 |
Años | 3,1 |
Trades | 3353 |
Trades x Día | 2,9 |
El gráfico de evolución de rentabilidad %:
Os deseo un buen año de trading.