Saltar a contenido

Cómo hacer backtesting de un cBot en cTrader

En este artículo y su vídeo correspondiente, nos gustaría discutir cómo puede hacer backtesting de un cBot. Aprenderá dónde puede acceder al backtesting, cómo puede configurar los ajustes de backtesting y cómo puede interpretar los resultados del backtesting.

Backtesting en cTrader

Los cBots son robots de operaciones totalmente personalizables que puede configurar para realizar varias acciones de operación al encontrar ciertos movimientos y eventos del mercado, como las convergencias y divergencias de medias móviles (MACD).

Sin embargo, al programar un cBot, puede ser difícil hacerlo todo bien al primer intento. En la mayoría de los casos, querrá perfeccionar un cBot antes de permitirle operar en su nombre.

Aquí es donde entra en juego el backtesting. Piense en el backtesting como un campo de pruebas en el que puede dejar que los cBots operen con datos históricos del mercado sin arriesgar nada tangible. Como tal, el backtesting es invaluable para evaluar si los cBots pueden lograr los resultados previstos sin arriesgar fondos reales en su cuenta de operaciones.

Recomendamos encarecidamente realizar un backtesting exhaustivo de cualquier cBot que haya creado usted mismo o haya adquirido a través de otros canales.

Acceder al backtesting

Para acceder al backtesting, primero seleccione una instancia existente del cBot que desea evaluar. Justo debajo de la barra superior de la interfaz de usuario (la que contiene el botón Atrás), debería ver varias pestañas con la primera pestaña que contiene el gráfico de operaciones en el que está operando la instancia elegida actualmente.

La pestaña Backtesting debería estar inmediatamente a su derecha. Haga clic en ella para cambiar al área de backtesting.

Image title

Después de abrir esta pestaña, debería ver la siguiente interfaz.

Image title

Establecer el período

Como se indicó anteriormente, el backtesting le permite ejecutar una instancia de cBot con datos históricos del mercado. Tiene varias opciones para definir el período exacto que debe cubrir el proceso de backtesting.

Usar el control deslizante

El control deslizante del calendario se encuentra cerca de la parte superior de la pestaña Backtesting.

Image title

Arrastre ambos puntos grises a lo largo del control deslizante para especificar el rango de datos para el backtesting posterior. En la captura de pantalla anterior, hemos arrastrado uno de los puntos para cubrir un período aproximadamente igual a dos años.

Usar los menús

También puede utilizar los menús desplegables del calendario a la izquierda y a la derecha del control deslizante para seleccionar un rango de fechas preciso.

Image title

Para asegurarnos de que nuestro período de backtesting tenga exactamente 2 años de duración, podemos abrir el menú de la izquierda para seleccionar el 30 de noviembre de 2020 como nueva fecha de inicio.

Configurar ajustes

Antes de realizar un backtest, haga clic en el icono de engranaje justo a la izquierda del menú del calendario más a la izquierda. Debería ver los siguientes ajustes.

Image title

Con esta sección abierta, realice las siguientes acciones.

  • En el campo Capital inicial, especifique los fondos iniciales con los que comenzará su cBot.
  • Abra el menú Comisión y elija (o escriba) la comisión que pagará su cBot después de operar un millón de unidades en volumen.
  • En el menú Datos, configure la fuente de datos históricos para el backtesting. En general, recibir datos m1 del servidor es un buen compromiso entre precisión y el uso intensivo de recursos del backtesting. Tenga en cuenta que también puede cargar datos personalizados desde un archivo .CSV almacenado localmente.
  • Elija entre spreads fijos o aleatorios en la subsección Spreads. Haga clic en En vivo para hacer coincidir el spread fijo (si se elige) con el spread actual del símbolo.

Consulte este tutorial para obtener más información sobre los ajustes de backtesting y cómo pueden afectar los resultados del backtesting.

Elegir entre modos

Puede optar por ver los resultados del backtesting (las posiciones abiertas por su cBot) a medida que ocurren. Esta funcionalidad es particularmente útil para detectar ciertos eventos y condiciones en los que su cBot no se comporta como se espera.

Para acceder a ella, active la opción Modo visual justo debajo y a la izquierda del control deslizante del calendario. En el menú Velocidad, seleccione la velocidad con la que se reproducirá el gráfico de operaciones elegido. Tenga en cuenta que siempre puede cambiar la velocidad de reproducción mientras se realiza el backtesting.

Image title

Alternativamente, deje desactivada la opción Modo visual. En lugar de ver el backtesting en tiempo real, recibirá un informe único que contiene los resultados del backtesting al final.

Por ahora, mantendremos desactivada la funcionalidad de modo visual.

Iniciar el backtesting

Para realizar un backtest con los ajustes dados y en el modo elegido, haga clic en el botón Reproducir a la derecha del menú del calendario más a la derecha.

cTrader comenzará a cargar los datos históricos requeridos. Este proceso puede tardar varios minutos dependiendo del período que haya elegido y del hardware en el que esté ejecutando cTrader.

En nuestro caso, el proceso es relativamente rápido ya que solo hemos solicitado información de 2 años. Cuando se realiza el backtesting, verá que la barra a la derecha de la opción Modo visual se mueve gradualmente de izquierda a derecha.

Cuando se mueva completamente hacia la derecha, el proceso de backtesting concluirá.

Ver los resultados

Hay varias formas de juzgar los resultados del backtesting. Después de concluir el backtesting, el número en la parte superior central del gráfico de operaciones resumirá el beneficio neto total generado por su cBot.

Image title

En nuestro caso, el cBot ha obtenido un beneficio neto sustancial del 503%.

Otra forma de evaluar el rendimiento de su cBot es cambiar a la pestaña Capital en el panel de operaciones justo debajo del gráfico de operaciones. Verá un gráfico con el número total de operaciones que su cBot ha realizado en el eje X y los fondos en el eje Y.

La línea amarilla seguirá el saldo de su cBot mientras que la línea gris seguirá su capital.

Image title

Podemos ver que nuestro cBot lo estaba haciendo bien durante todo el backtesting, pero puede haber algunos casos en los que queramos hacer correcciones antes de darle acceso a fondos reales.

Por último, pero no menos importante, la pestaña Estadísticas de operaciones mostrará estadísticas acumulativas sobre todas las acciones de operación realizadas por su cBot.

Image title

Podemos ver que nuestros rendimientos totales fueron excelentes. El robot realizó un total de 271 operaciones ganadoras y una gran parte (33.009,55) de los rendimientos totales se generaron con una sola operación. El cBot claramente tiene cierto potencial para realizar jugadas arriesgadas.

El backtesting es una excelente manera de asegurarse de que su cBot funcione como se espera. Utilizando estadísticas detalladas y el gráfico de capital, puede identificar los momentos de precio en los que el robot que está probando estaba haciendo los movimientos correctos (o incorrectos). El backtesting también es totalmente personalizable, lo que le permite entrenar sus cBots en condiciones muy diferentes.