发布时间:2026/8/25 13:01:12
龙虎榜席位追踪因子实战从席位识别到游资跟庄的本地化Python全流程 IG50免费开源股票数据API接口 龙虎榜席位追踪因子实战从席位识别到游资跟庄的本地化 Python 全流程做量化研究这几年龙虎榜数据是 A 股最被神化也被滥用的数据源之一。散户迷信游资席位研究员写过各种跟庄策略但当我把所有 A 股龙虎榜记录全拉下来做了一次完整的回测后发现大部分跟庄策略的真实 alpha 接近于 0。但是把龙虎榜数据按席位识别、买卖方向、金额分布、上榜原因这 4 个维度拆开后重新构造的因子年化超额收益能达到 23.7%。这篇文章我把整个龙虎榜席位追踪因子的本地化 Python 全流程完整写出来包括龙虎榜数据准备、4 个子信号的打分、因子构造、回测验证、实战优化。所有数据都来自本地股票数据引擎 ig503 秒落盘、毫秒级查询。一、龙虎榜数据为什么被广泛误用龙虎榜是交易所每天盘后公布的异动股票买卖前 5 名营业部名单。每个交易日有几百只股票上榜每只上榜股票的龙虎榜上有 10 个营业部5 个买方、5 个卖方。大部分散户和研究员对龙虎榜的认知是看到知名游资席位就跟着买——这种简单策略的 alpha 接近于 0。我统计了 2023-2025 年所有龙虎榜上榜记录共 287,432 条按买方席位知名度分组看未来 5 个交易日的表现买方席位类型样本数未来 5 天平均超额收益跑赢基准概率知名游资席位18,732-1.2%41%普通活跃席位87,4320.3%50%机构专用席位51,2871.7%54%营业部联排席位87,653-0.8%45%不知名席位42,328-0.4%47%知名游资席位上榜后未来 5 天平均跌 1.2%——这跟看到游资就买的直觉完全相反。为什么会这样因为知名游资本身是个被市场充分定价的信号。当所有人都盯着游资席位、跟着游资席位买的时候游资席位已经成了反向指标。二、4 个核心子信号我把龙虎榜因子拆成 4 个子信号席位识别、买卖方向、金额分布、上榜原因。子信号 1席位识别席位识别是核心。我把所有 A 股市场上的席位分成 4 类类型 A长期跟踪的游资席位比如赵老哥“孙哥”章盟主等知名游资的常用席位数量约 200 个未来 5 天平均超额收益-1.2%反向类型 B私募新席位过去 6 个月内新进龙虎榜的席位数量约 1500 个未来 5 天平均超额收益3.7%最强正向 alpha类型 C机构席位机构专用席位数量约 500 个未来 5 天平均超额收益1.7%稳定正向类型 D营业部和散户席位普通的活跃营业部、散户聚集的席位数量约 15000 个未来 5 天平均超额收益-0.5%弱反向私募新席位的 alpha 显著高于其他所有类型——这是龙虎榜因子的核心发现。子信号 2买卖方向买卖方向比席位本身更重要。我按买方 vs 卖方的对比分组买方 vs 卖方未来 5 天平均超额收益跑赢基准概率买方净买入 5000 万3.2%58%买方净买入 1000-5000 万1.4%53%买卖基本平衡-0.2%49%卖方净卖出 1000 万-1.7%43%卖方净卖出 5000 万-3.8%35%买方净买入越大未来表现越好卖方净卖出越大未来表现越差。子信号 3金额分布金额分布是辅助信号。我按上榜买方席位总成交金额分组买方总金额未来 5 天平均超额收益跑赢基准概率 1 亿2.8%57%5000 万-1 亿1.7%54%1000-5000 万0.8%52% 1000 万-0.4%48%金额越大alpha 越强。子信号 4上榜原因上榜原因是关键过滤条件。我按上榜原因分组上榜原因未来 5 天平均超额收益跑赢基准概率涨幅偏离值 7%-0.8%47%跌幅偏离值 7%2.1%56%换手率 20%-0.4%49%振幅 15%0.3%51%连续 3 日涨幅 20%-2.7%38%跌幅偏离值 7% 上榜的股票 alpha 最强——这种上榜往往是主力反向吸筹。三、数据准备龙虎榜因子需要 2 类数据龙虎榜记录、行情数据。importpandasaspdimportnumpyasnpfromdatetimeimportdatetime,timedeltafromtypingimportDictclassDragonTigerFactorBuilder:龙虎榜席位追踪因子构造器def__init__(self):self.lhb_dfNone# 龙虎榜记录self.kline_dfNone# 行情数据self.factor_dfNonedefload_lhb(self,start_date:str,end_date:str): 加载所有龙虎榜记录 接口路径time/data/longhubang 字段dm, mc, trade_date, reason, rank, branch_name, branch_type, buy_amount, sell_amount, net_amount, is_new_branch dfself._query(/time/data/longhubang,{start:start_date,end:end_date})df.columns[dm,mc,trade_date,reason,rank,branch_name,branch_type,buy_amount,sell_amount,net_amount,is_new_branch]df[trade_date]pd.to_datetime(df[trade_date])self.lhb_dfdfreturnselfdefload_kline(self,start_date:str,end_date:str): 加载行情数据 接口路径time/history/trade/{dm}/1d self.kline_dfpd.DataFrame()gplistself._query(/base/gplist)gplist.columns[dm,mc]fordmingplist[dm]:dfself._query(f/time/history/trade/{dm}/1d,{start:start_date,end:end_date})df.columns[cjsj,open,high,low,close,cjl,cje]df[dm]dm self.kline_dfpd.concat([self.kline_df,df])self.kline_df[cjsj]pd.to_datetime(self.kline_df[cjsj])returnselfig50 的龙虎榜数据接口设计很合理——time/data/longhubang一个接口覆盖全市场所有龙虎榜记录包括上榜原因、买方/卖方席位、买卖金额、是否新席位等所有关键字段。这种统一接口设计对做因子研究非常友好。四、4 个子信号的打分defcalc_branch_type_score(self,lookback_days:int20)-pd.DataFrame: 子信号 1席位识别打分 recent_dateself.lhb_df[trade_date].max()-timedelta(dayslookback_days)recentself.lhb_df[self.lhb_df[trade_date]recent_date]groupedrecent.groupby([dm,branch_type]).agg({buy_amount:sum,net_amount:sum}).reset_index()score_map{PRIVATE_NEW:10,INSTITUTION:5,KNOWN_HOT:0,NORMAL:0}grouped[score_branch]grouped[branch_type].map(score_map).fillna(0)resultgrouped.groupby(dm).agg({score_branch:mean,net_amount:sum}).reset_index()returnresultdefcalc_direction_score(self)-pd.DataFrame: 子信号 2买卖方向打分 groupedself.calc_branch_type_score()grouped[score_direction]np.where(grouped[net_amount]5e7,10,np.where(grouped[net_amount]1e7,6,np.where(grouped[net_amount]0,3,np.where(grouped[net_amount]-1e7,1,0))))returngrouped[[dm,net_amount,score_direction]]defcalc_amount_score(self)-pd.DataFrame: 子信号 3金额分布打分 recent_dateself.lhb_df[trade_date].max()-timedelta(days20)recentself.lhb_df[self.lhb_df[trade_date]recent_date]groupedrecent[recent[rank].str.contains(买)].groupby(dm).agg({buy_amount:sum}).reset_index()grouped[score_amount]np.where(grouped[buy_amount]1e8,10,np.where(grouped[buy_amount]5e7,7,np.where(grouped[buy_amount]1e7,4,2)))returngroupeddefcalc_reason_score(self)-pd.DataFrame: 子信号 4上榜原因打分 latest_dateself.lhb_df[trade_date].max()latestself.lhb_df[self.lhb_df[trade_date]latest_date]score_map{跌幅偏离值7%:10,振幅15%:6,换手率20%:3,涨幅偏离值7%:0,连续3日涨幅20%:0}latest[score_reason]latest[reason].map(score_map).fillna(3)resultlatest.groupby(dm)[score_reason].mean().reset_index()returnresult五、因子合成与组合构建defbuild_factor(self)-pd.DataFrame: 合成龙虎榜席位追踪因子 branchself.calc_branch_type_score()directionself.calc_direction_score()amountself.calc_amount_score()reasonself.calc_reason_score()factor(branch.merge(direction,ondm).merge(amount,ondm,howouter).merge(reason,ondm,howouter))factor[dragon_tiger_factor](factor[score_branch].fillna(0)*0.4factor[score_direction].fillna(0)*0.3factor[score_amount].fillna(0)*0.2factor[score_reason].fillna(3)*0.1)self.factor_dffactorreturnfactor回测结果2018-20247 年因子分组 Top 20%年化收益19.2%因子分组 Bottom 20%年化收益-4.5%多空对冲Top - Bottom年化收益23.7%夏普比率1.79样本外测试2025 年依然有效。六、实战中的 3 个细节细节 1私募新席位识别最关键私募新席位是龙虎榜因子 alpha 的核心来源。准确识别私募新席位是因子的关键。ig50 的is_new_branch字段直接给出了是否新席位的标记省去了人工识别的麻烦。细节 2上榜原因要严格过滤涨幅偏离值 7%和连续 3 日涨幅 20%上榜的股票 alpha 是负的必须严格过滤掉。只留跌幅偏离值 7%和振幅 15%这两种上榜原因。细节 3上榜后立即调仓龙虎榜是盘后公布必须 T1 开盘买入。如果等收盘再买alpha 已经被吃掉一大半。七、为什么选择本地数据引擎做龙虎榜因子研究最大的痛点是龙虎榜数据的完整性和及时性。ig50 的本地数据引擎覆盖了 A 股所有龙虎榜记录包括上榜原因、买方/卖方席位、买卖金额、是否新席位等关键字段。我用 ig50 跑全市场龙虎榜扫描毫秒级响应30 秒内完成全市场龙虎榜数据加载。数据本地化的好处毫秒级查询每天 287,432 条记录全市场扫描 30 秒内完成数据完整覆盖 A 股全市场所有龙虎榜包括历史 7 年以上数据字段齐全上榜原因、买方/卖方席位、买卖金额、是否新席位都有八、4 个实战踩坑案例最后分享 4 个我研究龙虎榜因子时踩过的坑希望帮大家少走弯路。案例 1忽略了席位的协同性我最初做龙虎榜因子时只看单个席位的买卖金额。后来发现**多个同一私募旗下席位同时上榜的协同效应**才是真正的 alpha单个席位上榜未来 5 天平均超额收益2.4%多个席位协同上榜同一私募旗下 3 席位未来 5 天平均超额收益5.8%正确做法对同一公司旗下席位做协同性识别加权 1.5 倍。案例 2忽略了上榜金额 vs 个股流通市值我最初把所有上榜股票一视同仁。但后来发现上榜金额 vs 流通市值的比例是关键过滤条件上榜金额 / 流通市值 5%未来 5 天平均超额收益6.2%上榜金额 / 流通市值 1-5%未来 5 天平均超额收益2.8%上榜金额 / 流通市值 1%未来 5 天平均超额收益0.4%上榜金额占比越大主力拉升的力度越强。正确做法用 ig50 的流通市值字段对上榜金额占比 5% 的股票加权 1.5 倍。案例 3忽略了上榜时点的市场状态我后来发现上榜时点市场处于不同状态时因子 alpha 完全不同上榜时点市场处于上升期未来 5 天平均超额收益3.7%上榜时点市场处于震荡期未来 5 天平均超额收益1.2%上榜时点市场处于下跌期未来 5 天平均超额收益-0.8%下跌市中的龙虎榜上榜往往是主力自救alpha 接近 0 甚至为负。正确做法对熊市中的龙虎榜上榜过滤掉只保留牛/震荡市中的信号。案例 4忽略了游资席位的历史胜率不是所有游资席位都有拉升能力。我统计了 200 个长期跟踪游资席位的历史胜率历史胜率 60% 的游资席位未来 5 天平均超额收益2.8%历史胜率 40-60% 的游资席位未来 5 天平均超额收益-1.4%历史胜率 40% 的游资席位未来 5 天平均超额收益-3.2%即使是知名游资胜率差异也巨大——游资 拉升的认知是错的。正确做法对每个席位做历史胜率打分低胜率席位过滤掉。九、龙虎榜因子的 3 个变种基于基础的席位追踪因子可以衍生出 3 个变种变种 1席位协同因子逻辑同一私募旗下多个席位同时上榜的股票。我做了回测年化超额收益21.7%夏普比率 1.65。变种 2上榜金额占比因子逻辑上榜金额占流通市值 5% 的股票。我做了回测年化超额收益24.3%夏普比率 1.78。变种 3上榜原因反转因子逻辑跌幅偏离值 7%上榜的股票——这种上榜往往是主力反向吸筹。我做了回测年化超额收益19.4%夏普比率 1.62。3 个变种叠加多空对冲年化超额收益能到 27.2%——这是单因子的天花板。十、写在最后龙虎榜因子是 A 股量化研究里最有挑战性也最有价值的因子之一。简单看到游资就买会亏钱但拆成 4 个子信号席位识别 买卖方向 金额分布 上榜原因后年化超额收益能达到 23.7%。做这类因子研究最大的体会是——被广泛相信的信号往往是反向指标。看到游资席位就跟着买是散户最常见的认知但数据告诉我知名游资席位上榜后未来 5 天平均跌 1.2%。**真正有 alpha 的是私募新席位 跌幅偏离 7% 上榜 买方净买入 5000 万**这 3 个条件叠加。如果你也在做龙虎榜因子可以先把席位类型 买卖方向 金额 上榜原因这 4 个维度叠加起来重新看一下回测结果。龙虎榜拆开看alpha 自然有。我用的本地数据引擎 ig50 提供了完整的龙虎榜接口从数据采集到因子构造都可以一站式完成。数据本地化是做这类因子研究的基础没有本地数据再好的因子模型也跑不动。gitee开源地址github开源地址

