Walk forward: el test de optimización para tus sistemas de trading

 


Menú


Rubén Martínez

febrero 28, 2020

Sin comentarios

Rubén Martínez

febrero 28, 2020

4:58 pm

No Comments

Walk forward: el test de optimización para tus sistemas de trading

Antes de comenzar a hablar de la optimización de un sistema trading, es importante que sepas en qué se basan estos sistemas o porqué trabajar con ellos. Para no hacer este artículo infumable, te dejo este post sobre qué es y cómo crear una estrategia de trading. Una vez comprendido esto, puedes comenzar a buscar tests y formas de optimización para obtener mejores resultados.


En este artículo te voy a hablar sobre una de las pruebas de trading más populares que existen en la actualidad. Se trata del test walk forward.


Índice 

¿Qué es la optimización de un sistema trading?

Ratios para evaluar sistemas

Ratio Beneficio Neto

Ratio por medio del Drawdown

R Squared

El backtest

¿Qué es el sobreoptimizar?

¿En qué consiste la optimización por Walk Forward?

¿Con qué finalidad se usa la optimización con walk forward en sistemas trading?

Una correcta optimización

¿Cómo usar el walk forward test?

¿Qué es la optimización de un sistema trading?

Todos nos hemos hecho la pregunta de qué es optimizar. El optimizado de un sistema trading, se basa en el estudio de un histórico de premisas o acontecimientos pasados. Esto se hace con el objetivo de obtener un número o valores cercanos para considerar nuestro sistema rentable.


En otras palabras, se basa en realizar un estudio pertinente acerca de los mejores resultados ocurridos en el pasado, esto buscando obtener un rango de posibles resultados positivos para el mercado en el que se está trabajando.


Ya que la optimización, se basa en encontrar los posibles números o valores que se acerquen o asemejen a los posibles valores actuales, es necesario tener en cuenta que se debe tener una información previa del mercado o unas premisas válidas.



Cuando deseas realizar una optimización de algún sistema trading, es necesario tener en cuenta el tipo de función objetivo mediante el cual estás trabajando. Esto se debe a que, para cada tipo de función objetivo, sus valores son distintos.


La función objetivo con el cual estés trabajando, puede verse enmarcado en cualquiera de las ratios para evaluar sistemas. Todos estos ratios se basan en formas distintas de laborar, desde aquí surge la diferencia entre los valores que pueden ser otorgados. Por ejemplo, una función objetivo puede ser que el sistema tenga la máxima ganancia neta posible o bien la mínima pérdida posible. En función de ello, los parámetros de nuestro sistema pueden ser diferentes.


Ratios para evaluar sistemas

Las ratios para evaluar sistemas se basan en las formas que puedes buscar una ganancia. Estos te dan una evaluación acerca del riesgo que puede haber, lo rentable que puede ser, la duración y rentabilidad de las ganancias, entre otros.


Para realizar una optimización de un sistema de trading, es necesario que tengas claro cuál es el ratio a maximizar o el que buscas priorizar. Así, al realizar la optimización buscarás los resultados obtenidos en periodos anteriores y te guiará en los posibles valores a los cuales se puede declinar.


Existen diversos tipos de ratios para evaluar el sistema, te explico tres en este artículo:


Ratio Beneficio Neto

Este es una de las ratios más básicos, lo puedes entender sencillamente como la rentabilidad del sistema. Esta rentabilidad es calculada en base a la inversión inicial. 


Es una de las formas más sencillas de calcular. No obstante, es necesario evaluar ciertas circunstancias para observar si es rentable este sistema en el mercado que se esté operando.


En algunos casos, este sistema únicamente funciona sobre un tiempo limitado. Posteriormente, empiezas a generar mayores pérdidas, que en comparación a las ganancias puede ser descartable.


También debes evaluar el número de operaciones con las cuales podrás obtener ganancias, ya que también puede existir un número limitado de operaciones en las cuales recibirás ganancias (mínimo 150 trades en mi caso pero varía en función del tipo de sistema). Después de esto, se pueden llegar a generar únicamente perdidas de tu capital.


Ratio por medio del Drawdown

Son muchas las personas que usan el Drawdown para optmizar un sistema trading. El Drawdown se basa en la cantidad de pérdidas consecutivas de tu estrategia de trading. Es decir, se evalúa desde el punto más alto que se pudo obtener anteriormente, hasta el punto más bajo obtenido antes de generarse otro punto alto.


Es importante tener en cuenta que la optimización, en estos casos, debe tener un buen margen de error y no caer en la sobre-optimización.


R Squared

El coeficiente de determinación o R2 se utiliza en el contexto de modelos estadísticos cuyo objetivo principal es la predicción de resultados futuros basados ​​en otra información relacionada. 


