$npx -y skills add FTShare-Lab/FTShare-skills --skill eastmoney-hk-index-daily-kline查询东财港股指数日K线(恒生指数 HSI / 国企指数 HSCEI / 恒生科技 HSTECH 等):开高低收、成交量、成交额、振幅、涨跌幅、涨跌额、换手率。按指数代码/交易日/日期区间查询。Use when user asks about 港股指数K线, 恒生指数走势, 国企指数日线, 恒生科技指数, HK index kline, HSI/HSCEI/HSTECH, eastmoney-hk-index-daily-kline. 数据源东方财富。
| 1 | # 查询东财港股指数日 K 线 |
| 2 | |
| 3 | ## 接口说明 |
| 4 | |
| 5 | | 项目 | 说明 | |
| 6 | |------|------| |
| 7 | | 接口名称 | 对外接口-查询东财港股指数日K线 | |
| 8 | | 匹配键 | `eastmoney-hk-index-daily-kline` | |
| 9 | | 外部接口 | GET /api/v1/market/data/eastmoney-hk-index-daily-kline | |
| 10 | | 请求方式 | GET | |
| 11 | | 适用场景 | 查询港股指数(恒生、国企、恒生科技等)日 K 线:开高低收、成交量、成交额、振幅、涨跌幅、涨跌额、换手率。数据源东方财富,ClickHouse `em_hk_index_daily_kline`。 | |
| 12 | |
| 13 | ## 请求参数 |
| 14 | |
| 15 | | 参数名 | 类型 | 是否必填 | 描述 | 取值示例 | 备注 | |
| 16 | |--------|------|----------|------|----------|------| |
| 17 | | index_code | string | 否 | 指数代码 | HSI | HSI/HSCEI/HSTECH 等;不传返回全部指数 | |
| 18 | | trade_date | string | 否 | 交易日 | 2026-06-15 | YYYY-MM-DD;与 start_date/end_date 互斥 | |
| 19 | | start_date | string | 否 | 区间起始日 | 2026-06-01 | YYYY-MM-DD;需与 end_date 同时提供 | |
| 20 | | end_date | string | 否 | 区间结束日 | 2026-06-15 | YYYY-MM-DD;需与 start_date 同时提供 | |
| 21 | | page / page_size | int | 否 | 分页 | 1 / 50 | 默认 1 / 50,page_size 最大 200 | |
| 22 | |
| 23 | | 模式 | 必填参数 | 说明 | |
| 24 | |------|----------|------| |
| 25 | | 按指数历史 | `index_code` | 指定指数全部历史日 K(最常用) | |
| 26 | | 按交易日全市场 | `trade_date` | 某交易日全部港股指数 | |
| 27 | | 按指数+区间 | `index_code` + `start_date` + `end_date` | 指定指数区间走势 | |
| 28 | |
| 29 | ## 执行方式 |
| 30 | |
| 31 | ```bash |
| 32 | # 恒生指数 HSI 最近日K |
| 33 | python scripts/handler.py --index_code HSI --page 1 --page_size 5 |
| 34 | # 某交易日全部港股指数 |
| 35 | python scripts/handler.py --trade_date 2026-06-15 --page 1 --page_size 50 |
| 36 | # 国企指数 HSCEI 区间走势 |
| 37 | python scripts/handler.py --index_code HSCEI --start_date 2026-06-01 --end_date 2026-06-15 |
| 38 | ``` |
| 39 | |
| 40 | ## 响应结构(信封:code/message/data.records) |
| 41 | |
| 42 | ```json |
| 43 | { |
| 44 | "code": 0, |
| 45 | "message": "success", |
| 46 | "data": { |
| 47 | "pageNum": 1, "pageSize": 5, "total": 3, "pages": 1, |
| 48 | "records": [ |
| 49 | { "index_code": "HSCEI", "index_name": "恒生能源业指数", "secid": "124.HSCIEN", |
| 50 | "trade_date": "2026-06-15", "open": "14439.65", "close": "14293.61", |
| 51 | "high": "14650.26", "low": "14265.58", "volume": "629796496", "amount": "7337176832", |
| 52 | "amplitude": "2.61", "change_pct": "-2.95", "change_amt": "-435.09", "turnover": "0" } |
| 53 | ] |
| 54 | } |
| 55 | } |
| 56 | ``` |
| 57 | |
| 58 | > ⚠️ 当前页数据在 `data.records`,**不是顶层数组**(与其它 skill 的 `items` 不同)。 |
| 59 | |
| 60 | ### records 字段 |
| 61 | |
| 62 | `index_code`、`index_name`、`secid`(东财 secid 如 `124.HSI`)、`trade_date`、`open`/`close`/`high`/`low`、`volume`(成交量)、`amount`(成交额)、`amplitude`(振幅%)、`change_pct`(涨跌幅%)、`change_amt`(涨跌额)、`turnover`(换手率%)。所有数值为字符串,无数据为空字符串 `""`。 |
| 63 | |
| 64 | ## 注意事项 |
| 65 | |
| 66 | - **响应信封不同**:`{code, message, data:{pageNum,pageSize,total,pages,records}}`,数据在 `data.records`。 |
| 67 | - 数值字段为字符串;无数据为空字符串(非 null)。 |
| 68 | - `change_amt` 是涨跌额(绝对值),`change_pct` 是涨跌幅(%),含义不同。 |
| 69 | - `volume`/`amount` 为原始口径;部分指数(如波幅指数 VHSI)成交量为 0 属正常。 |
| 70 | - 全量查询数据量大,建议至少传 `index_code` 或 `trade_date`。 |
| 71 | - 底表 `ReplacingMergeTree`,带 `FINAL` 去重,同一指数同一交易日只返回最新一条。 |