/api/signal/backtest/:coin
GET可用

信号回测结果

信号回测结果(仅 BTC / ETH)

GET/api/signal/backtest/:coin

请求

查询参数

名称类型必填默认值可选值说明
coin pathstring必填—BTC, ETH币种;其他取值返回 400。 示例: BTC

标记为“path”的参数是 URL 的一部分。

请求示例

curl -s "https://www.coinboss.com/api/signal/backtest/BTC"

响应字段

字段表根据真实响应生成,因此所列内容与端点实际返回的完全一致。路径中 a[] 表示数组元素,{*} 表示以动态名称(如币种或交易所)为键的对象。

字段类型单位说明
successboolean—请求成功时为 true。失败时响应体为 `{ success: false, code, error, request_id }`。
coinstring—币种代码,大写(例如 BTC)。
backtest_basisstring—回测统计所基于的币种(`ETH`)。
basis_note_codestring—所请求的币种就是被回测的币种时为 `basis_native`;为其他币种展示 ETH 统计数据时为 `basis_borrowed`。
basisstring—合约价格减去现货价格,或基差数据块。
note_codestring—固定代码 `eth_only_basis`:本次响应中的每项统计均来自 ETHUSDT 历史数据。
dailyobject—日度数值。
daily.datasetobject—日度统计所依据的日 K 线历史的规模和日期范围(完整历史与近期窗口)。
daily.dataset.bars_fullnumbercount完整历史中的日 K 线数量。
daily.dataset.range_fullstring—完整历史的起止日期,文本形式。
daily.dataset.bars_recentnumbercount近期窗口中的日 K 线数量。
daily.dataset.range_recentstring—近期窗口的起止日期,文本形式。
daily.dataset.srcstring—数据源。
daily.baselineobject—任意一天买入并持有 30 天的基准结果,分别针对完整历史和近期窗口。
daily.baseline.fullobject—全分辨率数据。
daily.baseline.full.nnumber—计入的条目数量。
daily.baseline.full.hold30_winratenumber%完整历史中全部 30 天持有期里最终盈利的占比。
daily.baseline.full.hold30_pfnumberratio完整历史中全部 30 天持有期的盈利因子:盈利总和 ÷ 亏损总和的绝对值。
daily.baseline.recentobject—最近的条目。
daily.baseline.recent.nnumber—计入的条目数量。
daily.baseline.recent.hold30_winratenumber%近期窗口中全部 30 天持有期里最终盈利的占比。
daily.baseline.recent.hold30_pfnumberratio近期窗口中全部 30 天持有期的盈利因子:盈利总和 ÷ 亏损总和的绝对值。
daily.timingobject—买入并持有的收益率与简单趋势过滤规则的对比,分别针对完整历史和近期窗口。
daily.timing.fullobject—全分辨率数据。
daily.timing.full.buy_hold_pctnumber%完整历史上买入并持有的收益率,从第 210 根 K 线起计算。
daily.timing.full.above_ema200_pctnumber%完整历史上仅在收盘价高于 200 日 EMA 的日期持有时的收益率。
daily.timing.full.below_ema200_pctnumber%完整历史上仅在收盘价低于 200 日 EMA 的日期持有时的收益率。
daily.timing.full.ema20_gt_ema50_pctnumber%完整历史上仅在 20 日 EMA 高于 50 日 EMA 期间持有时的收益率。
daily.timing.full.days_abovestring—收盘价高于 EMA200 规则在完整历史上的文本,格式为 `days held/total days`(持有天数/总天数)。
daily.timing.full.days_faststring—EMA20 高于 EMA50 规则在完整历史上的文本,格式为 `days held/total days`(持有天数/总天数)。
daily.timing.recentobject—最近的条目。
daily.timing.recent.buy_hold_pctnumber%近期窗口内买入并持有的收益率。
daily.timing.recent.above_ema200_pctnumber%近期窗口内仅在收盘价高于 200 日 EMA 的日期持有时的收益率。
daily.timing.recent.below_ema200_pctnumber%近期窗口内仅在收盘价低于 200 日 EMA 的日期持有时的收益率。
daily.timing.recent.ema20_gt_ema50_pctnumber%近期窗口内仅在 20 日 EMA 高于 50 日 EMA 期间持有时的收益率。
daily.timing.recent.days_abovestring—收盘价高于 EMA200 规则在近期窗口内的文本,格式为 `days held/total days`(持有天数/总天数)。
daily.timing.recent.days_faststring—EMA20 高于 EMA50 规则在近期窗口内的文本,格式为 `days held/total days`(持有天数/总天数)。
daily.signalsobject—信号条目。 动态键: bull_regime,bear_regime,multi_long,fast_filter,pullback_add,streak5_up
daily.signals.{*}object—信号条目。
daily.signals.{*}.holdstring—映射的键所指信号在回测中采用的持有规则,例如 `30d`、`7d`,或以 ATR 倍数表示的止盈 / 止损规则。
daily.signals.{*}.fullobject—全分辨率数据。
daily.signals.{*}.full.nnumber—计入的条目数量。
daily.signals.{*}.full.winratenumber|null—胜率。
daily.signals.{*}.full.pfnumber|null—盈亏比。
daily.signals.{*}.recentobject—最近的条目。
daily.signals.{*}.recent.nnumber—计入的条目数量。
daily.signals.{*}.recent.winratenumber|null—胜率。
daily.signals.{*}.recent.pfnumber|null—盈亏比。
daily.signals.{*}.srcstring—数据源。
daily.signals.{*}.full.total_pctnumber%占总量的比例。 可能缺失
daily.signals.{*}.full.mdd_pctnumber%最大回撤。 可能缺失
daily.signals.{*}.recent.total_pctnumber%占总量的比例。 可能缺失
daily.signals.{*}.recent.mdd_pctnumber%最大回撤。 可能缺失
m15object—基于 ETHUSDT 15 分钟 K 线的回测:出场以 ATR(14) 的倍数设定,已计入往返交易成本。
m15.datasetobject—所用 15 分钟 K 线历史的规模、日期范围和完整度。
m15.dataset.barsnumber—K 线。
m15.dataset.rangestring—请求的时间窗口。
m15.dataset.completenessstring—说明 15 分钟历史中实有 K 线数与应有 K 线数的文本。
m15.dataset.srcstring—数据源。
m15.signalsobject—信号条目。 动态键: knife_25,knife_30,cum8_4,cum16_6
m15.signals.{*}object—信号条目。
m15.signals.{*}.signalsnumber—信号条目。
m15.signals.{*}.nnumber—计入的条目数量。
m15.signals.{*}.winratenumber—胜率。
m15.signals.{*}.pfnumber—盈亏比。
m15.signals.{*}.total_pctnumber%占总量的比例。
m15.signals.{*}.mdd_pctnumber%最大回撤。
m15.signals.{*}.tpnumberx映射的键所指信号采用的止盈距离,以 ATR(14) 的倍数表示。
m15.signals.{*}.slnumberx映射的键所指信号采用的止损距离,以 ATR(14) 的倍数表示。
m15.signals.{*}.srcstring—数据源。
m15.threshold_scanarray—按触发买入的单根 K 线跌幅大小分组的回测结果。
m15.threshold_scan[]object—一个跌幅阈值对应的结果。
m15.threshold_scan[].thnumber%触发入场的单根 K 线价格涨跌幅(负值)。
m15.threshold_scan[].signalsnumber—信号条目。
m15.threshold_scan[].nnumber—计入的条目数量。
m15.threshold_scan[].winratenumber—胜率。
m15.threshold_scan[].pfnumber—盈亏比。
m15.threshold_scan[].total_pctnumber%占总量的比例。
m15.filter_testarray—−2.0 % 急跌入场分别叠加一个额外过滤条件(RSI、成交量、EMA200)的结果。
m15.filter_test[]object—一个过滤条件变体对应的结果。
m15.filter_test[].codestring—代码。
m15.filter_test[].nnumber—计入的条目数量。
m15.filter_test[].winratenumber—胜率。
m15.filter_test[].pfnumber—盈亏比。
m15.filter_test[].total_pctnumber%占总量的比例。
m15.confirm_testarray—按入场时机分组的结果:立即入场,或等待一到两根确认 K 线后入场。
m15.confirm_test[]object—一个入场时机变体对应的结果。
m15.confirm_test[].codestring—代码。
m15.confirm_test[].nnumber—计入的条目数量。
m15.confirm_test[].winratenumber—胜率。
m15.confirm_test[].pfnumber—盈亏比。
m15.confirm_test[].total_pctnumber%占总量的比例。
m15.cost_testarray—不同往返交易成本假设下的结果。
m15.cost_test[]object—一种成本假设对应的结果。
m15.cost_test[].cost_pctnumber%本次回测假定的往返交易成本,为名义价值的百分比。
m15.cost_test[].pfnumber—盈亏比。
m15.cost_test[].total_pctnumber%占总量的比例。
m15.hour_testarray—−1.5 % 急跌入场按 UTC 小时时段拆分的结果。
m15.hour_test[]object—一个 UTC 小时时段对应的结果。
m15.hour_test[].codestring—代码。
m15.hour_test[].nnumber—计入的条目数量。
m15.hour_test[].winratenumber—胜率。
m15.hour_test[].pfnumber—盈亏比。
m15.hour_test[].total_pctnumber%占总量的比例。
m15.short_sidearray—镜像交易的结果:在单根 K 线急涨后做空。
m15.short_side[]object—一个涨幅阈值对应的结果。
m15.short_side[].codestring—代码。
m15.short_side[].nnumber—计入的条目数量。
m15.short_side[].winratenumber—胜率。
m15.short_side[].pfnumber—盈亏比。
m15.short_side[].total_pctnumber%占总量的比例。
weekdayarray—星期几。
weekday[]object—星期几。
weekday[].dnumber—日历日期(UTC)。
weekday[].up_ratenumber—收盘上涨的周期占比。
weekday[].mean_pctnumber%完整历史上该星期几(`d` 1 = 周一 … 7 = 周日)的平均日涨跌幅。
montharray—日历月。
month[]object—日历月。
month[].mnumber—自然月编号,1–12。
month[].up_ratenumber—收盘上涨的周期占比。
month[].median_pctnumber%完整历史各年份中该自然月累计价格涨跌幅的中位数。

