跳至内容

帮助中心

Help Center articles

参数与设置

1. 数据源设置

这些设置定义了用于策略生成的历史数据来源。

  • server: 定义从 "data" 目录中的哪个文件夹加载数据。
    示例值:Premium,Eightcap,BlackBull,Darwinex,MetaQuotes
  • symbol: 用于策略生成的金融符号(例如,货币对)。
    示例值:EURUSD
  • period: 定义策略数据的时段。
    可选值:M1,M5,M15,M30,H1,H4,D1
  • data_file: 不使用server,symbol, 和period,你可以直接从文件加载数据。此设置会覆盖其他设置。
    示例:data_file = ./data/Premium/EURUSD_M30.json

2. 输出集合设置

定义生成的或经过验证的策略集合如何以及在哪里存储。

  • output: 输出集合的文件名格式。支持占位符,如[SERVER],[SYMBOL],[PERIOD],[YEAR],[MONTH],[DAY],[COUNT],[PROFIT]. 示例:output = ./collections/[SERVER]/[SYMBOL]/[PERIOD]/collection.json
  • output_replace: 当false时,如果文件已存在,系统会在文件后添加后缀;当true时,它会覆盖原文件。
    示例:output_replace = false

3. 输入集合或目录设置

定义用于验证或进一步生成的输入。

  • input: 指向一个或多个集合,或待验证的集合目录。示例:input = ./collections/
  • input_match: 根据文本短语过滤输入集合。这在处理大型集合目录时非常有用。
    示例:input_match = EURUSD_M30
  • validate_then_generate: 当设置为true时,系统在生成新策略之前会先验证输入策略。
    示例:validate_then_generate = false
  • suppress_input_error: 如果无法加载输入文件,则防止报错。
    示例:suppress_input_error = false

4. 集合设置

控制策略集合的容量和行为。

  • collection_capacity: 集合中的最大策略数量。设置为0表示无限制容量。
    示例:collection_capacity = 100
  • sort_by: 指定对集合进行排序的指标。
    可选值:NetBalance,Profit,ProfitFactor,ReturnToDrawdown,RSquared,Stagnation,WinLossRatio
    示例:sort_by = Profit
  • correlation_threshold: 策略之间相关性分析的阈值。
    示例:correlation_threshold = 0.98
  • resolve_correlation: 启用策略之间平衡线相关性的检测。
    示例:resolve_correlation = true
  • resolve_similar_rules: 检测具有相似交易规则的策略。
    示例:resolve_similar_rules = false

5. 生成器停止标准

定义在满足特定条件后停止生成器的限制。

  • max_calculated_strategies: 计算出的策略最大数量。设置为0表示无限制。
    示例:max_calculated_strategies = 0
  • max_ascended_strategies: 允许晋升到下一代的策略最大数量。
    示例:max_ascended_strategies = 0
  • max_collected_strategies: 收集到的策略最大数量。
    示例:max_collected_strategies = 0
  • max_working_minutes: 生成器可以运行的最大时间(以分钟为单位)。
    示例:max_working_minutes = 3

6. 验收标准

这些标准定义了策略被接受所需的最低性能指标。

  • max_consecutive_losses: 最大允许的连续亏损次数。
    示例:max_consecutive_losses = 0
  • max_drawdown_percent: 最大允许的回撤百分比。
    示例:max_drawdown_percent = 0
  • max_equity_drawdown: 最大允许的权益回撤。
    示例:max_equity_drawdown = 0
  • min_count_of_trades: 所需的最少交易次数。
    示例:min_count_of_trades = 100
  • min_profit: 策略所需的最小利润。
    示例:min_profit = 0
  • min_profit_factor: 策略所需的最小盈亏比。
    示例:min_profit_factor = 0
  • 其他指标:这些设置的工作方式类似,并适用于特定的时间框架(M1 和 Y1)或盈利因子,例如min_win_loss_ratio,min_return_to_drawdown, 等等。

7. 账户设置

这些参数定义了交易账户的配置。

  • account_currency: 交易账户的基础货币。
    示例:account_currency = USD
  • initial_account: 账户的初始余额。
    示例:initial_account = 10000
  • leverage: 应用于交易账户的杠杆。
    示例:leverage = 100

8. 策略属性

定义单个策略的各种参数。

  • entry_lots: 入场仓位的手数大小。
    示例:entry_lots = 0.01
  • trade_direction_mode: 定义策略交易的方向。
    可选值:LongAndShort,LongOnly
    示例:trade_direction_mode = LongAndShort
  • opposite_entry_signal: 定义策略如何应对反向入场信号。
    可选值:Ignore,Reverse,IgnoreOrReverse
    示例:opposite_entry_signal = Ignore
  • stop_loss_usage: 定义是否使用止损。
    可选值:AlwaysUse,MayUse,DoNotUse
    示例:stop_loss_usage = DoNotUse
  • take_profit_usage: 定义是否使用止盈。
    可选值:AlwaysUse,MayUse,DoNotUse
    示例:take_profit_usage = DoNotUse

9. 回测器设置

控制回测引擎的行为。

  • exit_trade_at: 定义何时退出交易。
    可选值:Open,Close
    示例:exit_trade_at = Open
  • close_at_backtest_end: 指定是否在回测结束时关闭所有未平仓交易。
    示例:close_at_backtest_end = true

10. 数据范围

控制回测所使用的数据范围。

  • max_data_bars: 回测时加载的最大 K 线数量。
    示例:max_data_bars = 100000
  • use_data_start: 定义是否为数据设置特定的开始日期。
    示例:use_data_start = false
  • data_start: 数据开始日期(如果适用)。
    示例:data_start = "01 Jan 2020 00:00 UTC"
  • 类似选项:use_data_end,use_trade_start,data_end,trade_start.

11. 前向测试

在未见数据上验证策略的稳健性。

  • use_forward_testing: 启用前向测试。
    示例:use_forward_testing = false
  • preload_data_bars: 前向测试时预加载的 K 线数量。
    示例:preload_data_bars = 0

12. 交易时段

控制交易时段行为。

  • session_open: 定义时段开始时间。
    示例:session_open = 00:00
  • session_close: 定义时段结束时间。
    示例:session_close = 24:00

13. 品种信息

覆盖数据文件提供的数值。

  • spread,swap_long,swap_short,commission: 这些参数允许覆盖特定的交易品种属性,如价差和佣金。

14. 指标

控制生成器将使用哪些指标来构建策略。为入场指标和出场指标分别提供了列表。

  • entry_adx,entry_rsi, 等待:这些布尔设置 (true或false) 决定特定的指标(例如 ADX、RSI、移动平均线等)是否用于入场和出场条件。
    示例:entry_adx = true

15. 其他设置

用于控制生成器行为的其他设置。

  • update_best: 如果为true,则在控制台上动态更新最佳策略。
    示例:update_best = true
  • show_top: 生成过程结束时显示的顶级策略数量。
    示例:show_top = 0

16. 优化器

用于优化生成策略的设置。

  • enable_optimizer: 启用优化器以提高策略性能。
    示例:enable_optimizer = false
  • optimize_by: 定义用于优化的性能指标。
    示例:optimize_by = Profit

17. 蒙特卡洛模拟

用于验证策略稳健性的蒙特卡洛设置。

  • enable_monte_carlo: 启用蒙特卡洛模拟。
    示例:enable_monte_carlo = false
  • count_of_tests: 运行的蒙特卡洛测试次数。
    示例:count_of_tests = 20
评分和评论
有用的没用