GET通过 Slug 获取价格历史

使用市场 slug 检索特定结果的历史价格数据。此端点专为 WebSocket 信号设计,WebSocket 使用基于 slug 的频道名称(market:{slug}:price)。

请求

GET /v1/markets/slug/:slug/prices-history

路径参数

参数类型必填描述
slugstring市场 URL slug(例如 will-btc-hit-100k

查询参数

参数类型必填默认值描述
outcomeIdstring获取价格历史的结果 ID
startTsnumber1周前开始 Unix 时间戳(秒)
endTsnumber当前时间结束 Unix 时间戳(秒)
fidelitynumber1数据精度(分钟)。值越大数据点越少。

响应

{
  "history": [
    { "t": 1710000000, "p": 0.67 },
    { "t": 1710000300, "p": 0.68 },
    { "t": 1710000600, "p": 0.665 }
  ]
}

响应字段

字段类型描述
historyarray价格点数组
history[].tnumberUnix 时间戳(秒)
history[].pnumber该间隔的收盘价(0-1)

WebSocket 集成

此端点设计用于在 market:{slug}:price 频道收到 WebSocket 信号后调用:

// 1. 订阅 WebSocket 频道
socket.emit('join', { channel: 'market:will-btc-hit-100k:price' });

// 2. 收到信号后,使用相同的 slug 获取更新数据
socket.on('market:will-btc-hit-100k:price', async (data) => {
  const response = await fetch('/v1/markets/slug/will-btc-hit-100k/prices-history?outcomeId=outcome-uuid-1');
  const priceHistory = await response.json();
});

错误

状态码描述
400缺少 outcomeId 或结果不属于此市场
404未找到市场或结果

示例

最近24小时,5分钟精度

curl "https://api.conviction.bet/v1/markets/slug/will-btc-hit-100k/prices-history?outcomeId=outcome-uuid-1&startTs=1709913600&endTs=1710000000&fidelity=5"

最近一周,默认精度

curl "https://api.conviction.bet/v1/markets/slug/will-btc-hit-100k/prices-history?outcomeId=outcome-uuid-1"