帮助中心
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