Qué es el trading algorítmico
El trading algorítmico (algo trading) consiste en operar con reglas escritas en un programa. El programa lee precios, decide si abre o cierra una posición y envía la orden sin que la persona intervenga en cada operación.
Los robots de trading o bots forex son esos programas. En MetaTrader se llaman expert advisors (EA): archivos que se cargan en un gráfico y operan según su código.
Automatizar no cambia el riesgo. Un robot ejecuta reglas, no sabe si son buenas. Si las reglas pierden, el robot pierde de forma más rápida y constante que una persona. Operar CFD y forex con apalancamiento puede hacer perder dinero rápido, también con un sistema automático.
¿Listo para probarlo en una cuenta real o demo?
Enlace de afiliado · el trading conlleva un alto riesgo de pérdida
Reglas: la base de cualquier robot
Antes de escribir código hace falta un sistema descrito sin ambigüedad. Si una regla depende de "me parece", no se puede programar. Un sistema completo define:
- Mercado y marco temporal: qué instrumento opera y en qué temporalidad de velas.
- Entrada: la condición exacta que abre una posición de compra o de venta.
- Salida: stop loss (orden que cierra con pérdida en un nivel fijado), take profit (cierre con ganancia en un nivel fijado), cierre por tiempo o por señal contraria.
- Tamaño de posición: cuánto se arriesga por operación, en relación con el saldo. Ver gestión de riesgo.
- Filtros: horarios en que no opera, spread máximo aceptado, días con noticias importantes.
- Límites de seguridad: cantidad máxima de posiciones abiertas, pérdida diaria a partir de la cual se detiene.
Ejemplo hipotético (solo para ilustrar la estructura, no es una recomendación ni tiene resultados asociados): "Si la media móvil rápida cruza por encima de la lenta al cierre de la vela, abrir compra; stop loss bajo el último mínimo; cerrar si se produce el cruce contrario; no operar si el spread supera un límite definido". La lógica del cruce se explica en cruce de medias móviles.
Conviene dejar todo esto por escrito en un plan de trading.
Del sistema al código
En MetaTrader 4 y MetaTrader 5 los expert advisors se escriben en MQL, el lenguaje propio de la plataforma, con el editor que viene incluido. Otra vía es programar en un lenguaje general como Python y conectarse a la plataforma o a una API del bróker, si este la ofrece.
Puntos que un programador de robots revisa siempre:
- Cuándo se calcula la señal: al cierre de la vela o en cada tick (cada cambio de precio). Calcular en cada tick con datos de una vela que aún no cerró da señales que luego desaparecen.
- Manejo de errores: órdenes rechazadas, precio cambiado (requote), mercado cerrado, falta de margen. Un robot que no maneja errores puede repetir órdenes o quedarse con posiciones sin stop.
- Estado tras un reinicio: si la plataforma se cierra, el EA debe reconocer las posiciones que ya tenía abiertas.
- Tamaño de lote válido: respetar el lote mínimo, el paso de lote y el margen disponible de la cuenta.
Backtest: probar con datos pasados
El backtest ejecuta el robot sobre precios históricos para ver cómo se habría comportado. En MetaTrader se hace con el Probador de estrategias. Está explicado en detalle en backtesting.
Un backtest solo es útil si es realista:
- Calidad de datos: datos de baja resolución inventan cómo se movió el precio dentro de la vela. Para robots de stops cortos eso cambia el resultado.
- Costos: incluir spread, comisión y swap (costo o abono por mantener la posición abierta de un día a otro). Un sistema rentable sin costos puede ser perdedor con ellos.
- Deslizamiento: en la cuenta real la orden se ejecuta a veces a un precio peor que el previsto.
- Sesgo de anticipación (look-ahead): el código usa, sin querer, información que en ese momento todavía no existía.
Sobreoptimización
Es la trampa más común. Consiste en ajustar parámetros hasta que la curva histórica se ve perfecta. El robot queda adaptado al ruido del pasado y falla con datos nuevos.
Formas de reducirla:
- Pocas reglas y pocos parámetros.
- Separar los datos: optimizar en un tramo y validar en otro que el robot no vio.
- Preferir parámetros cuyos vecinos también den resultados parecidos, no un valor aislado que funciona solo.
- Probar en distintos instrumentos y períodos de mercado.
Forward test: probar en tiempo real
El forward test ejecuta el robot con precios en vivo, sin conocer el futuro. Se suele hacer en una cuenta demo, y está tratado en forward testing y demo.
Sirve para detectar lo que el backtest no muestra: errores de código, problemas de conexión, diferencias entre spreads históricos y actuales. Una demo tampoco reproduce todo: en real la ejecución y la psicología pueden ser distintas. Por eso se comparan las operaciones del forward test con las que el backtest habría hecho en el mismo período; si difieren mucho, hay algo que revisar antes de seguir.
Infraestructura: VPS y conexión
Un expert advisor de MetaTrader funciona solo mientras la plataforma está abierta y conectada. Si se apaga la computadora o se corta internet, el robot deja de gestionar sus posiciones.
Un VPS (servidor privado virtual) es una computadora remota encendida de forma continua donde se instala la plataforma. Aporta:
- Funcionamiento sin depender de la luz ni la conexión de casa.
- Menor latencia (tiempo de ida y vuelta de la orden) si está cerca del servidor del bróker.
No aporta rentabilidad. Un sistema perdedor sigue perdiendo en un VPS. También hay que vigilarlo: actualizaciones, reinicios, espacio en disco y revisar el registro de la plataforma.
Cómo pierde dinero un robot de trading
- Cambio de régimen de mercado: un sistema pensado para tendencia pierde en rango, y al revés.
- Sobreoptimización: funciona en el pasado y no fuera de él.
- Costos subestimados: spreads más amplios en noticias o en horarios de poca liquidez, comisiones, swaps.
- Gaps: el precio abre lejos del cierre anterior, por ejemplo tras el fin de semana, y el stop se ejecuta peor de lo previsto.
- Errores de código: órdenes duplicadas, stops no colocados, cálculo de lote equivocado.
- Fallas técnicas: desconexión, plataforma cerrada, VPS reiniciado.
- Martingala y grid: aumentar el tamaño tras cada pérdida o abrir órdenes en red da curvas suaves hasta que una racha adversa vacía la cuenta. Ver estrategia martingala y grid trading y riesgos.
- Apalancamiento excesivo: con más apalancamiento una racha normal de pérdidas puede llevar al stop out (cierre forzoso por falta de margen).
- Robots comprados con promesas: capturas de resultados sin verificar, cuentas demo presentadas como reales, historiales cortos. Ningún vendedor puede garantizar ganancias. Lo mismo aplica a señales de trading y copy trading.
- Intervención emocional: apagar el robot tras pérdidas y encenderlo tras ganancias rompe la lógica que se probó. Ver psicología del trading.
Preguntas frecuentes
¿Qué diferencia hay entre un robot de trading y un expert advisor?
Ninguna de fondo. Expert advisor es el nombre que usa MetaTrader para sus robots; bot forex o robot de trading son nombres generales.
¿Necesito saber programar?
Para crear un robot propio, sí, o contratar a alguien y entender lo que entrega. Sin entender el código no se puede verificar qué hace con el dinero de la cuenta.
¿Un buen backtest garantiza resultados?
No. Muestra cómo se habría comportado con datos pasados y supuestos de costos. El mercado futuro puede ser distinto.
¿Es obligatorio usar un VPS?
No es obligatorio, pero el robot solo opera mientras la plataforma está abierta y conectada. Un VPS resuelve la disponibilidad, no la calidad del sistema.
¿El trading algorítmico reduce el riesgo?
Elimina algunas decisiones impulsivas, pero añade riesgos técnicos y de sobreoptimización. El trading apalancado con CFD y forex sigue pudiendo generar pérdidas rápidas.
¿Dónde aprendo los conceptos previos?
En conceptos básicos y en el glosario de trading.
