有小伙伴发现miniQMT行业行情数据居然要VIP才支持,这里我给大家推荐一个从通达信获取的办法。
pytdx 算是一个开源的“良心项目”了,虽然不完美,但至少能满足基础需求。
1. 安装 pytdx
pytdx 是基于通达信数据协议的 Python 封装库,可以直接通过 pip 安装:
如果安装不成功,可以加上 -i 参数指定国内源,比如:
2. 获取行情服务器 IP
pytdx 本质上是通过连接通达信的行情服务器拿数据的,所以我们得先找到可用的服务器 IP。幸运的是,pytdx 自带了一个小工具,可以自动测试出可用的地址:
返回结果如下:
这一步会自动测试一圈,然后返回最快的一个 IP 地址,后面请求数据时就用它。
3. 获取行业成份股
pytdx无法直接获取行业成分股,所以只能通过通达信去实现,由于行业成分股的变动不大(一般一周或一个月才更新一次就可以了),所以,打开通达信软件,然后输入34选择数据导出:
在弹出框里点击板块成份导出:
选择导出目录,分隔格式选逗号,最后点击开始导出就可以了。
导出结果如下:
最后我们用Python读取导出的内容:
返回结果如下:
4. 获取行业行情
有了行业代码(industry_code)和行业成份股,接下来就到了如何获取行情的环节了。
返回值如下:
我们和通达信软件上的行情对比下,完全一致。
5. 有了行业数据可以做什么?
拿到 行业行情 和 行业成份股 后,就等于我们有了「行业整体」+「行业内部个股」两个维度的数据,可以展开很多实用的分析。比如:
行业整体强弱对比:计算每个行业的涨跌幅、年化收益率、波动率,看看谁强谁弱。
行业轮动:通过动量指标(如过去20日涨幅)、均线突破等方法,找出近期最强的板块,构建轮动策略。
龙头股识别:在行业成份股里,找出成交量最大、涨幅最明显的个股,作为“龙头”。
个股相对强弱:对比成份股与行业指数的相对表现,筛选出跑赢行业的“超额收益”股票。
相关性分析:算不同行业指数之间的相关系数,找出风险对冲或者互补关系。
行业轮动矩阵:结合趋势指标(如动量、MACD),画一个行业轮动热力图,直观展现哪些板块在升温。