Optimizar un cBot en cTrader
Este artÃculo explica cómo optimizar robots de operaciones en cTrader Windows y Mac.
Puede ser difÃcil especificar un conjunto óptimo de parámetros iniciales para un cBot. Afortunadamente, cTrader ofrece una función integrada de optimización de cBot. La optimización toma su código y lo ejecuta varias veces, basando cada pasada en diversos valores de parámetros. Luego le presenta un conjunto de resultados personalizables que puede utilizar para definir la configuración óptima de parámetros.
Para utilizar esta función, seleccione una instancia de cBot y cambie a la pestaña Optimización.

Después, defina el perÃodo de backtesting para la optimización utilizando los calendarios desplegables o arrastrando el control deslizante.

Configuración de optimización
Como la optimización es esencialmente una serie de backtests, puede especificar la configuración de backtesting de manera similar a como se hace en la pestaña Backtesting.
Parámetros de optimización
Haga clic en el botón Parámetros a la izquierda del control deslizante del calendario. DeberÃa ver la siguiente ventana.

En ella, marque las casillas junto a los parámetros del cBot que desea optimizar. El parámetro Timeframe está disponible para todos los cBots.
Criterios de optimización
Pulse el botón Criterios situado a la derecha del botón Parámetros de optimización. cTrader abrirá la siguiente pestaña.

