martes, 26 de enero de 2016

Los sistemas automáticos

Quien no ha deseado operar de manera totalmente objetiva, sin emociones, sin necesidad de estar delante de las pantallas? No sería ideal introducir los parámetros de nuestro sistema de trading en un programa que se ejecutará automáticamente a través de nuestro broker y eliminar así toda subjetividad en nuestro trading? En respuesta a este deseo surgieron los sistemas automáticos de trading, también conocidos como robots o experts advisors, sobre los que versará esta nueva entrada del blog.

Concepto

Un sistema automático es una aplicación informática programada para ejecutar órdenes y realizar operativas sobre activos y mercados financieros. Al operar mediante un sistema automático prescindimos totalmente del trading discrecional, es decir, las órdenes no se han de introducir manualmente, todo está programado con anterioridad. De esta manera, no es preciso que estemos monitorizando la sesión e introduzcamos las órdenes según nuestras reglas de trading (o lo intentemos), simplemente con dejar el sistema automático activado él mismo se encargará de ejecutar las órdenes.

Operativa

La mayor ventaja de los sistemas automáticos es la eliminación del factor humano y/o psicológico en el trading. El miedo, la avaricia, la esperanza, la codicia... todos los sentimientos inherentes a la naturaleza humana quedan desterrados de nuestras trades. También quedan desterrados los errores operativos, es decir, equivocaciones en el momento de introducir órdenes, tales como confundirnos en el tamaño de posición o en los niveles operativos. Otra ventaja es que nos van a permitir monitorizar los mercados 24 horas sin interrupción, el robot no descansa y de este modo tenemos la opción de no perder oportunidades por no estar delante de las pantallas. 


Muy importante a la hora de programar un sistema automático es realizar un backtesting, o prueba en demo con datos históricos. El sistema se ha de probar en un período de tiempo suficiente sobre el mercado para comprobar si es robusto, es decir, no solo hay que comprobar si a la larga proporciona ganancias, sino que la volatilidad y los eventos relevantes e inesperados pueden ser manejados. Estoy hablando de períodos amplios, se suele decir que menos de 300 operaciones no proporcionan un backtest fiable. 

Hay que comprobar antes de poner nuestro capital en juego si el sistema automático es capaz de adaptarse a los diferentes mercados, alcistas, bajistas o laterales. De nada nos vale que funcione bien en uno de ellos si a continuación vamos a perder lo ganado, hay que buscar la flexibilidad, que sea capaz de adecuarse a las condiciones cambiantes e inesperadas que puedan acontecer. También es fundamental verificar cual es el drawdown máximo del sistema, es decir, la peor racha de pérdidas que el sistema ha sufrido durante el proceso de backtesting.

A la hora de trabajar con sistemas automáticos, tenemos la opción ya comentada anteriormente de programarlo nosotros mismos, o bien directamente adquirirlos. Existe una variedad tremenda de robots disponibles. En Metatrader, por ejemplo, hay un auténtico mercado de experts advisors a nuestra disposición. Los hay especializados en Forex, en índices, en materias primas... hay infinidad de desarrolladores ofreciendo sus productos, con rankings y sus parámetros esenciales expuestos. Obviamente muchos tienen una versión demo para que los probéis antes de pagar por la versión completa, y yo os aconsejaría hacer dichas pruebas en una cuenta demo, no con dinero real. 
Existen muchos tipos de sistemas automáticos, los hay para scalping, swing trading, roturas de rango, basados en velas, en indicadores, tendencias... la lista es inabarcable, imaginaros la magnitud de las técnicas de trading y sus diversos parámetros multiplicados por miles de desarrolladores que programan robots. Si os lanzáis a programar por vuestra cuenta, el lenguaje de programación más extendido es el MQL4, basado en el C++, y sobra deciros que os va a requerir muchas horas de estudio y prácticas, no os engañéis pensando que va a ser fácil y que sois tan buenos que vais a descubrir la gallina de los huevos de oro. Humildad y trabajo.

Funcionan los sistemas automáticos?

La pregunta que os estaréis formulando no tiene una fácil respuesta. Por un lado, si nosotros mismos programamos nuestros robots, tenemos el peligro de la sobreoptimización y de no reaccionar ante un cambio en las condiciones del mercado o activo en cuestión. Es decir, a pesar de todo, caer en las fauces de las emociones que tanto queremos evitar. 

Por otro lado, el mercadillo de robots es tan grande, hay tanto que seleccionar y filtrar, que a la hora de adquirir uno nos podemos quedar en un estado de indecisión que nos conduzca a una situación en la que, a la mínima racha de pérdidas, acabemos peregrinando de un sistema a otro en busca de la mejor publicidad. Hay sistemas con precios que dan para comprarse un coche, aparte tienen requerimientos de capital muy elevados para operarlos, hay otros que son muy económicos... nos va a surgir la duda de si lo barato sale caro o si lo caro merece realmente la pena. 

Mi opinión personal? Creo que hay que entender el mercado, saber lo que está detrás de sus movimientos, No podemos pretender obtener ganancias consistentes programando un sistema que trabaje con uno o dos indicadores, si queremos introducir más parámetros, todo se va a complicar. Tanto a la hora de programarlo, como a la hora de realizar el backtesting... van a ser muchas horas de trabajo y dedicación, y por experiencia sé que mucha gente recurre a los sistemas automáticos por querer que se lo den todo hecho. Las famosas "BlackBox" prometían ganancias constantes simplemente pagando unos cuantos miles de dolares, sospechoso no?


No es por pensar mal, pero creéis que si alguien tuviera un robot infalible, capaz de adaptarse a todas las condiciones de mercado, generador incansable de ganancias, lo iba a vender? Se dice que los únicos que están en la playa ganando dinero con los sistemas automáticos son los desarrolladores... No quiero negar la utilidad de estos sistemas ni decir de manera rotunda que no merecen la pena, solo quiero recordar que el estudio, la preparación, la humildad y el trabajo son indispensables en el trading, hay que saber leer el mercado, conocer las diferentes técnicas y estrategias de trading, los diferentes tipos de análisis disponibles. Pensáis que un sistema basado en dos o Tres indicadores o en pinbars puede resultar efectivo en un día en el que se produzca una noticia macroeconómica importante?

En definitiva, de lo que se trata es de controlar nuestras emociones, la estadística pura y dura no es rival para la flexibilidad de nuestra naturaleza humana, tenemos que trabajar para operar con un sistema de trading que se adapte a nosotros. Sería un error pensar que a la hora de programar, comprar o testar un sistema automático no corremos el peligro de caer en la subjetividad. No pretendáis comprar el dominio del psicotrading, aunque operéis con sistemas automáticos deberíais seguir estudiando el mercado y ampliando conocimientos constantemente. No busquéis algo que no existe.

2 comentarios:

  1. ¿Los robots hacen tanto análisis técnico como fundamental?

    ResponderEliminar
    Respuestas
    1. Si, hay sistemas que se basan en noticias, por lo tanto se puede decir que operan en base a análisis fundamental. Lo que me parece que no hay son robots que combinen varios tipos de análisis, ten en cuenta que la programación sería muy complicada y dudo que fueran efectivos.

      Una gran parte de los robots se usan para Forex e índices, y preferiblemente para plazos cortos o medios, usando indicadores, cruces de medias, tendencias, roturas de rango... la variedad es muy grande, quizás demasiado enfocada al negocio de los desarrolladores en mi opinión.

      Un saludo.

      Eliminar