尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

Vibe-Trading 大宗交易数据工具 `get_block_trades` 实战指南:A 股折溢价与营业部席位解读

Vibe-Trading 大宗交易数据工具 `get_block_trades` 实战指南:A 股折溢价与营业部席位解读 Vibe-Trading 大宗交易数据工具get_block_trades实战指南A 股折溢价与营业部席位解读【免费下载链接】Vibe-TradingVibe-Trading: Your Personal Trading Agent项目地址: https://gitcode.com/GitHub_Trending/vi/Vibe-Trading导读本文聚焦 Vibe-Trading 内置的 A 股大宗交易Block Trades数据工具get_block_trades完整讲解其数据来源、端点协议、输入输出参数、返回信封结构与实战调用方式。大宗交易是机构通过场外协议以相对当日收盘价折价或溢价成交的批量交易逐笔记录中携带的成交价、折溢价率以及买卖双方营业部席位信息是观察机构吸筹与派发行为的高价值披露面信号。读完本文你将掌握如何用一行代码拉取任意 A 股个股近 365 天内的全部大宗交易明细并理解 Vibe-Trading 如何通过共享限速层保障你在东财按源 IP 限流的约束下安全地批量使用该数据。一、功能定位A 股披露面的折溢价观测窗口大宗交易Block Trades是 A 股特有的场外协议成交机制大额持股方与受让方协商定价绕过盘中连续竞价以相对当日收盘价一定折价或溢价的价格批量交割。每笔交易在交易所披露系统中留痕包含成交价与成交量/额协议成交的实际价格与规模折溢价率相对当日收盘价的偏离比例是判断大宗买入划算程度的核心指标买卖双方营业部席位挂单成交的券商营业部名称可用于识别机构专用席位与游资席位。Vibe-Trading 的get_block_trades工具工具实现将这一披露面数据封装为只读查询接口供 Agent 在投研流程中直接调用无需安装 SDK、无需申请 token。该工具的技能文档位于 大宗交易.md是 Eastmoney 技能体系SKILL.md中参考数据披露面分类下与 融资融券、股东户数、限售解禁 并列的四类核心披露指标之一。适用范围与边界维度说明市场仅 A 股.SH/.SZ/.BJ港股与美股不在此报表内方向只读查询不会发起任何交易操作数据源东方财富免费免鉴权 datacenter 报表接口限速经共享eastmoneyper-host 节流层东财按源 IP 限流二、数据源与端点协议工具底层直连东方财富 datacenter 报表接口通过reportName RPT_DATA_BLOCKTRADE拉取大宗交易明细https://datacenter-web.eastmoney.com/api/data/v1/get端点查询参数在源码 block_trades_tool.py 中逐项构造名称取值描述reportNameRPT_DATA_BLOCKTRADE大宗交易报表名columnsTRADE_DATE,SECURITY_CODE,SECURITY_NAME_ABBR,CLOSE_PRICE,DEAL_PRICE,PREMIUM_RATIO,DEAL_VOLUME,DEAL_AMT,BUYER_NAME,SELLER_NAME请求列与返回字段一一对应filter(SECURITY_CODEcode)(TRADE_DATEstart)(TRADE_DATEend)个股代码 起止日期窗口sortColumns/sortTypesTRADE_DATE/-1按成交日降序排列pageNumber/pageSize1/200单页请求上限 200 条source/clientWEB/WEB来源标识两点实现细节值得注意过滤用的代码是裸 6 位代码filter中的SECURITY_CODE不带市场前缀如600519而对外入参接受带后缀的完整 symbol如600519.SH。工具内部先经resolve_secid校验再剥离市场前缀组装过滤器见 eastmoney_client.py。单页 200 条上限东财接口本身支持分页但工具固定只拉第一页的 200 条并通过days窗口约束总数据量避免超大回看窗口撑爆 Agent 的上下文窗口——这是对上下文预算的显式保护源码注释明确说明这一设计动机。三、工具入参与参数校验规则输入参数名称类型必选描述codestr是带后缀的 A 股 symbol如600519.SH/000001.SZ/830799.BJdaysint否以今天为止的回溯日历天数窗口clamp 至 [1, 365]默认 30校验与容错逻辑源码级symbol 校验code为空时返回{ok: false, error: code is required}非 A 股 symbol如00700.HK返回错误信封并提示use .SH/.SZ/.BJ测试用例。裸 6 位代码兼容_resolve_code会通过_qualify_a_share将裸代码如600519、000001补全为带后缀的 A 股 symbol 再解析——该行为有专门回归测试锁定test_block_trades_bare_code.py。days参数 clamp_clamp_days将任意输入强制收敛到 [1, 365]缺失或非法值回退默认 30 天小于 1 取 1大于 365 取 365源码 block_trades_tool.py。days99999会被 clamp 到 365有测试验证test_block_trades_tool.py。日期窗口end取当日start end - (days - 1)即days天窗口的闭区间。四、返回结构与字段语义工具返回 JSON 字符串信封成功形态{ ok: true, market: china_a, source: eastmoney, data: { code: 600519.SH, days: 30, count: 2, records: [ ... ] } }失败形态为{ok: false, error: ...}上游网络失败、HTTP 429 封禁等均被捕获为错误信封而非抛异常测试用例。逐笔记录字段源字段 → 输出键源字段输出键类型描述TRADE_DATEtrade_datestr成交日SECURITY_NAME_ABBRnamestr证券简称CLOSE_PRICEclose_pricefloat当日收盘价DEAL_PRICEdeal_pricefloat大宗成交价PREMIUM_RATIOpremium_ratiofloat相对收盘折溢价率%负值表示折价DEAL_VOLUMEdeal_volumefloat成交量DEAL_AMTdeal_amountfloat成交额BUYER_NAMEbuyer_seatstr买方营业部席位SELLER_NAMEseller_seatstr卖方营业部席位字段清洗_to_float对空字符串与None一律映射为None而非抛错中断——报表中部分记录的DEAL_PRICE/PREMIUM_RATIO可能缺失测试明确覆盖了这一空值路径test_block_trades_tool.py。空数据窗口如区间内无大宗交易同样返回ok: true且count: 0属于合法结果而非错误test_block_trades_tool.py。五、调用范例与实战用法最小调用from src.tools.block_trades_tool import BlockTradesTool # 拉取贵州茅台近 30 日大宗交易 print(BlockTradesTool().execute(code600519.SH, days30))解析信封的完整示例技能仓库提供了披露面三路交叉验证的完整脚本 disclosure_example.py其中大宗交易部分的解析模式如下import json from src.tools.block_trades_tool import BlockTradesTool def recent_block_trades(code: str, days: int 30) - None: envelope json.loads(BlockTradesTool().execute(codecode, daysdays)) if not envelope.get(ok): print(f大宗交易获取失败{envelope.get(error)}) return records envelope[data].get(records, []) print(f{code} 近 {days} 日大宗交易 {len(records)} 笔) for rec in records[:3]: print( f {rec[trade_date]} 价{rec[deal_price]} f折溢价{rec[premium_ratio]} 买方{rec[buyer_seat]} )该脚本演示了将get_block_trades与get_dragon_tiger龙虎榜、get_margin_trading融资融券组合使用的思路三者同属披露面数据交叉验证可以更立体地判断机构动向——例如某日大宗交易出现机构专用席位承接、同时龙虎榜出现同向净买入、融资余额同步抬升则吸筹信号的一致性更高。运行前提在agent/目录下执行导入根为agent/无需 token所有请求经东方财富共享 IP 限速层节流。六、限速层与调用纪律为什么不能绕过工具裸请求东财按源 IP限流并会临时封禁突发请求。因此get_block_trades不自建 HTTP 会话而是统一走共享的东财客户端eastmoney_client.py与 per-host 节流层_http.pyper-host 最小间隔同一eastmoney桶内相邻请求至少间隔VIBE_TRADING_EASTMONEY_MIN_INTERVAL秒默认 1.0 秒可用环境变量调整间隔之上还会叠加最多 0.4 秒的随机抖动避免并发调用方锁步齐射会话复用每个 host 桶复用进程级requests.Session摊薄 TCP/TLS 建连开销进程内生效节流是 best-effort 且进程本地不跨机器协调批量任务应调大对应*_MIN_INTERVAL环境变量。技能文档 SKILL.md 明确划出红线切勿绕过工具直接对东财端点发起裸 HTTP 突发请求。测试层也在这一点上做了验证——所有测试均在get_json处 mock绝不触碰真实东财端点test_block_trades_tool.py这既是对测试稳定性的保障也呼应了必须经节流层访问这一调用纪律。七、Signal 解读如何用折溢价与席位做投研观察大宗交易数据的价值不在单条记录而在结构化的观察方法折溢价率判方向持续折价成交premium_ratio为负通常意味着大股东或机构急于变现折价幅度越大短期抛压信号越强罕见的溢价成交premium_ratio为正说明买方愿意付出溢价抢筹常被解读为对后市的强烈看好。席位定身份buyer_seat/seller_seat中出现机构专用字样提示对手方是机构而非普通游资结合龙虎榜席位与两融数据交叉验证可显著提升对吸筹/派发判断的置信度。量价配合看力度单笔成交额deal_amount与当日成交量的比值越大说明该笔协议交易对筹码结构的影响越大将多日记录串联可以识别股东减持节奏与承接方连续建仓行为。需注意大宗交易折溢价、席位名称属于披露事实但机构吸筹/派发的解读属于分析推断应作为信号而非结论使用最好与其他披露面龙虎榜、两融、量价数据共同验证。八、测试与质量保障get_block_trades的可靠性由两个测试文件覆盖test_block_trades_tool.py覆盖成功信封与字段归一化、空窗口零记录、daysclamp、缺失code、非 A 股拒绝、上游失败转错误信封六类场景test_block_trades_bare_code.py锁定裸 6 位 A 股代码无后缀也能正确解析的回归行为。所有 HTTP 均在backtest.loaders.eastmoney_client.get_json处 mock测试不依赖网络与真实数据稳定可复现。小结get_block_trades是 Vibe-Trading Eastmoney 技能体系中定位精准的披露面只读工具一条code 可选days即可获取个股全部大宗交易明细价格、折溢价、量额、买卖席位返回结构稳定、空值与错误均有明确信封语义。配合共享限速层的纪律性访问它可以在东财 IP 限流约束下安全地支撑批量投研任务是观察机构吸筹/派发行为的一线数据入口。【免费下载链接】Vibe-TradingVibe-Trading: Your Personal Trading Agent项目地址: https://gitcode.com/GitHub_Trending/vi/Vibe-Trading创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表