Python定制层次贝叶斯模型分离加密货币交易员技能与运气
在加密货币衍生品市场,排行榜按钱包的原始收益率排序。
成为新会员获取本项目完整报告、代码、数据和AI智能体
在加密货币衍生品市场,排行榜按钱包的原始收益率排序。但一个只做了五笔交易的账户涨了 300%,大概率是运气——跟着它复制,等于跟着掷硬币。真正的任务是从有限且嘈杂的交易样本中,估计出一位交易员潜在的可持久技能,并量化我们对这个估计的把握。一个估计值为 "+3% ± 0.2%" 和一个 "+3% ± 4%",差别就是信号与幻影。这正是层次贝叶斯模型要做的事。
本项目完整报告、代码、数据和AI智能体
本文回答的核心问题:(1) 如何从交易员有限的交易记录中分离出真实技能与随机运气?(2) 层次贝叶斯模型的”部分池化”机制如何在小样本场景下抑制虚假信号?(3) 基于后验夏普比率排名,能否在步进式复制交易中优于收益排名和随机选择?(4) 模型的超额收益来源是否具有资产集中性风险?
Abstract: This paper constructs a hierarchical Bayesian model to disentangle latent trader skill from luck using 7.6M on-chain perpetuals trades. A three-level hierarchy (population → trader → trade) with non-centered parameterization yields per-trader posterior Sharpe ratios with full credible intervals. In a continuous walk-forward test, traders flagged as skilled by the Bayesian rule achieve 70% forward profitability (vs. 32% random), and a top-10 copy account ranked by learned skill returns +9.3% with 77% winning copies. An honest per-coin autopsy reveals ~76% of that return concentrated in a single trending asset, underscoring the importance of attribution analysis.
作为一名长期深耕机器学习与量化金融交叉领域的研究者,我曾多次协助机构客户完成”交易信号衰减归因”与”策略绩效稳健性评估”类咨询项目。本文将其中的层次贝叶斯建模经验沉淀为一个对话式AI智能体,完整呈现从数据采集、过滤、模型构建、步进验证到收益归因的全链路。
本文流程概览:模型 v1: Normal-Normal 共轭 (仅均值) → 模型 v2: Normal-Inverse-Gamma (均值+方差 → 夏普比率) → 全层次 PyMC 拟合 (非中心化重参数 → NUTS 采样) → 决策输出: P(技能 > 手续费) > 0.9 → 复制
1. 问题:技能 vs. 运气。技能是交易员结果中能够延续到未来的那部分;运气则是不能延续的。当交易笔数很少时,两者在原始均值中几乎无法区分——几个偶然的大赢单可以把平庸的交易员送上排行榜榜首,而几笔不走运的亏损也能掩盖真正的高手。因此,核心问题不是”这个钱包的历史收益是多少”,而是“它能持续产生的最佳收益估计是什么,我们有多大把握”。要回答好这个问题,需要同时做到三件事:一种借用群体信息的方法(避免被小样本欺骗),一种显式分离信号与噪声的机制,以及报告不确定性而非仅给出点估计。层次贝叶斯模型正好提供了这三者。
最受欢迎的见解
- Python员工数据人力流失预测:ADASYN采样CatBoost算法、LASSO特征选择与动态不平衡处理及多模型对比研究
- R分布式滞后非线性模型DLNM分析某城市空气污染与健康数据:多维度可视化优化滞后效应解读
- Python古代文物成分分析与鉴别研究:灰色关联度、岭回归、K-means聚类、决策树分析
- Python TensorFlow OpenCV的卷积神经网络CNN人脸识别系统构建与应用实践
- Python用Transformer、SARIMAX、RNN、LSTM、Prophet时间序列预测对比分析用电量、零售销售、公共安全、交通事故数据
- MATLAB贝叶斯超参数优化LSTM预测设备寿命应用——以航空发动机退化数据为例
- Python谷歌商店Google Play APP评分预测:LASSO、多元线性回归、岭回归模型对比研究
- Python+AI提示词糖尿病预测模型融合构建:伯努利朴素贝叶斯、逻辑回归、决策树、随机森林、支持向量机SVM应用
2. 数据:采集与过滤。一个轻量级采集程序订阅了某主流永续合约交易所的 WebSocket 数据流,记录了每个市场每笔成交——时间戳、币种、价格、数量、方向,以及买方和卖方钱包地址。本研究使用一段连续约 93 小时的数据流:7,610,323 笔交易、178 个币种、约 63,700 个独立钱包(其中 45,957 个至少有一条完整的仓位记录)。
从成交到仓位收益。技能的自然度量单位是每笔仓位,而非每笔成交。本文对每个钱包按平均成本法回放其成交记录,每完成一次独立入场→离场的往返即生成一条记录,取其投入资本收益率 r = 盈亏 / 入场名义价值,并做 ±25% 缩尾处理以控制肥尾。
筛选”严肃散户”。本文保留仓位名义价值中位数在 1,000–5,000 的钱包。在此基础上叠加最低活跃度筛选:≥5 笔仓位 → 1,387 位交易员(群体拟合),≥8 → 约 1,000 位(全层次拟合),≥10 → 528 位(指标检验)。每笔仓位扣除 0.09% 的往返吃单手续费。
3. 模型。模型是一个三层结构——群体 → 交易员 → 交易。向下读是生成故事(数据如何诞生),向上读是推断(从交易中学习每位交易员的技能)。技能定义为每位交易员的夏普比率 μᵢ / σᵢ。