生成于 2026-11-11 23:01 UTC,基于 1 个真实响应。

响应示例

/api/signal/backtest/BTC · 真实响应,采集于 2026-11-13 03:59:07 UTC。 为便于展示,较长的数组和映射已被截短:month 原有 12 项; weekday 原有 7 项; m15.signals 原有 4 项; daily.signals 原有 12 项; m15.cost_test 原有 5 项; m15.hour_test 原有 3 项。

  • {
    • "success": true,
    • "coin": "BTC",
    • "backtest_basis": "ETH",
    • "basis_note_code": "basis_borrowed",
    • "basis": "ETHUSDT",
    • "note_code": "eth_only_basis",
    • "daily": {
      • "dataset": { … 5 },
      • "baseline": { … 2 },
      • "timing": { … 2 },
      • "signals": { … 2 }
      },
    • "m15": {
      • "dataset": { … 4 },
      • "signals": { … 2 },
      • "threshold_scan": [ … 2 ],
      • "filter_test": [ … 2 ],
      • "confirm_test": [ … 2 ],
      • "cost_test": [ … 2 ],
      • "hour_test": [ … 2 ],
      • "short_side": [ … 1 ]
      },
    • "weekday": [
      • { … 3 },
      • { … 3 }
      ],
    • "month": [
      • { … 3 },
      • { … 3 }
      ]
    }