El valor R2 es un número entre 0 y 1 y describe qué tan bien una línea de regresión se ajusta a un conjunto de datos. 


Cuando el valor de R2 está cerca de 1, esto indica que la línea de regresión se ajusta muy bien a los datos, mientras que un valor de R2 cerca de 0 indica que la línea de regresión no se ajusta a los datos en absoluto. ​


Cuanto mayor sea el valor de R2, mejor será la curva de capital del sistema de comercio. Un valor R2 muy alto debería dar como resultado un sistema de trading rentable con poco drawdown.


El backtest

Esta palabra es muy importante a la hora que realizar la optimización de un sistema trading, ya que su resultado va a depender del estudio de optimización trading. Es pocas palabras, hacer un backtest es realizar y evaluar un histórico de operaciones. Si no sabes lo que es un backtest y su importancia, este artículo te puede ayudar.


Con esto, obtienes un porcentaje de aciertos, la cantidad de drawdown o beneficio neto, entre otros. Estos datos son usados como resultados para introducir los parámetros futuros, buscando obtener un beneficio.



El backtest es necesario realizarlo con ciertas variantes. Cuántas más variantes surjan, más backtest tendrás que hacer, hasta dar con un resultado cerrado, pero debes tener mucho cuidado con la sobreoptimización.


¿Qué es el sobreoptimizar?

En una optimización de un sistema trading, se buscan los valores posibles que puedan generarse en un futuro. Esto se realiza mediante la evaluación de un histórico anterior y una serie de variantes previas. La sobre optimización es jugar con la cartas marcadas. Es establecer los parámetros para los mejores resultados pasados.


Cuando se realizan muchos backtests, el resultado se acerca más a un punto de perfección inexistente. Es decir, un punto donde no existen fallos o márgenes de error. Cuando esto ocurre, es por una saturación de las variantes.


A esta saturación se la denomina sobre- optimización. Es uno de los factores a los cuales se le debe tener mucho cuidado a la hora de optimizar un sistema de trading. Ya que, cuando sobre-optimizas un sistema, el resultado perfecto, no es más que un gran error de valores.


Para evitar que entres en un sobre-optimizado, es recomendable que hagas una optimización con pocos parámetros a optimizar. Al introducir muchos parámetros, puedes caer en una sobre optimización. En mi caso, de hecho, intento no optimizar nada. 


¿En qué consiste la optimización por Walk Forward?

Este es uno de los sistemas de optimización más robustos existentes actualmente. Esto se debe a que realiza una optimización completa, pero un poco tardía y compleja.


Gracias a que su sistema es un poco complejo, si posees un histórico considerable, sus resultados pueden llegar a ser numerosos. En otras palabras, cuánto más histórico poseas, mayor cantidad de resultados puedes obtener.


¿Qué hace que el Walk Forward sea tan bueno, si da numerosos resultados? Se considera que el Walk Forward es uno de los optimizadores más robustos ya que optimiza mediante intervalos del histórico.


Esta cantidad de resultados se pueden reducir. No obstante, debes estar atento en no sobre optimizar.


Las optimización mediante el sistema Walk forward, se realiza analizando intervalos cortos en el histórico de operaciones del mercado.


Es decir, cuando se posee un histórico de 10 años, por ejemplo, se toman los tres primeros años (1, 2 y 3) de histórico, a los mismos se les realiza la optimización y se obtiene el backtest.



Posterior a esto, se toma desde último año de la primera optimización, hasta los dos años consiguientes, esto incluyendo el primer backtest. Es decir, en la segunda optimización se tomarían los años 3, 4 y 5, junto al primer backtest.


Esto se realizara con todos los siguientes años hasta obtener el último backtest. El cual será el resultado de una optimización continua entre todo el historial.


Esta optimización constante y repetitiva es lo que se considera como el Walk Forward y, gracias a su nivel de complejidad, es considerada como una de las más robustas. Sin embargo, suele otorgar resultados muy certeros, dentro del margen de error.


¿Con qué finalidad se usa la optimización con walk forward en sistemas trading?

La función con la que se realiza este tipo de optimización, se basa en la verificación del sistema para un futuro. De la misma forma, lo puedes implementar para la obtención de posibles valores que generen una ganancia.


Todo esto se realiza con una serie de premisas. Es decir, lo debes hacer con un historial de operaciones. Al realizarlo, puedes obtener una idea acerca del mercado en un futuro.


De esta forma, podrás observar si podrá resultar productivo aplicar la estrategia de trading que estés evaluando. En algunos casos, verás que la rentabilidad del sistema o del ratio es únicamente temporal.


Una correcta optimización