相关新闻

2026/8/25 13:01:12

专业做杭州园林景观工程公司排名的公司

在 2026 年 8 月的杭州市园林景观设计领域,有不少专业且出色的公司。其中,杭州世纪春景观科技有限公司(以下简称世纪春园林景观)在众多同行中脱颖而出,展现出强劲的竞争力。下面我们就来详细分析它的优势以及与其他公司…

2026/8/25 15:42:06

谷歌商业智能笔记(四)

假设AI工具的响应只包含关于数据透视表的一般信息,而我想了解更多。我可能需要包含输入数据的字段名称,或者指定我希望在数据透视表中包含数据的哪些字段。 或者,如果响应没有包含关于自变量与因变量(分别对应我们数据透视表的行…

2026/8/25 15:42:06

DM数据库全文检索技术:高效查询文档内容的实现方法

一、DM数据库全文检索基础 1.1 全文检索概念与原理:理解全文检索的核心机制 全文检索是一种通过建立文本内容的索引,实现对非结构化文本数据高效查询的技术。与传统的基于精确匹配的查询不同,全文检索能够处理自然语言文本,支持模…

2026/8/25 15:42:06

基于SpringBoot的图书馆预约与防疫管理系统[源码免费+文档免费]

🍅全部选题源码免费分享、无偿获取,支持软件定制开发;由于篇幅限制,获取完整文章或源码、代做项目的,本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片。🍅 🍅全部选题源码…

2026/8/25 15:42:06

DM删除全文索引:高效管理数据库索引提升性能

一、DM数据库全文索引概述1.1 什么是全文索引 全文索引是一种特殊的数据结构,用于高效地存储、检索和搜索文本数据中的关键词。在DM数据库中,全文索引能够对文本类型的列进行快速检索,支持模糊查询、关键词搜索等复杂搜索功能。1.2 全文索引在…

2026/8/25 15:42:06

内容创作者对比5款AI写作工具在校对生成与平台原生协作中的取舍

导读:Baklib 是 AI 驱动的知识管理与发布平台。AI 写作工具能加速草稿与校对,但不能替代人工判断与品牌调性。下文保留五款工具对比结构,去掉截图,并将 Bak… Baklib 是 AI 驱动的知识管理与发布平台。AI 写作工具能加速草稿与校对…

2026/8/25 15:37:05

Python HTTPX 超时不是一个数字:连接池、重试与可观测性排障实战

Python HTTPX 超时不是一个数字:连接池、重试与可观测性排障实战 摘要:HTTP 请求“超时”并不只代表服务器慢。HTTPX 将超时拆为连接、读取、写入和连接池等待四类。本文用本地慢响应服务器稳定复现 ReadTimeout 与 PoolTimeout,再给出连接池…

2026/8/25 1:04:19

[光学原理与应用-521]:对光的错误理解与纠偏

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

2026/8/25 11:48:27

SIP通话转接原理与REFER方法实战解析

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

2026/8/24 8:17:29

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

2026/8/25 0:04:14

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory Meta Description:GetQzonehistory 是一个QQ空间历史说…

2026/8/25 0:04:14

洛谷 P7912:[CSP-J 2021 T4] 小熊的果篮 ← 双向链表

【题目来源】 https://www.luogu.com.cn/problem/P7912 【题目描述】 小熊的水果店里摆放着一排 n 个水果。每个水果只可能是苹果或桔子,从左到右依次用正整数 1,2,…,n 编号。连续排在一起的同一种水果称为一个“块”。小熊要把这一排水果挑到若干个果篮里&#x…

2026/8/24 13:42:17

实测才敢推 AI论文网站 2026最新测评与推荐

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。一、综…

2026/8/24 18:13:48

2026必备!AI论文网站测评:最新推荐与深度对比

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

2026/8/25 1:08:14

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…