Cuando una estrategia de trading ya ha sido definida y probada, puede surgir una pregunta lógica: ¿es posible mejorar sus parámetros sin convertirla en una estrategia excesivamente ajustada al pasado?
La respuesta es sí, pero con importantes matices.
La optimización de estrategias de trading consiste en analizar diferentes configuraciones de una estrategia para identificar qué parámetros han ofrecido un comportamiento más adecuado bajo determinadas condiciones históricas.
Puede utilizarse, por ejemplo, para estudiar diferentes valores de un Stop Loss, Take Profit, periodo de un indicador, horario de operación o filtro de entrada.
Sin embargo, optimizar no significa simplemente buscar la combinación que haya obtenido el mayor beneficio en el pasado.
Una optimización mal planteada puede producir exactamente lo contrario de lo que buscamos: una estrategia que parece excelente en los datos históricos, pero que pierde eficacia cuando se enfrenta a datos nuevos.
Por eso, la optimización debe entenderse como un proceso de análisis y validación, no como una herramienta para fabricar resultados históricos perfectos.
¿Qué es la optimización de una estrategia de trading?
La optimización de una estrategia consiste en probar diferentes valores de determinados parámetros para estudiar cómo cambia su comportamiento.
Imaginemos una estrategia que utiliza una media móvil.
Podríamos analizar diferentes periodos:
- 10
- 20
- 30
- 50
- 100
El objetivo no debería ser simplemente descubrir qué periodo produjo el mayor beneficio histórico.
También interesa comprobar:
- Drawdown.
- Número de operaciones.
- Estabilidad.
- Profit Factor.
- Rachas de pérdidas.
- Consistencia entre diferentes periodos.
- Comportamiento en diferentes condiciones de mercado.
De esta forma, la optimización puede ayudarnos a comprender qué configuración presenta un comportamiento razonablemente robusto.
¿Para qué sirve optimizar una estrategia?
La optimización puede tener diferentes objetivos.
Mejorar determinados parámetros
Puede ayudar a estudiar si determinados valores son más adecuados que otros.
Reducir determinados riesgos
Por ejemplo, podemos analizar qué configuración consigue reducir el drawdown sin deteriorar excesivamente el resto de las métricas.
Adaptar una estrategia a un mercado
Una estrategia desarrollada para Forex puede necesitar parámetros diferentes cuando se aplica a otro activo.
Comprender mejor el comportamiento del sistema
Las pruebas pueden revelar qué variables tienen realmente influencia sobre los resultados.
Este último punto es especialmente importante.
La optimización no debería utilizarse únicamente para obtener un número de rentabilidad, sino también para entender cómo responde una estrategia ante diferentes configuraciones.
¿Qué elementos de una estrategia se pueden optimizar?
Prácticamente cualquier parámetro definido de forma cuantitativa puede ser susceptible de análisis.
Algunos ejemplos son:
Indicadores
- Periodos de medias móviles.
- Periodos del RSI.
- Parámetros del MACD.
- ATR.
- Bandas de Bollinger.
- Otros indicadores.
Entrada
- Distancia respecto a un nivel.
- Número de velas utilizadas.
- Confirmaciones necesarias.
- Umbrales determinados.
Salida
- Stop Loss.
- Take Profit.
- Trailing Stop.
- Salidas parciales.
- Relación entre riesgo y beneficio.
Gestión monetaria
- Riesgo por operación.
- Tamaño de posición.
- Número máximo de operaciones.
- Pérdida máxima diaria.
Tiempo
- Horarios de entrada.
- Sesiones.
- Días de la semana.
- Periodos determinados del mercado.
Sin embargo, que un parámetro pueda optimizarse no significa que debamos hacerlo.
Cuantos más parámetros intentemos ajustar, mayor puede ser el riesgo de adaptar excesivamente la estrategia al histórico disponible.
Optimización frente a backtesting: ¿son lo mismo?
No.
El backtesting consiste en comprobar cómo habría funcionado una estrategia aplicándola sobre datos históricos.
La optimización consiste en probar diferentes configuraciones de esa estrategia para estudiar cómo cambia su comportamiento.
Por ejemplo:
Backtesting:
¿Cómo habría funcionado esta estrategia utilizando una media de 50 periodos?
Optimización:
¿Cómo habría funcionado utilizando medias de 20, 30, 40, 50, 60, 70 y 80 periodos?
Por tanto, ambas técnicas están relacionadas, pero tienen objetivos diferentes.
Si quieres profundizar en el concepto de backtesting, puedes consultar Backtesting de una estrategia de trading: cómo comprobar si funciona.
Optimización y sobreoptimización: una diferencia fundamental
Uno de los mayores peligros de este proceso es confundir optimización con sobreoptimización.
Una optimización busca encontrar una configuración razonable y robusta.
La sobreoptimización intenta encontrar una configuración que encaje de manera excesivamente precisa con los datos históricos disponibles.
Por ejemplo, imaginemos que probamos cientos de combinaciones hasta encontrar aquella que consigue el mejor resultado histórico.
El problema es que esa combinación puede haber funcionado bien precisamente porque se ha adaptado a las características particulares de ese periodo.
Cuando aparecen datos nuevos, el comportamiento puede deteriorarse considerablemente.
Este problema está estrechamente relacionado con el overfitting en trading, que analizaremos específicamente en el siguiente artículo de esta categoría.
Esto dice la CFTC sobre sistemas de trading vendidos por Internet, especialmente por sus advertencias sobre resultados hipotéticos y las diferencias entre resultados históricos y condiciones reales.
¿Cómo realizar una optimización correctamente?
Una optimización responsable puede dividirse en diferentes fases.
1. Definir la estrategia
Antes de optimizar debemos saber exactamente qué estrategia estamos evaluando.
Las reglas de entrada, salida y gestión deben estar claramente definidas.
No tiene sentido comenzar a modificar parámetros sin saber qué lógica estamos intentando comprobar.
2. Elegir los parámetros que realmente necesitan optimización
No todos los parámetros deben modificarse.
Conviene identificar primero cuáles tienen una influencia relevante sobre la estrategia.
Por ejemplo, si una estrategia utiliza cinco filtros diferentes, puede no ser necesario optimizar todos ellos.
Una buena práctica es mantener la lógica principal estable y estudiar únicamente aquellas variables que tengan una justificación operativa.
3. Establecer rangos razonables
Supongamos que queremos analizar una media móvil.
En lugar de probar todos los valores posibles, podemos definir un rango razonable:
20 → 100 periodos
y establecer un incremento:
5 periodos
De esta forma podemos comparar:
20, 25, 30, 35, 40… hasta 100.
El rango debe tener sentido desde el punto de vista de la estrategia y del mercado analizado.
4. Elegir una métrica adecuada
No debemos utilizar únicamente el beneficio neto como criterio.
También podemos estudiar:
- Profit Factor.
- Drawdown máximo.
- Sharpe Ratio.
- Sortino Ratio.
- Expectativa.
- Porcentaje de operaciones ganadoras.
- Racha máxima de pérdidas.
- Número de operaciones.
Una estrategia con mayor beneficio pero un drawdown mucho más elevado puede ser menos interesante que otra con un resultado algo menor pero mayor estabilidad.
¿Qué métrica debemos utilizar para optimizar?
No existe una única métrica universal.
La elección dependerá de lo que queramos conseguir.
Si nuestra prioridad es controlar el riesgo, el drawdown puede tener una importancia elevada.
Si buscamos evaluar la relación entre ganancias y pérdidas, podemos observar el Profit Factor.
Si queremos estudiar el rendimiento ajustado al riesgo, pueden ser útiles métricas como el Sharpe Ratio o el Sortino Ratio.
Por eso es recomendable utilizar varias métricas conjuntamente.
Una estrategia no debería considerarse mejor simplemente porque haya conseguido el mayor beneficio histórico.
Optimización basada en beneficio
Es probablemente el método más intuitivo.
Se selecciona la configuración que produce el mayor beneficio histórico.
Por ejemplo:
| Configuración | Beneficio | Drawdown |
|---|---|---|
| A | 8.000 € | 18 % |
| B | 9.500 € | 32 % |
| C | 8.800 € | 21 % |
Si solamente miramos el beneficio, elegiríamos B.
Pero si tenemos en cuenta el riesgo, quizá A o C sean configuraciones más interesantes.
Este ejemplo demuestra por qué optimizar exclusivamente por beneficio puede ser peligroso.
Optimización basada en riesgo
Otra posibilidad es priorizar la estabilidad y el control de las pérdidas.
Podemos buscar configuraciones con:
- Menor drawdown.
- Menores rachas de pérdidas.
- Riesgo más estable.
- Menor volatilidad de resultados.
Esta aproximación puede ser especialmente interesante cuando el objetivo no es maximizar el beneficio histórico, sino conseguir una estrategia con un comportamiento más controlado.
Optimización multiobjetivo
Una alternativa más completa consiste en considerar varios objetivos simultáneamente.
Por ejemplo:
- Beneficio.
- Drawdown.
- Profit Factor.
- Número de operaciones.
- Estabilidad.
De esta manera se evita que una sola métrica domine completamente el proceso.
En sistemas automatizados, este enfoque puede proporcionar una visión más equilibrada del comportamiento de diferentes configuraciones.
¿Qué es una superficie de optimización?
Cuando analizamos dos o más parámetros podemos representar los resultados para observar cómo se comporta la estrategia.
Por ejemplo:
- Eje X: periodo de media móvil.
- Eje Y: Stop Loss.
- Resultado: beneficio o determinada métrica de riesgo.
Esto permite observar diferentes zonas de resultados.
La pregunta importante no es necesariamente:
¿Dónde está el punto con el máximo beneficio?
También debemos preguntarnos:
¿Existe una zona amplia donde los resultados sean razonablemente buenos?
Una zona amplia de resultados aceptables puede ser más interesante que un único punto extremadamente rentable.
¿Por qué una zona estable puede ser mejor que el mejor resultado?
Imaginemos dos situaciones.
Caso A
Una configuración concreta produce un beneficio excepcional.
Pero si modificamos ligeramente el parámetro, el resultado cae de forma drástica.
Caso B
Varias configuraciones cercanas producen resultados similares y razonablemente buenos.
El segundo caso puede ofrecer una señal de mayor estabilidad.
Esto no garantiza que la estrategia vaya a funcionar en el futuro, pero puede ser una característica favorable durante el análisis.
Por eso, en una optimización es importante estudiar la estabilidad de los resultados alrededor de la configuración elegida.
Optimización y datos históricos
Los datos utilizados tienen una importancia fundamental.
Si optimizamos una estrategia sobre un periodo demasiado corto, podemos obtener conclusiones poco representativas.
Conviene analizar diferentes situaciones de mercado cuando sea posible:
- Tendencias.
- Rangos.
- Alta volatilidad.
- Baja volatilidad.
- Periodos de crisis.
- Diferentes condiciones de liquidez.
Cuanto más limitada sea la muestra, mayor precaución debemos tener al interpretar los resultados.
In-sample y out-of-sample
Una de las herramientas más importantes para evitar conclusiones demasiado optimistas es separar los datos.
Datos in-sample
Son los datos utilizados para desarrollar o ajustar la estrategia.
Datos out-of-sample
Son datos que no se han utilizado para realizar la optimización.
Una metodología sencilla sería:
Datos históricos → optimización → configuración seleccionada → prueba con datos no utilizados
Si una estrategia funciona razonablemente bien también sobre datos que no participaron en la optimización, tenemos una información adicional sobre su comportamiento.
Pero tampoco debemos interpretar esto como una garantía de resultados futuros.
¿Qué es la optimización walk-forward?
El análisis walk-forward intenta acercarse más a la forma en que una estrategia tendría que adaptarse a datos nuevos.
De manera simplificada:
- Se utiliza un periodo histórico para optimizar.
- Se selecciona una configuración.
- Se prueba sobre un periodo posterior que no se utilizó durante la optimización.
- Se desplaza la ventana temporal.
- Se vuelve a optimizar.
- Se vuelve a probar sobre datos nuevos.
Este proceso puede repetirse varias veces.
El objetivo es comprobar si la estrategia mantiene un comportamiento razonable cuando las condiciones históricas van cambiando.
¿Cuándo puede tener sentido optimizar una estrategia?
La optimización puede ser útil cuando:
- La estrategia está claramente definida.
- Existen parámetros cuantificables.
- Hay suficiente información histórica.
- Se dispone de datos de calidad.
- Se conocen los costes de operación.
- Se utilizan criterios de evaluación razonables.
- Se realizan pruebas con datos que no participaron en la optimización.
En cambio, puede ser poco útil cuando intentamos modificar continuamente una estrategia simplemente porque ha tenido una mala racha reciente.
¿Optimizar después de una mala racha es buena idea?
No necesariamente.
Una racha negativa puede formar parte del comportamiento normal de una estrategia.
Modificar los parámetros después de cada periodo desfavorable puede provocar una cadena de ajustes que termine destruyendo la lógica original.
Por ejemplo:
Pierde durante un mes → modificamos el Stop Loss.
Vuelve a perder → cambiamos el indicador.
Vuelve a perder → modificamos el horario.
Vuelve a perder → añadimos otro filtro.
Al final podemos terminar con una estrategia completamente diferente y excesivamente adaptada a un periodo concreto.
Antes de modificar una estrategia conviene analizar si el comportamiento observado está realmente fuera de sus características históricas esperadas.
Ventajas de optimizar una estrategia
Una optimización correctamente planteada puede aportar diferentes ventajas.
Permite comparar configuraciones
Podemos analizar objetivamente diferentes alternativas.
Ayuda a identificar parámetros sensibles
Podemos descubrir qué variables tienen mayor influencia sobre los resultados.
Puede ayudar a controlar el riesgo
Es posible estudiar configuraciones con diferentes niveles de drawdown.
Permite conocer mejor la estrategia
El proceso de optimización puede proporcionar información adicional sobre cómo responde el sistema.
Facilita el desarrollo de sistemas automáticos
En estrategias programadas, analizar diferentes parámetros puede ser una parte importante del proceso de desarrollo.
Riesgos de la optimización
La optimización también tiene importantes riesgos.
Sobreajuste
Es el principal peligro.
Una estrategia puede quedar excesivamente adaptada a los datos históricos.
Demasiados parámetros
Cuantos más parámetros ajustemos, mayor puede ser la complejidad y el riesgo de encontrar combinaciones que simplemente funcionaron por casualidad.
Selección del mejor resultado
Elegir únicamente la configuración con mayor beneficio puede generar una falsa sensación de seguridad.
Datos insuficientes
Un histórico pequeño puede producir resultados poco representativos.
Ignorar los costes reales
Spread, comisiones, slippage y otros costes pueden modificar considerablemente los resultados.
Optimizar continuamente
Cambiar constantemente una estrategia porque no está funcionando como esperamos puede convertir el proceso en una búsqueda interminable de resultados históricos perfectos.
Optimización de una estrategia automática
En un Expert Advisor, la optimización puede realizarse mediante diferentes combinaciones de parámetros.
Por ejemplo:
- Stop Loss.
- Take Profit.
- Periodo de indicadores.
- Horario.
- Filtros.
- Distancias.
- Riesgo.
- Condiciones de salida.
La plataforma puede ejecutar controles y numerosas pruebas y comparar los resultados.
Sin embargo, que un ordenador pueda realizar miles de combinaciones rápidamente no significa que debamos confiar automáticamente en la mejor de ellas.
La velocidad de cálculo no sustituye al análisis.
Esto es especialmente importante cuando se desarrollan robots de trading.
Optimización y gestión del riesgo
La optimización nunca debería utilizarse para ocultar un nivel de riesgo excesivo.
Una estrategia puede mostrar una rentabilidad histórica elevada utilizando un riesgo por operación demasiado alto.
Por eso conviene estudiar conjuntamente:
- Beneficio.
- Drawdown.
- Riesgo por operación.
- Rachas de pérdidas.
- Tamaño de posición.
- Pérdida máxima.
La optimización debe estar subordinada a una estructura de riesgo razonable.
Puedes profundizar en este aspecto en el artículo ¿Qué es la gestión del riesgo? Claves para proteger el capital.
Un ejemplo sencillo de optimización
Imaginemos una estrategia automática que utiliza una media móvil y un Stop Loss.
Queremos estudiar diferentes combinaciones.
| Media móvil | Stop Loss | Beneficio histórico | Drawdown |
|---|---|---|---|
| 20 | 20 puntos | 7.200 € | 18 % |
| 20 | 30 puntos | 8.100 € | 23 % |
| 30 | 20 puntos | 7.800 € | 20 % |
| 30 | 30 puntos | 8.400 € | 24 % |
| 40 | 20 puntos | 7.900 € | 21 % |
| 40 | 30 puntos | 8.200 € | 23 % |
La configuración de 30/30 presenta el mayor beneficio.
Pero no deberíamos detener el análisis ahí.
Podemos observar que varias configuraciones cercanas presentan resultados relativamente similares.
Eso puede ser más interesante que encontrar una única combinación excepcional.
Después sería necesario comprobar cómo se comportan esas configuraciones con datos que no participaron en la optimización.
¿La mejor optimización es la que más gana?
No.
Esta es probablemente una de las ideas más importantes del artículo.
El objetivo de optimizar no debería ser conseguir el mejor resultado histórico posible.
El objetivo debería ser encontrar una configuración razonable, coherente y suficientemente robusta dentro de las condiciones que estamos estudiando.
Un resultado histórico espectacular puede ser menos interesante que otro algo más moderado si este último presenta:
- Mayor estabilidad.
- Menor drawdown.
- Menor sensibilidad a cambios pequeños.
- Buen comportamiento fuera de muestra.
- Resultados consistentes en diferentes periodos.
Checklist para optimizar una estrategia de trading
Antes de considerar finalizada una optimización, conviene comprobar:
- ¿La estrategia está claramente definida?
- ¿Sé qué parámetros estoy optimizando?
- ¿Tengo una justificación para modificar esos parámetros?
- ¿He utilizado suficientes datos históricos?
- ¿He incluido costes realistas?
- ¿He analizado más de una métrica?
- ¿He estudiado el drawdown?
- ¿He analizado las rachas de pérdidas?
- ¿He comprobado la estabilidad de los resultados?
- ¿He separado datos in-sample y out-of-sample?
- ¿He realizado pruebas con datos nuevos?
- ¿Estoy evitando elegir únicamente el máximo beneficio?
- ¿Estoy evitando añadir demasiados parámetros?
- ¿He comprobado si los resultados se mantienen con pequeños cambios?
- ¿Tengo un criterio definido para aceptar o rechazar la estrategia?
Si varias respuestas son negativas, todavía queda trabajo de validación antes de considerar fiable el resultado de la optimización.
Optimización, robustez y realidad del mercado
Una estrategia optimizada sigue siendo una hipótesis basada en datos históricos.
Los mercados no permanecen constantes.
Cambian la volatilidad, la liquidez, los costes, el comportamiento de los participantes y las condiciones macroeconómicas.
Por eso una estrategia no debería evaluarse únicamente por la configuración que produjo el mejor resultado histórico.
La pregunta más importante es:
¿La estrategia mantiene un comportamiento razonable cuando dejamos de darle exactamente las condiciones sobre las que fue optimizada?
Esta pregunta nos lleva directamente al concepto de robustez.
Conclusión
La optimización de estrategias de trading puede ser una herramienta muy útil para estudiar diferentes configuraciones y comprender mejor el comportamiento de una estrategia.
Permite analizar parámetros, comparar alternativas, estudiar el riesgo y buscar configuraciones que presenten resultados razonablemente estables.
Pero optimizar no significa buscar la combinación que más dinero habría ganado en el pasado.
El verdadero riesgo aparece cuando ajustamos demasiados parámetros, utilizamos muestras insuficientes o seleccionamos únicamente el mejor resultado histórico. En esas circunstancias podemos terminar con una estrategia sobreoptimizada que funciona muy bien en el pasado y mucho peor cuando aparecen datos nuevos.
Por eso, una optimización responsable debe combinar datos suficientes, criterios de riesgo, varias métricas, análisis de estabilidad, pruebas fuera de muestra y validaciones posteriores.
En trading algorítmico, una buena optimización no es la que consigue el gráfico histórico más espectacular, sino aquella que ayuda a identificar una configuración razonable sin perder de vista que el futuro siempre será diferente del pasado.
Continúa aprendiendo
Si quieres seguir profundizando en trading algorítmico y automatización, puedes continuar con:
- ¿Qué es el trading algorítmico y cómo funciona?
- Trading automático: qué es, cómo funciona y cuáles son sus ventajas y riesgos
- ¿Qué es un Expert Advisor (EA) en trading y cómo funciona?
- Backtesting de una estrategia de trading: cómo comprobar si funciona
- Pruebas de robustez en trading: cómo saber si una estrategia automatizada funciona
- Overfitting en trading: qué es y cómo evitar la sobreoptimización
- ¿Qué es la gestión del riesgo? Claves para proteger el capital
Ver todas las entradas del blog
⚠️ Aviso importante
Este artículo tiene únicamente finalidad educativa e informativa. La información presentada no constituye asesoramiento financiero, recomendación de inversión ni una invitación a comprar o vender instrumentos financieros.
Los ejemplos utilizados tienen carácter exclusivamente ilustrativo y no representan resultados que puedan obtenerse en una operativa real.
Antes de utilizar una estrategia de trading o automatizarla, es responsabilidad del usuario comprender su funcionamiento, evaluar sus riesgos y determinar si resulta adecuada para sus circunstancias.
⚠️ Aviso de riesgo
El trading conlleva un elevado nivel de riesgo y puede ocasionar pérdidas de capital.
La optimización de una estrategia no garantiza que esta vaya a ser rentable en el futuro. Los resultados obtenidos mediante datos históricos, backtesting u optimización pueden diferir significativamente de los resultados obtenidos en condiciones reales de mercado.
Factores como el spread, las comisiones, el slippage, la liquidez, la volatilidad y los cambios en las condiciones del mercado pueden afectar al resultado final.
Una estrategia optimizada puede sufrir pérdidas y periodos prolongados de resultados negativos.
Nunca debes arriesgar un capital cuya pérdida no puedas asumir.