3.1 部分池化——核心思想。每位交易员的数据都是一个小而嘈杂的样本。两种简易做法都是错的:不池化(相信每个原始均值——在小样本上过拟合运气),完全池化(假设所有人都是群体均值——忽略真实技能)。层次模型实施部分池化:将所有交易员置于一个共享先验之下,使每个估计值成为交易员自身数据与群体信息的精度加权折中——数据少时强力拉向群体均值,数据多时则几乎不受影响。

每个点代表 1,387 位交易员中的一位(≥5 笔仓位):原始平均收益(x 轴)vs. 模型的技能估计(y 轴),按仓位数量着色。数据稀薄的交易员被强力拉向群体均值(其亮眼均值大多是运气),数据丰厚的交易员则贴近对角线。
3.2 模型 v1——每位交易员的均值(Normal-Normal)。第一版模型将技能视为每笔交易的平均收益 θᵢ。因为 Normal–Normal 是共轭的,每位交易员的后验分布有闭式解——无需采样。在这个数据上:μ ≈ +0.04%/笔,τ ≈ 0.32%,σ ≈ 0.88%——信噪比 τ/σ ≈ 0.37。技能是真实存在的,但相对于逐笔噪声较小。

决策就绪:几位真实交易员分别显示为频率学派 95% 置信区间(灰色)与贝叶斯 95% 可信区间(蓝色,收缩后)。裁定标准只看蓝色贝叶斯区间——只有当该区间完全位于手续费线上方时,才认定为可信的技能。
3.3 模型 v2——每位交易员的均值与方差,技能 = 夏普比率。仅靠均值忽略了风险:两位交易员的平均收益相同,但波动率不同,其技能并不等价。v1 的弱点是共享 σ,因此 v2 给每位交易员自己的方差,并定义技能为夏普比率 Sᵢ = μᵢ / σᵢ。对于未知均值与方差的单个交易员,共轭模型为 Normal–Inverse-Gamma,在 n 笔交易后有闭式流式更新。

