恒指 HX_HSI 日线数据常用于港股宏观趋势、跨市场对冲策略回测,本文使用 requests 库实现日线 K 线拉取,完整展示请求参数配置、超时异常捕获、返回二维时序数组遍历处理逻辑,附带完整可运行代码与标准返回结构,适合本地量化回测脚本、离线行情统计工具。

一、K 线接口基础参数

  1. 接口地址:http://39.107.99.235:1008/redis.php
  2. 品种编码:HX_HSI
  3. 周期 time:1d(日线),单次返回 rows=300 条
  4. 完整请求 URL:

plaintext

http://39.107.99.235:1008/redis.php?code=HX_HSI&time=1d&rows=300
  1. 请求头统一配置 Accept-Encoding: gzip。

二、完整 Python 代码

python

运行

import requests

def get_hsi_daily_kline(limit=300):
    """
    获取恒指HX_HSI日线K线
    :param limit: 返回K线条数
    :return list 时序数组,异常返回None
    """
    api_url = "http://39.107.99.235:1008/redis.php"
    headers = {
        "Accept-Encoding": "gzip"
    }
    params = {
        "code": "HX_HSI",
        "time": "1d",
        "rows": limit
    }
    try:
        resp = requests.get(api_url, headers=headers, params=params, timeout=12)
        # 校验HTTP响应状态
        resp.raise_for_status()
        kline_data = resp.json()
        return kline_data
    except requests.exceptions.RequestException as err:
        print("恒指K线请求网络异常:", str(err))
        return None

# 业务调用逻辑
if __name__ == "__main__":
    hsi_daily_list = get_hsi_daily_kline(300)
    if hsi_daily_list is not None and len(hsi_daily_list) > 0:
        print("===== 恒指前15根日线行情 =====")
        # 循环遍历前15根日线打印信息
        for item in hsi_daily_list[:15]:
            ts, open_p, high_p, low_p, close_p, date_str, vol = item
            print(f"日期:{date_str} 收盘点位:{close_p} 当日成交量:{vol}")

三、返回时序数组标准格式

plaintext

[
    [1782950400000, 18620.5, 18685.2, 18590.3, 18662.7, "2026-07-01", 1269500],
    [1782864000000, 18541.2, 18633.6, 18510.9, 18618.2, "2026-06-30", 1423600]
]

数组元素固定顺序:毫秒时间戳、开盘、最高、最低、收盘、日期、成交量。

四、回测场景使用建议

  1. 日线粒度适合周、月维度趋势指标计算,不适合短线高频策略;
  2. 可将数组转为 pandas DataFrame,直接计算均线、ATR 等技术指标;
  3. 港股交易节假日无 K 线数据,回测时增加日期过滤逻辑剔除空白时段。
Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