INALPHAOPEN-SOURCE QUANT AGENT FRAMEWORKD-12REV 0.122026.06.17AN ORACLE THAT KEEPS A LEDGERFACTOR TIMING · RANK ICINVESTING LEGENDS PANELSTRATEGY EVOLUTIONANTI-OVERFITTING · CPCV · DEFLATED SHARPE79-FACTOR LIBRARY · DECAY WATCHPLAN · APPROVE · EXECUTEPOSITION GUARD · −20% HARD STOPAUTONOMOUS PAPER RUNNERAGENTS · FIRST-CLASSAGPL-3.012 MARKETSINARI OMIKUJI
InalphaInari × alpha

可审计的量化 agent, 能进化的策略。

Agent 自己挑当前有效的因子来择时,叫上投资大师团对立辩论,写策略、自进化——每一笔下单都过机器审批。LLM 只写代码,工程纪律为每个决策背书。

$git clone https://github.com/mirror29/inalpha
查看 GitHub
Why Inalpha · the black box vs the ledger

大多数 AI 交易是个黑盒。Inalpha 把每一步都记下来。

黑盒
亏钱时

「买入 BTC,置信度 0.62」——到底哪份数据、哪一步出了错,无从查起。

赚钱时

是真本事,还是运气?复现不出来,就没法信。

谁能下单

模型直接握着你的账户钥匙,一句乱指令就变成一笔真单。

Inalpha · ledger
01
亏钱时

把那次决策原样重放:它看了什么数据、跑了什么逻辑、给了什么理由。

02
赚钱时

每个想法、每次测试都留底,是真本事还是碰运气,能验证给你看。

03
谁能下单

AI 只负责提议,真正下单由你设好的规则执行——它自己扣不动扳机。

每一步都讲得清,每一单都要你点头。

Intelligence · factors that work now

会挑当前有效因子的 agent。

factor.timing 用滚动 Rank IC 给一个 79 因子库排名——价 / 量 / 基本面 / FRED 宏观四大族——浮出当前有效的信号。每个因子都经形式化、IC 检验、多重检验校正、去相关,并记录提出人、时点与经济学故事门的判定。

factor.timing · 滚动 Rank IC
── 一座被治理的因子库
  • 79 因子 · 7 大族 · 含 FRED 宏观(美债收益率 · 美元指数 · VIX · CPI)
  • 衰减巡检 · 逐因子透出 rank_ic_recent vs rank_ic
  • top-N 在 ρ < 0.85 去相关——绝不是同一信号的十份拷贝
  • 横截面 · factor.panel_score 按横截面 Rank IC 给一篮子标的排序——选哪只,而不只是何时
  • 因子发现 L1 · 白名单 DSL(无 eval/exec)→ 自动评估 + 查重 + 推荐注册
factor.timing — ranked by 60d rolling Rank IClive · illustrative
momentum_60deffective
+0.082 +0.071
residual_reversaleffective
+0.061 +0.066
vol_carryeffective
+0.047 +0.039
amihud_illiq
+0.024 +0.021
pead_drift
+0.012 +0.018
value_bm
-0.007 -0.012
79 因子 · ρ<0.85 去相关 · 衰减巡检 · 近期 IC vs 基线
Research · opposing minds, one synthesis
deep_dive ~ NVDA · 实时辩论示例
多方 00 空方

研究是一场辩论,不是一个声音。

一次 deep dive 会召集技术、基本面、情绪、估值分析师,需要时再加一桌投资大师团。他们各执一词、正反交锋,再由 Inalpha 把分歧综合成一份留底的决策。

可选 · 一桌投资大师团
BuffettLynchWoodBurryDruckenmillerMarks
可插拔方法论 · agent skills

大师团之外,agent 还能把投研方法论当 skill 即插即用——比如一套供应链分析法、你自带的一套打法——只在用得上时才读取。知识插进来,token 不花在没用上的地方。

Evolution · written, sandboxed, mutated

Agent 写策略——再改写策略,去打败自己。

agent 用 Python 写出完整策略。先过三道沙盒关,才允许跑第一次回测。然后在多目标 fitness 下变异迭代,单一指标刷不动分——只有跑赢基线的策略才留下。

从经验证的原型起步趋势均值回归波动多因子
Agent 写出
class Strategy(Bar): ...
三道沙盒关
1AST 审计

禁 os / eval / 越狱式 import

2子进程隔离

与内核隔墙运行

3Strategy 契约

必须继承 + 实现 on_bar

多目标 fitness
sharpe + 0.3·calmar − 0.1·turnover − 1.0·(maxDD > 30%)
变异 · 评估 · 留下跑赢基线的
质量门

上线前,质量门拿候选与基线打分;不达标,agent 自动改一版重写——只有过线的才发布。过线者还可跑交叉验证——WalkForward / Purged / Combinatorial CV 配 Deflated Sharpe——让 edge 必须在多条样本外路径上都站得住,而非靠一段窗口走运。

