跳转到内容

超参数

通过策略编辑器侧边栏的 Hyperparameters 选项卡,你可以为节点的标量输入设置取值域,执行确定性的回测扫描。AQS 会生成 AQE 配置,保留原输入值作为回退值,并将每个已完成组合保存为独立结果。

  1. 在策略编辑器中打开项目,选择侧边栏的 Hyperparameters 选项卡。
  2. 选择 Add Hyperparameter,然后指定一个清晰名称。
  3. 选择类型:
    • Int 或 Float:输入以逗号分隔的离散值,或提供 min、max 和 increment 来定义范围。
    • Bool、String 或 Enum:以逗号分隔的标签项输入取值。
  4. 对每个要测试的维度重复上述操作。AQS 显示总组合数,并在扫描超过 10,000 个组合之前请求确认。

选择节点,然后在 Node Properties 中找到标量字段。Hyperparameter Reference 菜单列出侧边栏中已创建的兼容参数。选择一个,将其绑定到该具体节点输入。

绑定作用于节点及其输入,而不仅是输入名称,因此即使两个字段都叫 atr_period,两个节点仍可独立使用不同参数。需要新取值域时,从同一菜单选择 Create new hyperparameter;AQS 会打开 Hyperparameters 选项卡,并选中新建参数。

界面中显示的输入值仍会保留,作为普通回测、实时运行或未选择种子时的回退值。

Default seed 控件有两个作用:

  • 选择种子后,普通 Backtest 或 Live 操作会使用该种子对应的确切参数值。
  • 清除种子后,启动回测会扫描全部笛卡尔积组合。

AQS 在本机依次运行扫描组合。这样可保持各次运行隔离,并避免将庞大的参数排列组合表加载到生成的策略代码中。结果放在 backtests/hyper/<sweep-id>/<seed>/ 下,包含常规 backtest.db 和指标文件。

Backtest 列表会逐项展示每次运行,以及对应的超参数种子和扫描 ID。你可以按收益率、夏普比率、盈亏比、期望收益、胜率、获利因子、交易数或回撤筛选和排序。如果当前筛选结果包含多个扫描,批量操作只作用于选定的扫描。

打开某次运行后,会显示独立的结果选项卡。Settings 选项卡中的 Hyperparameter configuration 部分展示完整种子 ID 和解析后的参数值。在 Analytics 中,你可以查看当前种子在同一本地扫描结果中的排名,并打开任意一行比较结果。

使用回测列表中的 SQL 筛选,按策略、扫描、日期或绩效指标筛选本地和云端结果。

保留结果中显示的种子。在编辑器中再次选择它,会将相同的解析值应用到每个已关联节点输入。AQE 也支持直接通过 --hyper-seed 接收种子;唯一前缀即可。有关代码级 API 和标志,请参阅AQE 超参数。