在跨市场套利、价值比较、行业对照等投资研究中,A/H比价(A股与港股对同一上市公司估值差异)是一个重要参考指标。本文将手把手教你,如何用 Python 自动化获取全市场A/H比价数据,并导出为本地CSV文件。
一、什么是A/H比价?
A/H股比价,通常指A股股价与港股股价之间的比值,用于衡量两地市场对同一家公司的估值差异。例如:
比值 > 1 表示A股相对高估;
比值 < 1 表示港股更贵;
溢价率可用于进一步观察A/H套利机会。
二、数据来源介绍
我们选用的是东方财富网的一个“隐藏接口”:
http://15.push2.eastmoney.com/api/qt/clist/get
这是东方财富用于行情列表展示的接口之一。通过精细化设定参数,我们可以获取 所有港股中具备A/H对照关系的数据,包括:
港股与A股代码
最新价、涨跌幅
市值、最高/最低价
A/H溢价率、比价关系等
三、Python实战代码解析
- 基础设置
import requests
import json
import pandas as pd
import warnings
warnings.filterwarnings('ignore')
pd.set_option('max_rows', None)
pd.set_option('max_columns', None)
pd.set_option('expand_frame_repr', False)
pd.set_option('display.unicode.east_asian_width', True)
我们关闭警告,并设定Pandas的显示格式,确保控制台输出整洁易读。
2. 抓取逻辑(分页+字段提取)
东方财富接口以分页返回结果,我们用while循环处理分页:
page = 1
all_data = pd.DataFrame()
while True:
url = "http://15.push2.eastmoney.com/api/qt/clist/get"
params = {
'pn': f'{page}', # 当前页数
'pz': 100,
本贴含有隐藏内容,付费后可阅(股票量化投资课程学员可免费阅读)
点击下方按钮购买
成为学员