-
DAYS
-
HOURS
-
MINUTES
-
SECONDS

Get 50% Off the Best Robot Trading App Course!

Master the Top 10 Trading Robots - Course Now Available!

Learn how to trade with the best-performing robots, designed for today’s market. Whether you're a beginner or an experienced trader, this course includes 10 free robots that you can start using immediately.

=> Don’t miss out on this limited-time 50% discount for the first week! <=

Table of Contents
< All Topics

Parameters and Settings

1. Data Source Settings

These settings define the source of historical data used for strategy generation.

  • server: Defines the folder in the “data” directory from which data is loaded.
    Example values: Premium, Eightcap, BlackBull, Darwinex, MetaQuotes
  • symbol: The financial symbol to be used for strategy generation (e.g., currency pair).
    Example value: EURUSD
  • period: Defines the time frame for the strategy’s data.
    Possible values: M1, M5, M15, M30, H1, H4, D1
  • data_file: Instead of using server, symbol, and period, you can load data directly from a file. This setting overrides the others.
    Example: data_file = ./data/Premium/EURUSD_M30.json

2. Output Collection Settings

Defines how and where generated or validated strategy collections will be stored.

  • output: Filename format for output collections. Supports placeholders like [SERVER], [SYMBOL], [PERIOD], [YEAR], [MONTH], [DAY], [COUNT], [PROFIT]. Example: output = ./collections/[SERVER]/[SYMBOL]/[PERIOD]/collection.json
  • output_replace: When false, the system appends a suffix to the file if it already exists; when true, it overwrites the file.
    Example: output_replace = false

3. Input Collection or Directory Settings

Defines the input for validation or further generation.

  • input: Points to one or several collections or a directory of collections to be validated. Example: input = ./collections/
  • input_match: Filters input collections based on text phrases. This is useful when dealing with a large collection directory.
    Example: input_match = EURUSD_M30
  • validate_then_generate: When set to true, the system validates the input strategies before generating new ones.
    Example: validate_then_generate = false
  • suppress_input_error: Prevents errors if the input file cannot be loaded.
    Example: suppress_input_error = false

4. Collection Settings

Controls the capacity and behavior of the strategy collection.

  • collection_capacity: Maximum number of strategies in a collection. Set to 0 for unlimited capacity.
    Example: collection_capacity = 100
  • sort_by: Specifies the metric to sort the collection by.
    Possible values: NetBalance, Profit, ProfitFactor, ReturnToDrawdown, RSquared, Stagnation, WinLossRatio
    Example: sort_by = Profit
  • correlation_threshold: Threshold for correlation analysis between strategies.
    Example: correlation_threshold = 0.98
  • resolve_correlation: Enables detection of balance line correlations between strategies.
    Example: resolve_correlation = true
  • resolve_similar_rules: Detects strategies with similar trading rules.
    Example: resolve_similar_rules = false

5. Generator Stop Criteria

Defines limits that stop the generator after certain conditions are met.

  • max_calculated_strategies: Maximum number of calculated strategies. Set to 0 for unlimited.
    Example: max_calculated_strategies = 0
  • max_ascended_strategies: Maximum number of strategies allowed to ascend to the next generation.
    Example: max_ascended_strategies = 0
  • max_collected_strategies: Maximum number of strategies collected.
    Example: max_collected_strategies = 0
  • max_working_minutes: Maximum time (in minutes) the generator can run.
    Example: max_working_minutes = 3

6. Acceptance Criteria

These criteria define the minimum performance metrics for a strategy to be accepted.

  • max_consecutive_losses: Maximum allowable consecutive losses.
    Example: max_consecutive_losses = 0
  • max_drawdown_percent: Maximum allowable drawdown as a percentage.
    Example: max_drawdown_percent = 0
  • max_equity_drawdown: Maximum allowable equity drawdown.
    Example: max_equity_drawdown = 0
  • min_count_of_trades: Minimum number of trades required.
    Example: min_count_of_trades = 100
  • min_profit: Minimum profit required for a strategy.
    Example: min_profit = 0
  • min_profit_factor: Minimum profit factor required for a strategy.
    Example: min_profit_factor = 0
  • Additional metrics: These settings work similarly and apply to specific timeframes (M1 and Y1) or profitability factors, such as min_win_loss_ratio, min_return_to_drawdown, etc.

