En este artículo, vamos a ver los 3 pilares básicos que necesita una persona como tú o como yo, una persona que no está relacionada profesionalmente con los mercados financieros, para operar algorítmicamente.
Contenidos:
- 1 Definir unas reglas (algoritmos) que, si se cumplen, realizarán la operación de compra-venta
- 2 El programa informático que sea capaz de convertir esas reglas en una orden al mercado
- 3 Una conexión directa y estable de nuestro programa informático con el bróker o exchange en el que operamos
- 4 Resumen y links de Trading Algorítmico Fácil
- 5 Subscríbete
En mi opinión, hay 2 elementos distintivos del trading algorítmico:
- el primero es que te permite comprobar si una estrategia o idea de trading ha sido rentable en el pasado.
- el segundo es que te permite realizar operaciones de trading de forma automatizada. Por lo que, sin necesidad de que estés delante de las pantallas, vas a poder abrir y cerrar operaciones de compra-venta en los mercados financieros.
El poder trabajar de forma 100% automatizada es el motivo por el cual yo opero algorítmicamente. La principal ventaja que tienes es que el trading algorítmico te permite compatibilizar el trading con tu vida cotidiana. Ya sea si estás en una reunión de trabajo, viendo un partido de fútbol o en cualquier otra situación alejado de las pantallas, sabes que tus sistemas van a estar operando con completa normalidad.
Como siempre tienes un video en YouTube donde se resume este contenido. Dada la limitación de tiempo del video, siempre en el artículo escrito vas a tener más detalles y ejemplos que en los videos, por lo que te recomiendo ver el video y después leer el artículo.
En realidad, tanto si eres un trader retail o particular, como si eres un trader institucional, básicamente necesitas lo mismo para operar algorítmicamente. Simplificando en 3 pasos, te diría que lo que necesitas es:
Un algoritmo o conjunto de reglas
que, si se cumplen, identifican la operación de compra-venta
Una codificación en un lenguage de programación
que sea capaz de convertir esas reglas en una orden al mercado
Una conexión directa y estable
del algoritmo ya codificado con el bróker o exchange en el que operamos
El trading algorítmico es mucho más, y para entender el trading algorítmico, vas a necesitar conocer un sinfín de conocimientos, puedes consultar el material que tenemos a tu disposición en nuestro blog.
Vamos ahora a profundizar en cada uno de los tres pilares básicos que hemos comentado:
Definir unas reglas (algoritmos) que, si se cumplen, realizarán la operación de compra-venta
Veamos un ejemplo fácil de entender con un algoritmo que ejecutamos diariamente en nuestro dia a dia y que tal vez no te hayas planteado nunca que es un algoritmo.
Cuando activamos nuestro despertador del móvil estamos dando unas reglas concretas por ejemplo: “cuando sean las 06:30 horas de lunes a viernes”, y una acción concreta “que suene esta melodía, hasta que la desactive”.
Si cambias «que suene esta melodía…» por abrir «una posición de compra de 1 lote», tienes un algoritmo de trading.
Pues esto es lo que hacemos para hacer trading algorítmico; vamos a definir unas reglas y, cuando se cumplan, se realizarán una serie de acciones.
Veamos las familias de algoritmos o con los que yo personalmente me siento más cómodo:
Algoritmos estacionales
Serían aquellas reglas que dependen de un intervalo de tiempo, por ejemplo, de un día de la semana o del mes, de unas horas concretas o bien de un período de tiempo mayor: semanas, meses, estaciones, etcétera. Veamos algunos ejemplos sencillos:
Imaginemos que el oro tiende a subir durante el fin de semana (por cierto, este es un patrón real). Una regla de entrada (o algoritmo) podría ser:
- Si es viernes y son las seis de la tarde: compra.
- Si es lunes a las 8 de la mañana: cierra la compra.
Supongamos ahora que, en los meses más fríos en Europa, el precio del gas natural sube. Si esto fuera así, una posible regla de entrada (o algoritmo) podría ser:
- Si es 1 de agosto: compra.
- Si es 1 de enero: cierra la compra.
Algoritmos basados en los precios
Serían aquellas reglas que dependen de lo que haga el precio en el momento de ejecutar la regla que estamos evaluando en relación a lo que haya hecho el precio en el pasado. Volvamos con los ejemplos prácticos:
Supongamos que si el SP500 baja durante tres días consecutivos, hay una probabilidad del 80% de que el cuarto día suba y vaya a tocar la media diaria de los últimos 5 períodos (otro patrón real). Podríamos crear un algoritmo que:
- Compre si los tres días previos ha bajado.
- Cierre la compra a partir del cuarto día en el momento que el precio cruce dicha media.
Imaginemos ahora que el Nasdaq tiende a subir si en las 24 horas previas ha tenido una caída superior al 6%. Podríamos pensar en un algoritmo que:
- Compre si el precio cae por encima del 6% en las últimas 24 horas.
- Cierre la compra en el máximo de las últimas 48 horas.
Algoritmos basados en indicadores técnicos
En trading, tenemos un sinfín de indicadores técnicos. El ejemplo más sencillo que se me ocurre es una media del valor de cierre diario.
Imaginemos que calculamos la media de las últimas seis sesiones del cierre del petróleo y que sabemos que, si el precio pierde la media de esas seis últimas sesiones, tiene una probabilidad de bajar un 2% adicional. Pues entonces, podríamos crear un algoritmo que:
- Venda si el precio actual supera la media del cierre de los últimos seis días.
- Cierre la venta cuando el precio supere en un 2% el precio cuando cruzó dicha media.
Tenemos cientos de indicadores técnicos con los que poder trabajar, algunos muy famosos como el RSI, el estocástico, las bandas de Bollinger, la desviación estándar, etcétera.
Conclusión sobre los algoritmos
Los algoritmos no dejan de ser reglas, que si se cumplen disparan una operación de compra o venta al mercado. Existen muchos más tipos de algoritmos, puedes ampliar información en este articulo 6 tipos de estrategias de trading algorítmico, donde analizamos los 6 tipos de sistemas o estrategias sobre los que podemos construir robots de trading.
Al final de este artículo vas a tener un resumen de todos los links que sugiero hacia a otros artículos, por lo que no seas impaciente, lee tranquilo del tirón y al final del artículo en la tabla de links decide cual es el siguiente. No olvides dejar un comentario, sobre el artículo!
Pero para que tengamos un sistema de trading además de un algoritmo tenemos que tener en cuenta muchas otras cosas en consideración: el nivel de riesgo, el nivel de stop (o protección), el nivel de beneficio, el tamaño de la posición y un sinfín de de aspectos. Te invito a que una vez hayas acabado este artículo continúes con este 5 pasos para crear un robot de trading algorítmico.
Puedes consultar un listado con todos los artículos relacionados con este en el resumen.
El programa informático que sea capaz de convertir esas reglas en una orden al mercado
El software es un tema un poco complejo, pero voy a tratar de simplificarlo al máximo para no liarlo. Los traders algorítmicos utilizamos varios tipos de software, pero los dos tipos fundamentales son utilizados para:
- Generar, validar y realizar las pruebas de robustez a los algoritmos. Ejemplos de estos tipos de aplicaciones son Strategy Quant, Build Alpha, EA Studio, etc. Puedes ampliar información en 4 pruebas de robustez en el trading algorítmico.
- Operar automáticamente en los mercados. Estas son las llamadas plataformas de trading que se utilizan para abrir y cerrar operaciones. Ejemplos de este tipo de plataforma son Metatrader, NinjaTrader, TradeStation, etc.
Es importante saber las plataformas que admite nuestro bróker o exchange, ya que algunas plataformas permiten el trading algorítmico y otras no. Muchas veces, los traders algorítmicos seleccionamos los brókers o exchanges con los que vamos a trabajar en función de las plataformas disponibles para operar algorítmicamente.
Después viene el tema del lenguaje de programación. Cada plataforma utiliza su lenguaje de programación. Nuestro algoritmo estará escrito en un idioma de programación concreto que sirva para la plataforma del bróker con el que vayamos a operar.
Por ejemplo, si nuestro bróker admite Metatrader, tendremos que programar nuestro algoritmo en MQL, que es el idioma de programación que utiliza Metatrader, mientras que si admite MultiCharts, tendremos que utilizar EasyLanguage para programar nuestro algoritmo, ya que es el idioma de programación de MultiCharts.
Los idiomas de programación son varios, desde los mencionados MQL, EasyLanguage o el famoso Python. El saber programar era en el pasado muy importante y de hecho era la principal barrera de entrada del público particular al trading algorítmico.
El programar ha dejado de ser un problema para el trader retail ya que existe software como Strategy Quant, que además de generar, validar y realizar las pruebas de robustez, que a golpe de click te genera el código en el idioma que necesites (consulta los idiomas disponibles). Una vez tengamos el código, lo instalaremos en nuestra plataforma de trading y… a operar que son 2 días…
Puedes ampliar información en StrategyQuant: ¿El mejor software de trading algorítmico?
Una conexión directa y estable de nuestro programa informático con el bróker o exchange en el que operamos
La mejor opción para que nuestro algoritmo esté siempre funcionando y que nuestra operativa no se vea perjudicada por cortes de luz o pérdidas de conexión a Internet (que podría arruinar nuestro trading) es contratar un VPS (servidor privado virtual).
Un VPS no deja de ser un ordenador que tienes alquilado en un proveedor externo que te garantiza plena operatividad. Por muy pocos euros al mes (muchos menos de lo que puedes pensar) puedes tener un VPS para realizar trading, además puedes geolocalizarlo cerca de los servidores de tu bróker, el estar cerca de tu bróker a priori te ayudará a que tus operaciones lleguen antes al mercado.
Pongamos el ejemplo de las webs. Si tú tienes una web, esa web la tienes colgada en un proveedor de hosting; es decir que la tienes en un proveedor que te asegura conectividad 24 x 7 y protección frente, por ejemplo, a virus, a cortes de luz, etcétera. Pues de la misma manera, los traders algorítmicos particulares contratamos un VPS donde instalamos la plataforma de trading y desde ese “ordenador” operamos de forma automática.
Si quieres saber más sobre VPS, creo que te va a interesar en este artículo VPS para trading algorítmico: ¿porqué tienes que utilizarlo? donde te explico los motivos y los riesgos de no utilizar un VPS, así como los costes aproximados.
Resumen y links de Trading Algorítmico Fácil
Ahora ya sabemos que el trading algorítmico se basa en disponer de un algorítmo, un código y una conexión estable para operar, pero nos faltan muchas cosas, te sugiero que continúes con el siguiente con el siguiente contenido:
Hasta aquí el artículo, espero que haya sido suficientemente claro y te haya servido. Si ha sido de utilidad déjamelo en comentarios. Si te gustaria ver un contenido concreto que no encuentras déjalo también en comentarios. Respondo a todos los comentarios.
Puedes ampliar información en inglés en investopedia sobre los conceptos básicos del trading algorítmico.