目前国内有很多数据团队专门为金融机构、学术团体和量化研究者们提供的本地量化金融数据服务,那么最常见的就是通达信、同花顺等团队,他们开发出来的level2接口可快速查看和计算金融数据,无障碍解决本地、Web、金融终端调用数据的需求。为了满足投资者的需求,这些数据团队在level2接口中提供了全面的基础金融数据,其中就包括了沪深A股行情数据,那么这些数据可以帮助您、投资者更好的完成量化研究和投资决策。
那么接下来小编为大家分享一下level2接口用Python获取A股行情数据的代码!
## 撰写自定义函数,通过API获取数据
def fetch_trochil(url: str,
params: Dict[str, str],
attempt: int = 3,
timeout: int = 3) -> Dict[str, Any]:
"""装饰requests.get函数"""
for i in range(attempt):
try:
resp = requests.get(url, params, timeout=timeout)
resp.raise_for_status()
data = resp.json()["data"]
if not data:
raise Exception("empty dataset")
return data
except (ConnectionError, Timeout) as e:
print(e)
i += 1
time.sleep(i * 0.5)
def fetch_cnstocks(apikey: str) -> pd.DataFrame:
"""从蜂鸟数据获取A股产品列表"""
url = "https://api.trochil.cn/v1/cnstock/markets"
params = {"apikey": apikey}
res = fetch_trochil(url, params)
return pd.DataFrame.from_records(res)
def fetch_daily_ohlc(symbol: str,
date_from: dt.datetime,
date_to: dt.datetime,
apikey: str) -> pd.DataFrame:
"""从蜂鸟数据获取A股日图历史K线"""
url = "https://api.trochil.cn/v1/cnstock/history"
params = {
"symbol": symbol,
"start_date": date_from.strftime("%Y-%m-%d"),
"end_date": date_to.strftime("%Y-%m-%d"),
"freq": "daily",
"apikey": apikey
}
res = fetch_trochil(url, params)
return pd.DataFrame.from_records(res)
def fetch_index_ohlc(symbol: str,
date_from: dt.datetime,
date_to: dt.datetime,
apikey: str) -> pd.DataFrame:
"""获取股指的日图历史数据"""
url = "https://api.trochil.cn/v1/index/daily"
params = {
"symbol": symbol,
"start_date": date_from.strftime("%Y-%m-%d"),
"end_date": date_to.strftime("%Y-%m-%d"),
"apikey": apikey
}
res = fetch_trochil(url, params)
return pd.DataFrame.from_records(res)
以上是使用Python获取A股行情的几种方法。那么level2接口的逐笔成交功能是它比较亮眼的一个点,小编接下来和大家说说逐笔成交的实例!
level2接口(逐笔成交)
字段名 | 类型 | 备注 |
stock_exchange | uint32 | 证券市场,1-SH,2-SZ |
stock_code | string | 证券代码 |
created_at | int64 | 成交日期时间戳(毫秒) |
code | string | 成交编号 |
price | uint32 | 成交单价 |
volume | uint64 | 成交数量 |
amount | uint64 | 成交金额 |
tx_dir | uint32 | 交易方向:0-未知,1-买方成交,2-卖方成交 |
tx_kind | uint32 | 交易类型:0-成交,1-撤单 |
buy_order_seq | string | 买方委托序号 |
sell_order_seq | string | 卖方委托序号 |
返回实例:
大家若是没有渠道获取A股行情数据的话也可以通过https://gitee.com/l2gogogo 获取,那么对 level2接口有不懂的话也可以通过下方名片给小编留言!