Alphalens 项目研究站 · 对比
Alphalens vs EasyClaw:自建因子绩效分析还是免部署的研究路线
两条路线解决的不是同一个问题:Alphalens 回答「这个因子在历史数据上表现如何」,需要你自己的 Python 环境与行情数据;对话式技能路线回答「帮我取这段行情、算这个指标、画这张图」,装上客户端后一句话发起。下面按任务、数据源、前置条件、输出与限制逐项对照。
Alphalens 与对话式技能是什么关系
Alphalens 之外:本机已核验技能能做什么(逐条读 SKILL.md)
下表的能力描述全部来自本机 C:\Users\CF\.easyclaw\skills 下对应技能的 SKILL.md 原文,未做推测。最后一列说明它与 Alphalens 的关系。
| 技能 | 已核实能力 | 前置条件 | 与 Alphalens 的关系 |
|---|---|---|---|
akshare-finance | AKShare 财经数据封装:A 股、期货、期权、基金、外汇、债券、指数、加密货币的行情与宏观数据;明确声明不提供投资建议、不处理实盘交易 | Python 环境 + akshare ≥1.18 | 上游数据源:Alphalens 一个数据源都不提供,价格表要靠这类工具或自有数据 |
tushare-finance | 通过 Tushare Pro 取中国金融数据,声明支持 220+ 接口;返回 DataFrame | 需要 TUSHARE_TOKEN;部分接口有积分门槛 | 上游数据源(偏专业数据库口径) |
quant-analyst | 量化分析方法论:策略开发与回测、风险指标(VaR / 夏普 / 最大回撤)、组合优化(Markowitz / Black-Litterman)、时序分析、统计套利;输出含回测结果与可视化 | 本地 Python 或 Notebook 环境 | 方法论相邻:同样服务量化研究,但不实现 IC / 分位收益这套因子绩效口径 |
chart-image | Vega-Lite 出图:折线、柱状、面积、饼/环、K 线、热力图、多系列、堆叠、迷你图、双轴;纯 Node.js,无浏览器依赖 | Node 环境(技能自带安装步骤) | 出图侧:Alphalens 出的是 matplotlib/seaborn 的 tear sheet,两者不是同一种图 |
iwencai | 同花顺问财入口:行情、财务、事件、研报、公告、宏观,以及条件选股与模拟炒股 | 需要 IWENCAI_API_KEY,且需先跑连接门禁 | 选股与信息检索侧;Alphalens 不做选股 |
mx-select-stock | 东方财富妙想智能选股:自然语言按行情/财务指标筛选 A 股、港股、美股、板块与 ETF,输出 CSV/JSON | 需要 MX_APIKEY(东财 APP / 妙想页面领取) | 选股侧;可作为因子候选池的来源,但本身不做因子绩效评估 |
a-stock-analysis | A 股实时行情与分时量能分析(早盘/尾盘放量、主力动向、涨停封单)、持仓盈亏管理 | 需要能访问行情接口的网络环境 | 行情与盘口侧;与因子排序研究不是同一类任务 |
yahoo-finance-github | 美股实时报价、历史 K 线、新闻聚合与组合盈亏分析;基于 yfinance,无需 API key;明确不支持 A 股与港股 | Python 环境 + yfinance | 海外行情侧;可作为美股因子研究的取数来源 |
Alphalens 明确不做哪些事
这一节的作用是防止把两边的能力混为一谈。左列是常见期待,右列是事实。
| 常见期待 | 事实 | 证据 | 该找谁 |
|---|---|---|---|
| 「装好就有行情数据」 | 库不提供任何数据源,四个模块里没有一处数据源引用 | 源码全文 | 自有数据,或 akshare-finance / tushare-finance / yahoo-finance-github |
| 「能直接传收益率」 | 只收价格,收益率要在库内由 periods 推算 | issue #253(57 条评论)/ #270,未合并 | 自己把收益率反推成价格序列,或改用其他实现 |
| 「能做策略回测」 | 它是因子绩效分析库,不含撮合、滑点、手续费与仓位管理 | 四个模块的函数清单 | 回测框架;本机技能里的 quant-analyst 提供回测方法论 |
| 「能帮我选股」 | 它只评估给定因子的历史表现,不筛选标的 | 函数清单中无选股类接口 | iwencai / mx-select-stock 等选股类技能 |
| 「能实盘或给买卖信号」 | 不下单、不连接券商、不产生交易指令 | 源码与 README 均无交易接口 | —(本站不提供任何投资建议) |
| 「装了就能一直用」 | 主库停在 2020 年,现代环境下安装与导入都可能失败 | 本站实测记录 + issue #406 等 | 使用维护分支并锁定依赖版本 |
Alphalens 与对话式技能怎么选:按任务决定
下面五行的判断依据是「任务属于哪一类」,而不是「哪条路线更好」。两条路线可以同时用:取数用技能,因子分析用 Alphalens。
| 你的任务 | 建议走哪条 | 理由 | 可能的组合做法 |
|---|---|---|---|
| 想快速看看某个因子历史上有没有区分度,且已有价格与因子数据 | Alphalens | IC、分位收益、换手率这套口径现成,跑一次就有标准报告 | 用技能出图或整理数据,分析仍在 Python 里做 |
| 只是想知道某只股票最近的行情、指标或公告 | 对话式技能 | 这类任务不需要因子分析,也不需要本地环境管理 | — |
| 要按条件筛出一批标的,再研究它们 | 选股类技能先筛,再回到 Alphalens | Alphalens 不做筛选,只做给定标的集合上的因子评估 | 先筛选出标的池 → 取价 → 构造因子 → 清洗 → 出报告 |
| 要把因子评估做成可重复、可交接的流程 | Alphalens(并固定版本) | 口径写在代码里,换人换机器结果一致 | 把依赖锁定文件与研究记录一起存档 |
| 没有 Python 环境,也不想装 | 对话式技能 | 装上客户端即可发起任务;但要接受它不提供 IC/分位/换手这套因子绩效口径 | — |
Alphalens 与对话式技能的准备成本有什么区别
下表只描述准备工作的性质与大致构成,不含任何价格、订阅或性能承诺。
| 成本项 | 自建 Alphalens | 对话式技能路线 | 说明 |
|---|---|---|---|
| 环境准备 | Python 环境 + 依赖锁定(含 pandas / numpy / scipy / statsmodels) | 安装客户端 | 本机实测主库在现代 Python 上安装失败,维护分支可装但需处理依赖错配 |
| 数据准备 | 必须自己准备价格与因子两张表,并对齐交易日 | 多数技能自带数据接口,但部分需要 API Key 或 Token | Alphalens 侧的数据准备工作量通常大于跑库本身 |
| 凭证与权限 | 取决于你的数据来源(数据库、数据商或自采) | tushare-finance 需 Token;iwencai 需 API Key;mx-select-stock 需 MX_APIKEY | 本机技能目录里也有不需要 Key 的(如 yahoo-finance-github、akshare-finance) |
| 学习成本 | 理解清洗参数与四个指标口径(IC / 分位 / 换手 / alpha-beta) | 把问题描述清楚,理解返回结果的含义 | 两边的难点不同:一边是口径,一边是提问与判读 |
| 维护成本 | 需要跟踪依赖版本;库本身基本不会再有新版本 | 随客户端与技能更新 | 主库最后一次代码提交停在 2020-04-27 |
Alphalens 与 EasyClaw 的集成状态与免责说明
这一节是本站的强制披露项,请连同上面的对照一起阅读。
| 事项 | 状态 | 说明 |
|---|---|---|
| Alphalens 能否在 EasyClaw 中安装或运行 | 无已证实集成 | 本机技能目录中不存在任何 Alphalens 相关技能;也没有证据表明 Python 库可以被装进对话环境 |
| 官方是否提到 Alphalens 以外的客户端 | 从未提及 | 官方 README 与维护分支 README 均无相关表述 |
| 客户端侧截图能证明什么 | 只能证明任务可被发起 | 三张截图均为本站为本项目新拍的记录(2026-09-18);不证明安装成功、不证明集成、不证明任何结果可复现 |
| 本站的运行记录 | 合成数据 | 本机实测使用合成的价格与因子序列,用于验证安装与 API 链路,不代表任何真实市场结果 |
| 投资建议 | 不提供 | 全部内容用于项目研究与技术选型判断;因子研究结论不构成投资建议,也不承诺任何收益 |
怎么衔接两条路线:用对话式技能取数,再喂进本地分析
两条路线并不互斥。下面是一条可落地的衔接路径,五步都有明确的输入输出,不需要两边做任何集成。
先在对话里把数据要出来
例:查某只标的最近 N 个交易日的日线行情并导出 CSV。预期:拿到一份含日期与收盘价的文件(截图与文件名以你当次会话为准)。
转成宽表价格矩阵
prices = df.pivot(index="date", columns="code", values="close").sort_index()。预期:infer_freq能推断出频率;列名统一为 6 位代码字符串。构造因子 Series
把因子值整理成两层索引
(date, asset)的 Series(因子可以来自你自己的计算,也可以来自对话里的指标结果)。预期:factor.index.names == ["date","asset"]。在本地清洗并出报告
get_clean_factor_and_forward_returns(factor, prices, quantiles=5, periods=(1,5,10)),随后create_summary_tear_sheet。预期:得到分位收益、IC 与换手率;丢弃比例在可解释范围内。把口径写回研究记录
注明数据来源与获取日期、复权口径、股票池规则与库版本。预期:任何人按记录能复现同一张表。
哪些环节交给对话式技能,哪些必须留在本地
分工的判断标准只有一条:这一步的产出是「数据 / 图」,还是「必须可复现的因子绩效口径」。
| 环节 | 建议交给 | 理由 | 交接物 | 注意点 |
|---|---|---|---|---|
| 取行情与基础指标 | 对话式技能 | 取数是它已核验的能力,免去本地环境配置 | CSV / 结构化表格 | 记录数据来源与获取日期 |
| 按条件筛选标的池 | 对话式技能(选股类技能) | 自然语言筛选快,适合先圈定范围 | 标的清单 | 筛选条件要写进研究记录,避免「池子变了结论也变」 |
| 画图表 | 两边都可以 | 报告图需要与指标口径绑定,独立出图适合展示 | PNG / 图表配置 | 展示图不能替代 tear sheet |
| 因子清洗与 IC / 分位 / 换手 | 必须本地 | 这套口径只有 Alphalens 提供,且必须与库版本绑定才能复现 | factor_data 与报告 | 换参数必须重跑并记录 |
| 未来函数与时间对齐检查 | 必须本地 | 需要逐列核对数据时点 | 检查清单结果 | 对话式取数不会替你判断时点 |
| 成本与容量评估 | 必须本地 | 依赖你的费率与资金规模假设 | 敏感性表 | 费率假设要自己给 |
| 最终结论与决策 | 由你判断 | 工具只给证据,不给投资建议 | 研究记录 | 本站全部内容不构成投资建议 |
Alphalens 与技能路线常见问题
技能能力以本机 SKILL.md 原文为准;Alphalens 能力以其源码与官方文档为准,两者无已证实集成。
我能不能只用 EasyClaw 做因子分析?
本机已核验的技能里没有因子绩效分析能力:quant-analyst 提供量化研究方法论与回测口径,但它不实现 IC、分位收益与换手率这套标准指标。要这套口径,目前只能在装了 Alphalens 的环境里跑。
那对话式技能在因子研究里能帮上什么忙?
三个环节:取数与整理(akshare-finance / tushare-finance / yahoo-finance-github)、筛选标的池(iwencai / mx-select-stock)、出图(chart-image)。因子绩效评估本身仍需在 Python 里完成。
Alphalens 的结论能直接用于实盘吗?
不能,也不该。它输出的是统计描述,不含交易成本、容量、风控与合规约束。本站不提供任何投资建议,所有输出仅供研究参考。
为什么不做一个「Alphalens 的 EasyClaw 版」?
本站只做证据层面的介绍,不编造能力。要把这个库搬进对话环境,需要的是真实的包管理与运行沙箱支持,目前没有任何已证实的事实支持这一点,所以本站明确标注为「无已证实集成」。
技能清单里的前置条件准确吗?
准确到「本机 SKILL.md 原文所写」的程度:例如 tushare-finance 写明需要 Token、iwencai 写明需要 API Key 与连接门禁、mx-select-stock 写明需要 MX_APIKEY。实际使用时的权限与配额以各技能官方页面为准。
两条路线能不能同时用?
可以,而且这通常是更现实的做法:用技能取数与筛选,用 Alphalens 做因子绩效分析,再把结果图放进你的研究记录。注意两者之间没有自动衔接,数据要靠文件或脚本自己传递。
本站的对比结论会不会偏向客户端?
本页把 Alphalens 不做的事单独列了一节,也把技能的前置条件与缺口逐条写清。如果只能用一句话概括:两条路线服务不同任务,Alphalens 管因子口径,技能管取数与提问,二者无集成。
截图里的数字能当作参考吗?
不能。截图是既有站点在特定日期的对话记录,数值会随行情变化,且与本站的合成数据无关。它们只用于说明交互形态。