把缠论结构交给代码
分型、笔、线段、中枢的识别全部由 Rust 实现并经 czsc._native 暴露,不再需要人工在图上画线。成笔阈值这类关键参数可通过环境变量与构造参数控制。
官方把项目定义为「基于缠中说禅理论的综合性量化交易库」,落到使用上就是三件事:结构怎么自动划、信号怎么组合、多品种怎么批量研究。
分型、笔、线段、中枢的识别全部由 Rust 实现并经 czsc._native 暴露,不再需要人工在图上画线。成笔阈值这类关键参数可通过环境变量与构造参数控制。
框架先产出信号,再用 signals_all / signals_any / signals_not 把信号组合成事件,事件再驱动持仓与交易器。中间多了一层事件,策略逻辑与执行被解耦开。
BarGenerator 把一个基础周期合成到多个大级别,CzscSignals 与 CzscTrader 直接在这套多级别数据上做联立决策并把持仓管起来,省掉自己搭多周期框架的工作。
这套框架的分层比较清楚,理解层级就不会把信号当成下单指令。下表的实现位置来自官方 API 手册,使用前请以你所用版本的实际导出为准。
| 层次 | 主要对象 | 实现位置 | 管什么 | 适用场景 | 注意点 |
|---|---|---|---|---|---|
| 数据结构层 | RawBar / NewBar / FX / BI / FakeBI / ZS | crates/czsc-core | K 线、去包含 K 线、分型、笔、中枢的数据表达 | 任何需要读结构的地方 | BI 除方向外还带力度、R²、斜率等统计量,别只当坐标用 |
| 结构算法层 | check_fx / check_fxs / check_bi / remove_include | crates/czsc-core | 判定分型、判定成笔、去除包含关系 | 想自己重写或校验结构逻辑时 | 成笔阈值受参数与环境变量共同影响,详见缠论结构页 |
| 信号层 | czsc._native.signals.* | crates/czsc-signals(23 个 .rs,实测) | 220+ 信号函数的注册与执行 | 把结构特征转成可组合的判断 | 官方 README 两处对函数数量的表述不同(220+ / 246) |
| 事件与持仓层 | Signal / Event / Position | crates/czsc-trader | 信号的逻辑组合(all/any/not)、开平仓与风控 | 把信号变成可回放的交易逻辑 | 事件层是策略逻辑与执行之间的隔离带 |
| 交易器层 | CzscSignals / CzscTrader | crates/czsc-trader | 多周期联立:联立信号 / 联立并管仓位 | 多级别决策 | rc.8 起 update 系列在遇到硬错时直接抛 ValueError,需要处理异常 |
| 回测层 | WeightBacktest / generate_backtest_report | 来自外部包 wbt(硬依赖) | 持仓权重序列的回测与报告 | 验证策略权重 | 它不是这套库自研的回测引擎,归属要写清楚 |
| 数据层 | tq / ts / ccxt / local_data | czsc.connectors | 期货、A 股、数字货币与本地缓存取数 | 接入自有数据 | 各自需要账号或 Token,且交易时段与复权口径要自己确认 |
两条路线服务的目标不同:一个要把缠论结构接进自己的策略工程,一个只要先把研究结论和图表拿到手。
成本在环境与数据:Python 需 3.10 及以上,源码构建还要 Rust 工具链;数据源需各自账号或 Token,交易时段与复权口径要自己确认。
本机技能覆盖行情数据、技术指标、形态识别、选股与研究回测,但不提供缠论结构(分型/笔/中枢)的自动识别,也不提供信号-事件-交易体系。
下面这些是本机已核验存在的技能目录(SKILL.md 已读),它们承接的是「数据与指标研究」这一段,不承接缠论结构识别那一段。
| 技能 | 能做什么 | 前置与限制 | 与 czsc 的关系 |
|---|---|---|---|
| stock-technical-mastery | A 股 K 线形态、MACD/RSI/布林带、量价关系、Wyckoff 与风险管理报告 | 数据源为新浪财经与 Baostock;不支持基本面、不覆盖港美股与期货外汇 | 做的是指标与形态层,不提供分型/笔/中枢的自动识别 |
| quant-analyst | 金融模型、策略回测、风险指标、组合优化与统计套利 | 需澄清执行环境、数据来源与目标市场 | 可做研究阶段验证,但不含缠论信号体系 |
| tushare-finance | 220+ 个 Tushare Pro 接口:行情、财务报表、宏观指标 | 需 Tushare Token | 与 czsc 的 ts_connector 取的是同一数据源,但只负责取数 |
| akshare-finance | 股票、期货、期权、基金、外汇、债券、指数与加密货币数据 | 需 akshare 1.18 及以上 | 数据覆盖面更广,不涉及结构识别 |
| tongdaxin | 通达信官方 MCP:行情、K 线、财务、条件选股、指标与研报 | 需授权 APIKEY | 补足选股与资讯环节 |
| chart-image | 由数据生成出版级图表图片(折线、柱状、蜡烛图、热力图等) | 纯 Node.js 环境 | 替代自包含 HTML 的部分出图场景 |
按你的真实约束选:要不要接触 Rust、数据从哪来、是否依赖缠论结构。
| 你的情况 | 建议路线 | 理由 | 先看哪一页 |
|---|---|---|---|
| 策略依赖缠论的分型/笔/中枢结构 | 自建算法库 | 结构识别是这套库的核心能力,其他路线不提供 | 缠论结构 → 信号函数 |
| 要做多周期联立的择时 | 自建算法库 | BarGenerator 与 CzscTrader 就是为多级别决策准备的 | 多级别联立 |
| 只写 Python,不想碰 Rust 工具链 | 自建算法库(pip 路径) | 官方提供预编译轮子,Python 3.10 及以上即可安装 | 安装与前置 |
| 已经有 Tushare 或天勤数据管线 | 自建算法库 | 官方连接器可直接对接,减少取数改造 | 数据源接入 |
| 只想先看指标、形态与选股结论 | EasyClaw 技能路线 | 免编译、按任务提问,不需要搭环境 | 与 EasyClaw 路线对比 |
| 需要港股、美股或外汇的技术面分析 | 两条路线都不覆盖该组合 | czsc 的连接器面向期货/A股/数字货币;本机技术分析技能也明确不覆盖港美股与外汇 | 数据源接入(边界段) |
答不了的地方一律以官方仓库与 API 手册为准,以下不回答官方材料之外的情况。
官方定义为「缠中说禅技术分析工具」,是基于缠中说禅理论的综合性量化交易库,专注实现缠论分型、笔、线段等核心概念的自动识别,以及基于此的多级别量化交易策略。它不是一个能直接给出买卖点的软件,策略仍然要自己写。
官方在 README 顶部明确:1.0.X 起缠论核心算法(分型、笔、中枢等)已全部迁移到 Rust 实现,通过 PyO3 扩展 czsc._native 暴露给 Python;并说明 1.0.X 与 0.9.X 不兼容,旧代码需按新 API 迁移。想了解旧 Python 实现逻辑可以查看 0.9.X 分支。
官方口径不一致:README「项目贡献」与「架构概览」写 220+,同一份 README 的「使用案例」一节写 246 个信号函数。本文并列保留两个数字,建议以你所用版本的 czsc._native.signals 实际导出为准,比引用任何二手数字都可靠。
官方文件之间并不一致,四份材料给出不同答案:pyproject.toml 声明 Apache-2.0,LICENSE 正文是 Apache License 2.0(Copyright [2025] zengbin93),而 Cargo.toml 的 workspace.package.license 写作 MIT,GitHub 的 API 判定为 NOASSERTION。涉及商用请以你的法务判断并与作者确认,本文不做结论。
不是同一个概念。仓库归属账号是 waditu,但包元数据(pyproject.toml)与 Cargo.toml 的作者字段署名都是 zengbin93。引用时应写成「仓库在 waditu 账号下,包作者署名为 zengbin93」。
没有已证实的集成关系。EasyClaw 是提供多种技能(行情数据、技术指标、形态识别、选股、研究回测等)的软件;czsc 是需要 Python 环境、以代码方式使用的缠论算法库。两者层级不同,czsc 在 EasyClaw 中的安装与运行状态为「未验证」。适合先做研究的用户可走技能路线,需要缠论结构的用户仍需自建。