一位真实交易员的步进结果。前约 30 笔交易,95% 夏普后验区间跨越零线(不信任),约在第 32 笔交易时清除零线→开始复制,此后夏普后验保持稳定。
3.4 全层次模型训练——逐步分解。要把每位交易员的方差也池化,就需要在均值和对数波动率上都施加层次先验。此时共轭性被破坏(对 σ 使用对数正态先验没有闭式解),因此使用概率编程:用 PyMC 写出生成模型并采样后验。生成故事:(1) 世界有 μ_pop, τ_μ, m_logσ, s_logσ;(2) 每位交易员抽取 μᵢ ~ N(μ_pop, τ_μ) 和 σᵢ = exp(N(m_logσ, s_logσ));(3) 每笔交易 rᵢⱼ ~ N(μᵢ, σᵢ);(4) 技能为 Sᵢ = μᵢ/σᵢ。重参数化(漏斗问题):直接写 μᵢ ~ N(μ_pop, τ_μ) 会造成 Neal’s 漏斗——修复方法是非中心化形式:μᵢ = μ_pop + z·τ_μ。收敛诊断:R̂ 为约 1.01–1.03,群体层面结论可靠。
3.5 模型输出:每位交易员的后验夏普比率。

后验夏普比率及 95% 可信区间——743 位中有 77 位具备可信技能(区间清除零线)。数百笔交易的交易员区间窄、夏普适中(确定但优势温和);40 笔左右交易的交易员夏普更高但区间更宽。
专题|Python贝叶斯金融数据应用实例合集:随机波动率SV模型、逻辑回归、参数更新、绩效比较BEST分析
Python贝叶斯金融数据应用实例合集,涵盖随机波动率SV模型、逻辑回归、参数更新、绩效比较BEST分析等方法,附完整数据与代码。
探索观点4. 哪种技能定义最优?实证检验。本文并没有先入为主地选择夏普比率——而是将每位交易员的交易记录对半拆分,问前半段上哪种技能度量能最好地预测后半段表现。

三种度量都能预测保留的后半段(秩相关 ρ ≈ 0.25–0.35)。均值最大化原始前瞻收益;夏普比率是最优排名器(ρ = +0.35)且最稳定;每小时收益最差,因为每笔手续费惩罚了它偏好的高频抢跑者。本文采用夏普比率——鲁棒性强,且直接支持仓位规模确定(Kelly ∝ μ/σ²)。
| 技能度量 | 排序能力 (Spearman ρ) | 前瞻收益 | 稳定程度 | 结论 |
|---|---|---|---|---|
| 均值收益 | 0.25 | 最高 | 中等 | 忽略风险,不适合做规模决策 |
| 夏普比率 (μ/σ) | 0.35 | 适中 | 最稳定 | 最优排名器,直接支持 Kelly 公式 |
| 每小时收益 | 低位 | 最差 | 不稳定 | 手续费惩罚高频策略,淘汰 |
5. 步进验证:模型真的有效吗?
5.1 技能估计预测下一笔交易。

在每位交易员流中的每一个时刻,配对当前后验技能与下一笔仓位的收益。汇集 16,790 个(交易员,时刻)状态,高技能 → 高下一笔收益——Spearman ρ = +0.21。只有前两个十分位组能超过手续费,其余皆亏损。
5.2 超越收益阈值、频率检验和随机选择。

同一数据、同一手续费——仅更改”判定技能”的规则:贝叶斯规则胜出(70% 盈利比例,+0.19% 净收益/笔),因为它收缩小样本估计,仅在后验概率足够高时才做出承诺。
5.3 被标记的交易员持续盈利。

当模型标记一位交易员后,其后续仓位平均收益 +0.44%(毛值)——远超随机交易员和手续费。
5.4 复制顶级交易员:按已实现收益排名,还是按学习得到的技能排名?

全程在线、步进运行。按学习得到的技能排名回报 +9.3%(77% 胜率),按已实现收益排名回报 +8.5%(54% 胜率),随机十位:−1.0%。
5.5 为什么要”学习”技能而非直接平均?小样本现象。

贝叶斯机制恰恰在数据匮乏时体现价值。数据权重 w(k) 从 0 向 1 攀升——在 k≈22 笔交易时跨越 0.5,在 k≈414 笔时达 0.95。贝叶斯优势是真正的小样本现象。
5.6 收益从何而来?逐币复剖。