7. Account Settings

These parameters define the trading account configuration.

  • account_currency: The base currency of the trading account.
    Example: account_currency = USD
  • initial_account: The starting balance of the account.
    Example: initial_account = 10000
  • leverage: Leverage applied to the trading account.
    Example: leverage = 100

8. Strategy Properties

Defines various parameters of individual strategies.

  • entry_lots: The size of the entry position in lots.
    Example: entry_lots = 0.01
  • trade_direction_mode: Defines the direction in which the strategy trades.
    Possible values: LongAndShort, LongOnly
    Example: trade_direction_mode = LongAndShort
  • opposite_entry_signal: Defines how the strategy reacts to opposite entry signals.
    Possible values: Ignore, Reverse, IgnoreOrReverse
    Example: opposite_entry_signal = Ignore
  • stop_loss_usage: Defines whether to use stop loss.
    Possible values: AlwaysUse, MayUse, DoNotUse
    Example: stop_loss_usage = DoNotUse
  • take_profit_usage: Defines whether to use take profit.
    Possible values: AlwaysUse, MayUse, DoNotUse
    Example: take_profit_usage = DoNotUse

9. Backtester Settings

Controls the behavior of the backtesting engine.

  • exit_trade_at: Defines when to exit the trade.
    Possible values: Open, Close
    Example: exit_trade_at = Open
  • close_at_backtest_end: Specifies whether to close all open trades at the end of the backtest.
    Example: close_at_backtest_end = true

10. Data Horizon

Controls the data range used for backtesting.

  • max_data_bars: Maximum number of bars to load for backtesting.
    Example: max_data_bars = 100000
  • use_data_start: Defines whether to set a specific start date for the data.
    Example: use_data_start = false
  • data_start: Start date for the data, if applicable.
    Example: data_start = "01 Jan 2020 00:00 UTC"
  • Similar options: use_data_end, use_trade_start, data_end, trade_start.

11. Forward Testing

Validates strategies on unseen data for robustness.

  • use_forward_testing: Enables forward testing.
    Example: use_forward_testing = false
  • preload_data_bars: Number of bars to preload for forward testing.
    Example: preload_data_bars = 0

12. Trading Session

Controls trading session behavior.

  • session_open: Defines the session opening time.
    Example: session_open = 00:00
  • session_close: Defines the session closing time.
    Example: session_close = 24:00

13. Symbol Info

Overrides values provided by the data file.

  • spread, swap_long, swap_short, commission: These parameters allow overriding specific symbol attributes like spread and commission.

14. Indicators

Controls which indicators the generator will use for composing strategies. Separate lists are provided for entry and exit indicators.

  • entry_adx, entry_rsi, etc.: These boolean settings (true or false) determine whether a particular indicator (e.g., ADX, RSI, Moving Average, etc.) is used in entry and exit conditions.
    Example: entry_adx = true

15. Miscellaneous Settings

Additional settings for controlling generator behavior.

  • update_best: If true, dynamically updates the best strategy on the console.
    Example: update_best = true
  • show_top: Number of top strategies to display when the generation process finishes.
    Example: show_top = 0

16. Optimizer

Settings for optimizing generated strategies.

  • enable_optimizer: Enables the optimizer to improve strategy performance.
    Example: enable_optimizer = false
  • optimize_by: Defines the performance metric used for optimization.
    Example: optimize_by = Profit

17. Monte Carlo Simulation

Monte Carlo settings to validate the robustness of strategies.

  • enable_monte_carlo: Enables Monte Carlo simulation.
    Example: enable_monte_carlo = false
  • count_of_tests: Number of Monte Carlo tests to run.
    Example: count_of_tests = 20
Was this article helpful?
0 out of 5 stars
5 Stars 0%
4 Stars 0%
3 Stars 0%
2 Stars 0%
1 Stars 0%
5
Please Share Your Feedback
How Can We Improve This Article?
Shopping Cart