Optimization (Beta version)

Optimization (Beta version)

Dear Traders,

We are glad to announce that beta version of Optimization is available in Spotware cAlgo. We decided to publish a beta version, because we believe that our community will provide a valuable feedback.

cAlgo advanced optimization functionality lets you find the optimal set of parameters for your cBot. Optimization runs multiple backtest procedures and compares their performance.

How to start Optimization

  1. Build your cBot

  2. Add an Instance
  3. Click the Optimization tab

  4. Click the Parameters button and select parameters to be optimized

  5. Define your time period by using the dropdown menus or by dragging the slider
  6. Click Play


Optimization results

Optimization may take a long time to complete. You can see the remaining time estimate next to “Remaining time” label.


Optimization process runs backtesting multiple times. Once backtesting for specific set of parameters passed, new row is added to the Passes grid.


Passes grid contains the following columns:

  • Pass - number of pass in current Optimization session

  • Fitness - shows how well current pass fits the Optimization Criteria

  • Equity - value of equity at the end of backtesting

  • Balance - value of balance at the end of backtesting

  • Net Profit - the difference between ending balance and starting balance

  • Trades - amount of closed positions

  • Profit factor - total profit divided by total loss

  • Equity drawdown - the maximum amount of equity drawdown

  • Parameters - by pressing Apply button in the parameters column you can apply parameters of the pass to the current cBot instance

Bottom part of optimization window shows details of selected pass.


After you find a pass that shows desired performance, you can press Apply button next to it to apply parameters to current cBot instance.


All optimization settings are splitted to 5 groups:

  1. Backtesting Settings group allows to specify Starting Capital, Commission, Data mode settings

  2. cBot Parameters group provides an ability to select parameters to be optimized. For every selected parameter you must specify set of values to be used during optimization.

  3. Optimization Criteria group provides an ability to specify the criteria to be used during optimization. For every pass fitness value will be calculated based on selected criteria. Fitness value is used to compare backtesting results. The higher the value, the better.

  4. Optimization Method. Two options are available: Grid that simply backtests each possible set of parameters and Genetic Algorithm that finds the optimal parameters faster.

  5. Resources group provides an ability to allocate CPU resources for optimization. The more resources you allocate, the faster optimization will be done. CPU resources can be adjusted during optimization.
TRADERS FIRST™ Vote for your favorite features: https://ctrader.com/forum/suggestions