将 438 笔复制仓位逐一归因到具体币种。HYPE 一个币种就占了 231 笔仓位(53%),96% 盈利,贡献了 +7.0%——占整个 +9.3% 收益的 76%。同样被标记的交易员在 BTC(27 笔,30% 盈利,−0.5%)和 ETH(16 笔,44% 盈利,−0.5%)上亏损。96% 的胜率不是币种无关的交易技能——它是对单一趋势资产的集中暴露。
6. 坦诚的局限性。(1) 约 93 小时的一段连续数据流,步进验证证据有力且无前瞻,但仍只是一个市场窗口。(2) 逐笔优势薄但命中率高——被标记交易员前瞻优势约 +0.44%/笔(毛值),在线前 10 复制账户 77% 的复制仓位盈利。(3) MCMC 收敛在个别低数据 σᵢ 上属边际水平(R̂ 最高约 1.03)。(4) 优势集中而非分散——复制账户约 76% 的收益来自 HYPE 在强势方向性行情中的表现;同批被标记交易员在 BTC 和 ETH 上亏损。
答辩高频提问:你的模型在 HYPE 上的 96% 胜率难道不是过拟合到特定行情窗口吗?如何论证方法的普适性?
参考答案:集中度风险恰恰是本文坦诚披露的核心发现。模型的方法是普适的——层次贝叶斯部分池化与步进验证不依赖于任何单一资产——但任何量化模型的评估都受限于观测窗口。与过拟合的区别在于:(1) 步进验证确保了时序上的无前瞻性;(2) 夏普比率对 BTC/ETH 的正确亏损判断证明了模型并非盲目偏好所有交易;(3) 复剖方法本身为部署到更长数据流提供了诊断模板。
7. 总结。
核心问题与解决方案:
- 问题一:交易员排行榜上的高收益有多少是运气? → 解决方案:层次贝叶斯模型通过部分池化,将小样本的极端均值向群体均值收缩——5 笔交易、+2.3% 的钱包,后验可信区间被正确判定低于手续费,不予以复制。
- 问题二:如何同时量化每位交易员技能的大小和不确定性? → 解决方案:全层次 PyMC 模型以非中心化重参数化 + NUTS 采样,为每位交易员输出完整的夏普比率后验分布及 95% 可信区间,同时从群体借用方差信息。
- 问题三:按贝叶斯后验技能排名是否真的优于按已实现收益排名? → 解决方案:在线前 10 复制账户对比实验显示,学习技能排名(+9.3%,77% 胜率,−0.9% 回撤)在胜率和回撤控制上全面优于已实现收益排名(+8.5%,54% 胜率,−1.5% 回撤),更远高于随机(−1.0%)。
技术创新与业务价值:(1) 共轭 + 概率编程的混合推断架构:在共轭性保持时使用闭式流式更新(O(1) 实时),在共轭性破坏时切换至 PyMC + NUTS 离散批次采样。(2) 非中心化重参数化解决漏斗问题:这是让 ~1,000 位交易员层次模型成功混合的关键工程手段。(3) 逐币复剖方法论:提供了一种将聚合收益分解到资产维度的归因框架。(4) 业务价值:该模型已打包为对话式 AI 智能体,复制者输入钱包地址即可获得该钱包的后验技能评分及可信区间。

每日分享最新报告和数据资料至会员群
关于会员群
- 本会员社群以垂直产业数据研究、深度行业报告分享、AI数据工具实操交流为核心定位;
- 入群即可解锁全行业数据内容免费阅读与下载权限,同步更新海内外一手优质研究报告文档与产业数据;
- 会员老用户享受专属 9 折续费优惠,可长期锁定社群全部权益;
- 为会员提供一对一免费 PDF 报告专属代找服务。
非常感谢您阅读本文,如需帮助请联系我们!

Python开发定制PaliGemma2-LoRA视觉语言模型微调小麦穗头小目标检测|附AI智能体、代码和数据
Python随机森林、聚类与XGBoost融合模型实现穿戴设备数据身体活动监测与行为分析|附AI智能体、代码和数据
Python搭建Bert-BiLSTM-CRF与Neo4j知识图谱实现心理疾病咨询问答系统|附AI智能体、代码和数据
Python随机森林、梯度提升树与逻辑回归融合多阶段特征工程实现信贷违约风险预测|附AI智能体、代码和数据

