用途:收集指定股票的历史K线、实时行情、筹码分布数据,覆盖A股、港股、美股及ETF,适合需要批量获取行情数据用于分析或决策复现的场景。
主要能力:自动识别市场类型(A股为6位数字、港股为5位数字、美股为字母代码、ETF为51/52/56/58开头);输出klines(日期、开高低收、成交量额、涨跌幅)、realtime(价格、量比、换手率、市盈率等)、chip(仅A股的获利比例、筹码集中度等)字段。
使用方式:执行 python scripts/collect_stock_data.py <股票代码> [--days N] [--provider akshare|tushare] --date YYYY-MM-DD。--days默认60天;--provider默认akshare,仅用户选择时用tushare;--date为保存文件日期标识(必填,不影响数据时间范围)。例如 python scripts/collect_stock_data.py 600519 --date 2025-01-01。安装依赖:pip install akshare tushare pandas。
输出路径为 output/<股票代码>/<日期>/data.json。
限制:tushare当前仅支持A股K线,需设置环境变量 TUSHARE_TOKEN,且realtime与chip返回null。A股数据源按东方财富→新浪→腾讯自动切换;实时行情与筹码失败会警告但不阻断K线保存;请求间随机休眠2-5秒防封禁。字段细节、市场识别规则与错误处理详见markets.md、fields.md。