# X402 Quantitative Strategy Backtester

> X402 Quantitative Strategy Backtester is a paid API for AI agents from x402.feld-feder.at, paid per call via x402, $0.02/call, status down (last checked 2026-09-15).

Runs a deterministic backtest of a quantitative trading strategy (e.g. SMA crossover) against provided price data and returns performance metrics like win rate, return, and drawdown.

## Facts

- Endpoint: POST https://x402.feld-feder.at/v1/quant/backtest
- Price: $0.02/call
- Payment: x402
- Status: down
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/x402-quantitative-strategy-backtester-35e09874
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_Z3y-31vwx3-SslwXwxqR0

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability x402-quantitative-strategy-backtester-35e09874 -d '<json body>'
```

Example prompt: Run a backtest on this price series using an SMA crossover strategy with a fast period of 5 and slow period of 20, starting with $10,000 equity, and tell me the total return, win rate, and max drawdown.

## When to prefer this

Choose this endpoint when you need a quick, pay-per-request deterministic backtest of a simple quantitative strategy (especially SMA crossover) without setting up a local backtesting environment. Ideal for AI agents that need on-demand strategy evaluation at $0.02 per call, with no subscription or infrastructure overhead. Prefer this over heavier backtesting platforms when you just need core performance metrics (return, drawdown, win rate) computed server-side on a provided price series.

## Known failure modes

- Invalid or missing price series — insufficient data points for the chosen periods
- fast_period >= slow_period causing undefined crossover behavior
- Unsupported strategy family name returns error
- Malformed request body returns 400-level error
- Payment failure via x402 protocol returns 402 Payment Required

## How this service works

Pay-per-request data tools for AI agents.

## Output

Returns a JSON object with backtesting results including: strategy config (family, fast/slow periods), total return %, buy-and-hold return % for comparison, win rate %, max drawdown %, number of closed trades, total trade events, ending equity, open position status, total fees, and observation count. Also includes a disclaimer that output is deterministic research only, not financial advice.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "type": "object",
     "title": "QuantBacktestRequest",
     "required": [
      "closes",
      "strategy"
     ],
     "properties": {
      "closes": {
       "type": "array",
       "items": {
        "type": "number",
        "maximum": 1000000000000,
        "exclusiveMinimum": 0
       },
       "title": "Closes",
       "maxItems": 2000,
       "minItems": 3
      },
      "fee_bps": {
       "type": "number",
       "title": "Fee Bps",
       "default": 0,
       "maximum": 100,
       "minimum": 0
      },
      "strategy": {
       "anyOf": [
        {
         "type": "object",
         "title": "SmaCrossoverStrategy",
         "properties": {
          "family": {
           "type": "string",
           "const": "sma_crossover",
           "title": "Family",
           "default": "sma_crossover"
          },
          "fast_period": {
           "type": "integer",
           "title": "Fast Period",
           "default": 20,
           "maximum": 200,
           "minimum": 2
          },
          "slow_period": {
           "type": "integer",
           "title": "Slow Period",
           "default": 50,
           "maximum": 500,
           "minimum": 3
          }
         },
         "additionalProperties": false
        },
        {
         "type": "object",
         "title": "RsiReversionStrategy",
         "properties": {
          "exit": {
           "type": "number",
           "title": "Exit",
           "default": 70,
           "maximum": 99,
           "minimum": 51
          },
          "entry": {
           "type": "number",
           "title": "Entry",
           "default": 30,
           "maximum": 49,
           "minimum": 1
          },
          "family": {
           "type": "string",
           "const": "rsi_reversion",
           "title": "Family",
           "default": "rsi_reversion"
          },
          "period": {
           "type": "integer",
           "title": "Period",
           "default": 14,
           "maximum": 200,
           "minimum": 2
          }
         },
         "additionalProperties": false
        }
       ],
       "title": "Strategy"
      },
      "slippage_bps": {
       "type": "number",
       "title": "Slippage Bps",

… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "ok": true,
  "data": {
   "strategy": {
    "family": "sma_crossover",
    "fast_period": 2,
    "slow_period": 4
   },
   "disclaimer": "Deterministic research output only; not financial advice or an order signal.",
   "total_fees": 0,
   "observations": 8,
   "win_rate_pct": 0,
   "closed_trades": 0,
   "ending_equity": 10000,
   "open_position": false,
   "starting_equity": 10000,
   "max_drawdown_pct": 0,
   "total_return_pct": 0,
   "total_trade_events": 0,
   "buy_hold_return_pct": 5
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/x402-quantitative-strategy-backtester-35e09874/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402.feld-feder.at](https://www.zero.xyz/host/x402.feld-feder.at/llms.txt)