Los criterios de optimización definen cómo el algoritmo de optimización clasifica su resultado después del backtesting. Puede elegir entre las siguientes opciones:
- Estándar - una serie de criterios predefinidos que puede intentar minimizar o maximizar. Para ello, elija un criterio del menú desplegable de la derecha y seleccione la dirección de optimización en el menú relacionado de la izquierda. Para añadir un nuevo criterio, haga clic en Añadir criterio.
- Personalizado - un criterio personalizado definido dentro del código de su cBot utilizando el método
GetFitness()como se muestra en los ejemplos siguientes.
1 2 3 4 5 | |
1 2 3 4 5 6 | |
Cálculos multicriterio
Si se utilizan varios criterios para calcular la eficacia de los parámetros, cTrader utilizará todos ellos por igual para calcular el valor de aptitud de un pase de optimización.
Concretamente, la plataforma multiplica los valores de todos los criterios maximizadores y multiplica por separado los valores de todos los criterios minimizadores. Posteriormente, divide el valor de multiplicación absoluto de los criterios maximizadores por el mismo valor de los criterios minimizadores.
El siguiente pseudocódigo muestra exactamente cómo se calculan los valores de aptitud multicriterio.
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
Método
Haga clic en el botón Método (representado como GA o # dependiendo de la opción elegida). En el menú siguiente, elija qué método de optimización utiliza la plataforma.

Están disponibles las siguientes opciones:
- Algoritmo genético - el algoritmo emula el proceso de evolución biológica. Por favor, consulte una sección aparte para obtener una descripción detallada.
- CuadrÃcula (#) - el algoritmo realiza secuencialmente un backtest de cada conjunto posible de parámetros.
Nota
Según nuestras estimaciones, el algoritmo genético es significativamente más rápido para encontrar valores óptimos de los parámetros.
Recursos
Haga clic en el botón Recursos para seleccionar qué porcentaje de la carga de su CPU se asigna al backtesting. Mueva el control deslizante para establecer el porcentaje de uso de la CPU.
Cuantos más recursos asigne, más rápido se completará el proceso de optimización. Sin embargo, es posible que observe una caÃda en el rendimiento al utilizar otras aplicaciones.

Tenga en cuenta que los recursos de la CPU también se pueden ajustar durante la propia optimización.
Iniciar y gestionar el procedimiento de optimización
Para proceder con la optimización, haga clic en el botón Reproducir a la derecha del control deslizante del calendario. Dependiendo de los recursos de su máquina, la configuración de optimización y la complejidad del cBot, la optimización puede llevar algún tiempo.
La barra de la interfaz de usuario inmediatamente debajo del control deslizante del calendario proporcionará información sobre el número de pases de backtesting completados, el tiempo transcurrido y la estimación del tiempo restante.

La pantalla central en la pestaña Optimización, mientras tanto, proporcionará una cuadrÃcula en tiempo real que contiene información sobre todos los pases de backtesting que el algoritmo ha completado.

Para aplicar un conjunto de parámetros probados durante un determinado pase, haga clic en el botón Aplicar. Solo se activa si no hay procedimientos de optimización en ejecución actualmente.
Alternativamente, marque la casilla Autoseleccionar el mejor pase en la esquina superior izquierda para que cTrader seleccione automáticamente el pase (y los parámetros) que ha logrado el mejor resultado posible según los criterios de optimización especificados.
Resultados de la optimización
Una vez completada la optimización, la tabla central mostrará la lista final de todos los pases de backtesting y sus resultados.
Esta tabla tiene las siguientes columnas. Como la cuadrÃcula es totalmente configurable, estas columnas se pueden arrastrar y soltar o desactivar completamente haciendo clic con el botón derecho en la tabla y deseleccionándolas del menú contextual.
| Campo | Definición |
|---|---|
| Pase | El número de pase. |
| Aptitud | El valor que muestra lo bien que se ajusta el pase a los criterios de optimización. |
| Capital | Capital total al final del pase. |
| Saldo | Saldo total al final del pase. |
| Beneficio neto | La diferencia entre el saldo final y el saldo inicial. |
| Operaciones | El número total de posiciones cerradas. |
| Operaciones con beneficio | El número total de operaciones ganadoras logradas durante el pase. |
| Operaciones con pérdidas | El número total de operaciones perdedoras logradas durante el pase. |
| Factor de beneficio | La relación beneficio total/pérdida total. |
| *Disminución máxima del capital (%) | El porcentaje máximo de disminución del capital. |
| Disminución máxima del saldo (%) | El porcentaje máximo de disminución del saldo. |
| Disminución máxima del capital | La disminución máxima del capital especificada en la divisa de depósito de la cuenta. |
| Disminución máxima del saldo | La disminución máxima del saldo especificada en la divisa de depósito de la cuenta. |
| Operación media | El beneficio medio de todas las operaciones realizadas durante el pase. |
| Parámetros de pase | Haga clic en el botón Aplicar en esta columna para aplicar los parámetros de este pase a su cBot. |
Seleccione un pase para ver estadÃsticas detalladas sobre él en la pantalla debajo de la cuadrÃcula central.
Las primeras siete pestañas de esta pantalla proporcionan la misma información que las mismas pestañas en la ventana Backtesting. La pestaña Parámetros de pase es exclusiva de la optimización.
Parámetros de pase
La pestaña Parámetros de pase proporciona la siguiente información.

cTrader resaltará en verde todos los parámetros optimizados, mientras que los parámetros fijos (no habilitados en el menú Parámetros) permanecerán sin resaltar.
Guardar y cargar resultados de optimización
cTrader también permite guardar y cargar resultados de optimización desde y hacia un archivo .optres almacenado localmente.
Nota
Un archivo .optres es simplemente una colección de pares clave-valor con claves que representan varias configuraciones y métricas de optimización.
Consejo
Puede utilizar archivos .optres para continuar refinando sus cBots en múltiples máquinas locales sin perder ningún progreso. También puede alimentar datos de este archivo a herramientas de IA generativa para intentar detectar patrones en los pases que su cBot ha completado.
Para guardar los resultados de optimización, espere hasta que el proceso haya concluido y haga clic en el icono Guardar. En el cuadro de diálogo del explorador de archivos, escriba el nombre del archivo y guárdelo.
Para cargar resultados de optimización, haga clic en el icono Cargar y seleccione el archivo requerido en la ventana del explorador de archivos.