Como ya sabes, debes evitar la sobreoptimización, ya que esto no genera más que pérdidas. Uno de los puntos en los que debes fijarte a la hora de realizar una optimización de un sistema trading es evitar los valores únicos o aislados. Un resultado con muy buenos resultdos pero solitario, tiene mucho riesgo.


Imagina que creas una estrategia basada en una media de 20 periodos que funciona perfectamente. Pero que cuando miras sus resultados con una media de 19 o 21 es un completo desastre. ¿No suena muy fiable, verdad?


No quiero decir con esto que tu estrategia de trading funcione bien con cualquier parámetro que uses. Pero lo que buscamos son sistemas robustos y si cualquier cambio sensible hace que los resultados se alteren de manera brusca, lo que tenemos no es una sistema robusto.


Debes tener presente que el mercado puede realizar cambios drásticos y bruscos. Razón por la cual, es recomendable que realices varias optimizaciones en intervalos considerables de tiempo.


Así aseguras que los valores obtenidos la primera vez, sigan siendo constantes. De no ser así, puede que el mercado realizara un cambio y debes acoplarte a dicho cambio.


¿Cómo usar el walk forward test?

En mi caso no lo uso para optimizar mis sistemas de trading. Lo uso como test para evaluar su robustez, ya que cuando lo aplicamos estamos viendo diferentes periodos fuera de la muestra.


De esta manera obtenemos una mayor información de cómo se puede comportar en el futuro y de la consistencia de la estrategia. Al final, como ves se trata de tener las posibilidades a nuestro favor con estrategias ganadoras y este test lo que hace es arrojarnos información de nuestras estrategias. Como siempre digo, no busques estrategias perfectas, busca estrategia reales.


Te recomiendo que le eches un vistazo al test y si te es útil lo incorpores en tu metodología. Para mi es uno de esos test que merece la pena junto con el de Montecarlo.


¿Dudas? ¿Comentarios? ¡Te leo! Y ya sabes… cuidado con sobreoptimizar.


Si te ha gustado, ¡compártelo! 


Share on facebook

Facebook

 

Share on twitter

Twitter

 

Share on linkedin

LinkedIn

 

Share on telegram

Telegram

 

Share on email

Email

¿Quieres aprender trading algorítmico de manera profesional?

Aprende a hacer trading de forma automatizada, constante y consigue un negocio rentable aunque lo hagas con poco capital y tiempo, ademas sin tener conocimientos en programación


EMPIEZA AQUÍ

También te interesará



Rubén Martínez

StrategyQuant: Qué es y cómo funciona LEER


Rubén Martínez

Qué es una cuenta ECN en Forex LEER

inside-bar-outside-bar

Rubén Martínez

Inside y outside bar. Qué son y cómo funcionan en realidad. LEER


Rubén Martínez

¿Qué es el índice de volatilidad VIX? Cómo interpretarlo. LEER

 


 


AVISO LEGAL: rubenmartinezes.com o cualquier persona/empresa relacionada con este proyecto no aceptará ninguna responsabilidad por cualquier pérdida o daño en el trading como resultado de la confianza en la información suministrada en nuestra web. La operativa en futuros, CFDs, opciones u otras formas de especulación apalancada son las formas de inversión con riesgo de pérdida de la totalidad del dinero de una cuenta e incluso más y no son aptas para todos los inversores. Por tanto, tanto en operativa a contado como en operativa apalancada declinamos toda responsabilidad de cualquier decisión de compra o de venta de títulos, valores y/o activos cotizados en los mercados, por influencia de dichas opiniones o replicando las posiciones publicadas en la web o canales informativos.


La operativa en activos en los mercados financieros requiere conocimiento y amplia experiencia. Son productos complejos y en algunos casos apalancados, cuyo uso puede dar lugar a pedidas severas del capital, pudiendo superar las pérdidas el capital invertido, por tanto el inversor deberá comprobar que los activos en los que opera se adaptan a su perfil de inversión y asumir el riesgo de su propia operativa. rubenmartinezes.com no asume responsabilidad alguna por cualquier pérdida, directa o indirecta, que pudiera resultar del uso de esta página web o de nuestros servicios. Los usuarios deben estar plenamente informados sobre los riesgos, gestión monetaria, apalancamiento y los gastos asociados con el trading en los mercados financieros.


Los CFD son instrumentos complejos y están asociados a un riesgo elevado de perder dinero rápidamente debido al apalancamiento. Entre un 74 y un 89 % de los inversores minoristas pierden dinero cuando comercializan con CFD. Debe considerar si comprende el funcionamiento de los CFD y si puede permitirse asumir un riesgo elevado de perder su dinero


© 2020 Rubén Martínez Declaración de responsabilidades | Términos y condiciones



Comentarios

Entradas populares de este blog

Correlación en Forex: necesitas entender esto.

MAE y MFE: dos medidas que potenciarán tu sistema de trading