α

AlphaMaster

基于深度神经网络强化学习的量化因子挖掘中心

空闲

启动训练

尚未选择数据文件
强制离线:只用本地 Parquet,不连接 MT5。命名:{品种}_{周期}.parquet,如 XAUUSD_H1.parquet / 002008_60min.parquet60min/1h 等同 H1

训练曲线

选择文件并开始训练后显示
指标说明
  • 最优分数

    到目前为止找到的最好因子公式得分,越高表示回测表现越好,曲线阶梯上升说明发现了更优公式。

  • 验证分数

    当前这一步在验证集上的平均得分,反映近期一批公式的整体质量,会有起伏属正常。

最优公式

训练日志

等待任务…

AI 分析当前训练情况

DeepSeek · deepseek-v4-flash
OpenAI 兼容网关:可改 Base URL(如 https://token.sensenova.cn/v1)与模型名,再填 API Key。
点击「开始分析」后,AI 将回答:当前训练情况怎么样,是否值得继续,以及最新因子的含义与原理。
训练说明:并行?最优分数 / 验证分数是什么?
  1. 单品种单周期就已经把 CPU 吃满了

    挖因子这一步计算很重:特征、公式搜索、回测验证会把机器算力用到接近满载。这时再并行开第二个品种或另一个周期,大家只是在抢同一批 CPU,谁也跑不快。

  2. 并行并不等于整体更快

    两路一起跑,往往各自都变慢,总完工时间通常不比「先训完一个再训下一个」更短,有时还更拖。所以默认一次只训一路,把算力集中用在当前任务上更划算。

  3. 只盯一个品种,更好观察训练情况

    曲线、日志、最优公式都只对应这一组数据,涨没涨分一眼能看清。多品种并行时页面和日志会搅在一起,反而不容易判断「这个品种还值不值得继续挖」。

  4. 最优分数是什么

    到目前为止挖到的最好那条公式的得分。它一般只升不降:一旦发现更好的公式,这个数就会抬一截;长时间不动,说明这段时间还没挖到更强的。

  5. 验证分数是什么

    当前这一步在验证集上算出来的平均表现,反映「最近这批公式整体好不好」。它会上下波动很正常;更值得看的是整体有没有慢慢抬高,而不是盯着单次跳动。

  6. 为什么验证曲线会一截一截地掉下去再爬起来?

    图上的验证分数不是「当前最优那一条」的得分,而是这一步随机抽出来的一整批公式的平均分。挖着挖着,模型会越来越爱重复同一类公式(探索变少),系统就会主动「搅一搅」——加大随机、换一批新配方继续搜。刚搅完时,新配方里好坏掺半,平均值会突然掉一截;随后又慢慢学到更好的组合,曲线再往上爬。所以会看到锯齿状起伏。

    绿色的最优分数只记「历史最好的那一次」,所以不会跟着掉下去,只会阶梯往上抬。锯齿本身多半是在重新探索,不等于训练坏了。

  7. 重新训练有机会找出更好的量化因子

    「开始训练」会接着上次的检查点继续挖;「重新训练」会清掉检查点,从零换一条随机路径再搜一遍。因为搜索带随机性,有时能挖到比现在更高的分数。

    已有的最优策略会当作分数下限留着——只有找到更好的才会覆盖,不会一开局就被弱公式冲掉。代价是要再花一整轮算力,适合本轮训完或最优分数长期不动时再用。

已保存策略

品种 周期 分数 公式

调试 / 报错输出

暂无报错

启动回测

尚未选择策略文件
合计单边成本 0.03%
训练/回测均强制使用本地 Parquet,不连接 MT5。回测优先读策略内 data_file;没有则回退训练页同品种文件。单边手续费/滑点开平仓各扣一次。

回测绩效

尚未运行回测
运行回测后显示收益、夏普、盈亏比等指标

绩效明细

品种 收益 Sharpe Sortino 盈亏比 交易数 胜率
暂无回测结果

回测日志

待机
等待任务…

资金曲线

回测完成后展示资金曲线
回测完成后展示资金曲线
回测是怎么算的?(一看就懂)
  1. 先拿历史行情“假装交易”

    回测不会真的下单。它把过去很多天的价格拿出来,按策略规则一步步走一遍,看看如果当时真做了,钱会变多还是变少。

  2. 因子先打一个“信号分”

    策略公式会给每一根 K 线打分:正分偏向看涨,负分偏向看跌,靠近 0 就先别乱动。

    分数的绝对值越大,信号就越明确。比如 +3 比 +0.2 更坚决地看涨,-3 比 -0.2 更坚决地看跌。

  3. 信号分越大,仓位就越大

    仓位不是只有“全仓 / 空仓”两档,而是用 tanh(信号分) 压到大约 -1 到 +1 之间。

    • 正分越大 → 做多越多(最多接近满仓 +1)
    • 负分越小 → 做空越多(最多接近满仓 -1)
    • 分数很弱 → 仓位接近 0(几乎不持仓)

    可以把它想成:信心越大,下注越多;但再大也不会超过“一整份仓位”。

  4. 赚亏怎么算

    这一步大概赚多少 ≈ 仓位 × 价格涨跌。仓位大,涨了赚得多,跌了也亏得多。换仓时还会扣掉你设的手续费和滑点。

  5. 上面那些图在说什么
    • 资金曲线:把每一步赚亏累加起来,看账户是往上爬还是往下掉。
    • 滚动夏普:看最近一段时间“赚得稳不稳”,越高通常越好。

添加监控

无信号阈值 |tanh(因子)| < 0.05
因子来源:从已保存策略下拉选择,或「导入策略」选本地 JSON。信号取最后已收盘 bar。

信号雷达

未启动
尚无监控项。添加「数据源 + 品种 + 周期 + 因子」后开始实时分析。
怎么看信号?还有哪些要注意
  1. 这张卡怎么看?(一眼看懂)
    • 先看中间下面那行方向:预期上涨(偏多)或预期下跌(偏空)。颜色也会跟着变——绿偏多、红偏空。
    • 再看大字把握:策略对这个方向有多坚决——一点把握 → 把握不大 → 一半把握 → 比较有把握 → 很有把握。半环亮得越满,把握越大。
    • 若显示「没把握 / 先观望」,表示信号太弱,先别当买卖依据。
    • 「因子」是内部算出来的分数,负的偏空、正的偏多,一般不用盯着它;看方向 + 把握就够了。
    • 这不是「猜对的概率」,只是策略此刻有多坚决。
  2. 只在「当前周期」那根 K 线收盘后才重新判断

    例如选的是 1 小时周期,就等这一小时走完、K 线正式收盘,才会用最新已收盘的数据重算方向和把握;盘中正在走的那根(未收盘)不会拿来改信号。

  3. 为什么这样设计

    训练和回测用的都是「已经收盘」的完整 K 线。若盘中用还在变动的价格去算,同一根线里信号会来回跳,也和回测看到的历史不一致,容易误判、频繁改仓。

    等收盘再用完整 OHLC,信号更稳,也和策略当初学到的数据口径一致。

  4. 相同品种、不同周期,能不能套同一个策略?

    不建议。策略是按训练时的那个周期学出来的;公式里的「10 根、20 根」指的是该周期的 K 线根数,不是固定的钟表时间。

    例如在 1 小时上训练时,「10 根」大约看过去 10 小时;若硬套到日线,「10 根」就变成过去 10 天——价格形态、噪声幅度、趋势节奏全变了,信号含义对不上,回测成绩也推不到新周期上。

    同品种换周期应重新训练(或至少用该周期单独回测验证);实时监控时,周期尽量与策略文件里记录的周期一致。

  5. 卡片上的「距离下次判断」在倒计什么

    倒计时指向下一次收盘、重新判断信号的时刻。到点后会短暂显示「即将重新判断…」,收到新 bar 后再刷新,并开始下一轮倒计时。

飞书转折提醒

仅在信号方向发生变化时推送文字提醒(例如看涨 → 不确定 / 看跌)。 在飞书群添加自定义机器人后,把 Webhook 地址填到下面。

保存后,监控项方向转折时会自动推送到飞书群。