详细信息

身份验证
无。公开端点。
速率限制
每个 IP 每分钟 1200 次请求
服务端缓存
60m
边缘微缓存
10s
时间窗口
固定:日线 2017-08-17 至 2026-07-30,15 分钟线 2023-01 至 2026-07
数据来源
基于交易所 ETHUSDT K 线的离线回测的静态摘要;不会重新计算。
交易所覆盖范围
仅有 ETH 回测;BTC 返回相同的基于 ETH 的数值。
单位
win rate in percent, profit factor, sample counts
时间戳
除非字段说明另有注明,均为 Unix 纪元毫秒(UTC)
响应格式
json
稳定性
稳定

实时状态

可用检查于 2026-11-13 03:59:07 UTCHTTP 2008 ms结构一致

近 30 天可用性

408 次检查中 100% 通过

错误

所有端点的失败响应格式一致。完整列表见错误页面。 错误与速率限制 →

错误码HTTP含义处理方式
INVALID_PARAM400缺少必填参数,或某个取值不被接受。已知是哪个参数时,`param` 会给出其名称。请勿原样重试;请修正请求。
UNAUTHORIZED401已发送 `CB-API-KEY` 请求头,但该密钥未知或已被吊销。公开数据无需密钥,请去掉该请求头或使用有效密钥。请勿原样重试。
FORBIDDEN403该路由不属于公开 API(内部或仅限账户使用)。请勿重试。
NOT_FOUND404未知路由,或所请求的币种 / 交易所 / 基金不存在。请勿重试;请对照目录检查路径和标识符。
RATE_LIMITED429请求数超过每分钟限额。`Retry-After` 给出需要等待的秒数。等待 `Retry-After` 指定的时间后,再以退避方式重试。
INTERNAL500意外的服务器错误。错误信息有意保持通用;报告问题时请附上 `request_id`。几秒后重试一次;若问题持续,请附上请求 ID 报告。
UPSTREAM_FAILED503该端点背后的数据源未及时响应。不会返回过期数据或替代数值来顶替。以退避方式重试;并查看状态页。
UNAVAILABLE501 / 503数据集暂时未就绪(缓存预热中),或该端点尚无合法的公开数据源。请稍后重试;目录会标出因设计原因而不可用的端点。
REQUEST_FAILED200部分较旧的端点会以 HTTP 200 返回 `success: false`。请务必检查 `success`,而不只是 HTTP 状态码。取决于具体信息;按请求失败处理。

试一试

GET/api/signal/backtest/:coin可用
参数

string — Coin; other values return 400.

请求 URLhttps://www.coinboss.com/api/signal/backtest/BTC
选择一个端点,然后点击“发送请求”。响应、响应头和耗时将显示在这里。