Robustness · the overfitting gauntlet

过得了这道关,
才算真有 edge。

「从一堆尝试里挑最优」这个动作本身就会过拟合。所以每个环节——因子筛选、策略挑选、参数、样本外——都各自带一套统计校正,而不是一份你看着顺眼的回测。

核心敌人多重检验偏差
01 / 回测
  • CPCV · purge + embargo
  • Deflated Sharpe · 修正试错次数
  • Bootstrap Sharpe 95% CI
  • 参数邻域敏感性

挡住 走运的一段窗口冒充不了 edge

02 / 因子
  • null-IC 选择效应基准
  • Benjamini–Hochberg FDR
  • 经济学故事门
  • ρ < 0.85 去相关

挡住 数据挖出的伪因子进不了库

03 / 进化
  • 多目标 fitness
  • 回撤一票否决
  • 换手率惩罚
  • buy-and-hold 基线并跑

挡住 单一指标刷不动分

04 / 未来函数
  • 财报 point-in-time
  • FRED 发布滞后表
  • bar 截断到 as_of
  • test 段止于最新 bar

挡住 回测永远看不到明天

Unified kernel · same code, three modes

一份代码,
三种模式。

策略代码只写一次。回测、模拟盘、live runner 共用同一份——只换 Clock 和 Gateway,业务逻辑不动。剩下能让分歧出现的,只有物理差异(滑点、延迟、数据精度)。

strategy = MomentumStrategy(params)
clock =SimClock(bars_2024)
gateway =SimGateway()
engine.run(strategy, clock, gateway)
only clock + gateway change · your strategy never does
01 / kernelv0.x

data

多 venue 行情:crypto / 美股 / A 股 / 港股 / 日韩澳印巴英德 / 全球指数 / FRED 宏观。freshness 锚定。

from inalpha_data import get_bars
02 / kernelv0.x

paper

内存撮合 + 回测引擎 + 持久化模拟盘。状态可任意回放。

from inalpha_paper import run_backtest
03 / kernelv0.x

research

多分析师 LLM 对抗辩论。立场天然对立。绝不把过期数据当洞察。

from inalpha_research import debate
Trust boundary · the moat

AI 只负责提议,
永远不亲手下单。

每一个下单意图都走一条单向路:agent 起草一份 plan,由你设的规则(或你本人)批准,之后才有一枚一次性、会过期的 token 解锁执行。模型手里没有任何能直接碰到订单簿的工具——越狱也好、幻觉也好,都绕不过去。

LLM agent
trade.create_planagent 起草 plan
trade.approve_plan规则 / 你 批准
trade.execute_plan一次性 token 执行
订单簿
guard-stop · 框架级兜底

独立于策略逻辑,框架给每个持仓罩一道 −20% 硬止损——回测里也一样施加,所以你看到的回撤就是你会真实经历的回撤。它的平仓只有在三重签名(SELL · guard 标签 · guard- 订单前缀)下才豁免风控门,任何东西都仿冒不过这道边界。

LLM agent订单簿
deny —— LLM 没有直达路径
Coverage · twelve markets, one kernel

同一内核 · 同一 prompt · 同一组 agent。

所有市场共享同一个 orchestrator。新增一个 venue,所有 agent 即刻可用。

orchestrator
research
factor
risk
execution

add a venue — every agent gets it for free

── 诚实告知 ——

  • 01无人值守模拟盘 runner + 跨币种 cash:promoted 策略在真实 bar 上自动跑一个多币种模拟账户,经 plan/exec 机器审批,留完整决策复盘
  • 0279 因子库,带血缘追踪与衰减告警——因子经 IC 监控并去相关;告警只提示,绝不替你动仓
  • 03框架级持仓保护:−20% 硬止损,回测与模拟盘一视同仁,独立于策略逻辑
  • 04RiskEngine 在 paper HTTP 边界生效:仓位上限 / 价格偏离 / 回撤一票否决 / 全市场真实交易日历
  • 05财报 point-in-time:依报告期 + 发布滞后过滤,回测看不到尚未公开的数字(akshare 已生效;yfinance v1 尚未 PIT,已就地标注)
  • 06暂不接真金——runner 跑的是模拟账户,订单本地撮合;每步走 plan/exec 审批并落盘
常见问题SEO.md §FAQ

你可能在想的问题。

坦诚回答我们被问得最多的几个问题。

开始agpl-3.0 · audited · open

Star 它。读它。彻底拆解它。

Inalpha 仍在 alpha 阶段,AGPL-3.0 协议。请暂缓真金部署——但每一行代码都在 GitHub 公开。

$git clone https://github.com/mirror29/inalpha
0── stars
0── 贡献者
0── 提交
0── markets
暂不用于真金