REST 接口 · 文档目录

期货 聚合 K 线(OHLC) · REST 接口

期货合约 K 线。获取指定期货合约在给定日期范围内的开盘价、最高价、最低价、收盘价与成交量 K 线,可通过 resolution 参数设置粒度,从秒级到整个交易时段、周、月、季度或年。K 线由各时间窗内的成交构建,无成交的窗口不产生 K 线。期货交易时段从前一日晚间开始、至结算日结束,因此时段 K 线的 window_start 是 session_end_date 的前一天;若要取某一结算日的时段 K 线,请查询其前一天的 window_start。

GET /futures/v1/aggs/{ticker}
上游时效说明

8 小时历史数据、延迟 10 分钟或实时

上游历史范围

数据可追溯至 2017 年 4 月 3 日

适用场景

  • 市场监控、技术分析、回测、交易策略开发。
接入地址与凭据以实际开通时下发为准。下面是上游字段定义与响应示例,文档收录不等于本站已开放全部能力。

查询参数

参数类型必填说明
tickerstringYes期货合约标识,由基础代码与合约到期月份组成,例如 GCJ5 表示 2025 年 4 月黄金合约。
resolutionstringNo每根聚合 K 线的大小,由数字加单位构成:sec、min、hour、session、week、month、quarter 或 year。每个单位都有最大倍数限制,例如分钟 K 线最大为 59min,超过则需改用 1hour。请求不支持的粒度会返回 400 Bad Request。
window_startstringNo按每根 K 线的起始时间过滤。可接受 YYYY-MM-DD 格式日期或纳秒级 Unix 时间戳。取值会被对齐到所属 K 线区间的起点。省略时,接口返回截至 limit 的最近若干根 K 线。时段 K 线的时间戳记为该时段的开始时间,而非其结算所对应的交易日。期货时段在前一日晚间开盘,因此 window_start 落在 session_end_date 的前一天。若要获取在某个日期结算的时段,请把 window_start 设为该日期的前一天。例如 window_start=2025-08-05 返回的是在 2025-08-06 结算的时段。周、月、季、年 K 线遵循同一规则:window_start 为该周期的第一天,session_end_date 为其中最后一个交易日。可在字段名后加比较后缀来过滤区间:window_start.gte(大于等于)、window_start.gt(大于)、window_start.lte(小于等于)、window_start.lt(小于)。示例:最近若干根分钟 K 线:/v1/aggs/ESU5?resolution=1min&limit=5;在 2025-08-06 结算的时段(传入其起始日期 2025-08-05):/v1/aggs/ESU5?resolution=1session&window_start=2025-08-05;日期区间:/v1/aggs/ESU5?resolution=1session&window_start.gte=2025-07-01&window_start.lte=2025-07-31;某时间戳之后:/v1/aggs/ESU5?resolution=1sec&window_start.gt=1751409877000000000&limit=1000
limitintegerNo每页返回的结果数(默认 1000,最大 50000,最小 1)。
window_start.gtestringNo按 window_start 范围筛选。
window_start.gtstringNo按 window_start 范围筛选。
window_start.ltestringNo按 window_start 范围筛选。
window_start.ltstringNo按 window_start 范围筛选。
sortstringNo以点号表示法按字段与方向排序结果(例如 ticker.asc、name.desc)。

响应字段

字段类型说明
next_urlstring若存在,为下一页结果的 URL。
resultsarray[object]不适用
results[].closenumber该时间段内的最后成交价。
results[].dollar_volumenumber该区间内所有成交的「价格 × 数量」之和,以合约的报价单位表示,与 K 线开盘价、最高价、最低价、收盘价的单位一致。尽管字段名为 dollar_volume,但并未乘以合约乘数,因此它不是名义美元金额。合约乘数详情见产品接口。由于 dollar_volume 是原始求和值,可用于计算任意根 K 线区间的成交量加权平均价(VWAP):将该区间各根 K 线的 dollar_volume 求和,再除以成交量之和。
results[].highnumber该时间段内的最高价。
results[].lownumber该时间段内的最低价。
results[].opennumber该时间段内的开盘价。
results[].session_end_datestring也称交易日,即交易时段的结束日期,格式为 YYYY-MM-DD。时段以其结束日期命名,而 window_start 保存该时段的开始日期,对时段 K 线而言即前一天。
results[].settlement_pricenumber合约在该时段的结算价。时段、周、月、季、年 K 线会返回该字段;对跨越多个时段的 K 线,取值是所在周期最后一个时段的结算价。日内 K 线(sec、min、hour)不返回该字段。
results[].tickerstring合约代码。
results[].transactionsinteger该时间段内发生的成交笔数。
results[].volumeinteger该时间段内成交的合约数量。
results[].window_startintegerK 线聚合窗口的起始时间戳。
statusstring响应状态。

响应示例

{
  "request_id": "b452e45b7eaad14151c3e1ce5129b558",
  "results": [
    {
      "close": 2874.2,
      "dollar_volume": 380717446,
      "high": 2877.1,
      "low": 2837.4,
      "open": 2850.4,
      "session_end_date": "2025-02-04",
      "settlement_price": 2875.8,
      "ticker": "GCJ5",
      "transactions": 74262,
      "volume": 133127,
      "window_start": 1738540800000000000
    },
    {
      "close": 2884.8,
      "dollar_volume": 448429944.1,
      "high": 2906,
      "low": 2870.1,
      "open": 2873.7,
      "session_end_date": "2025-02-05",
      "settlement_price": 2893,
      "ticker": "GCJ5",
      "transactions": 83673,
      "volume": 155170,
      "window_start": 1738627200000000000
    }
  ],
  "status": "OK"
}

原文:Massive 文档 ↗