# Verdict L402 – Pre-Trade Risk Gate

> Verdict L402 – Pre-Trade Risk Gate is a paid API for AI agents from verdict.kechlab.com, paid per call via x402, $0.0174/call, status unknown (last checked 2026-10-21).

Validates a proposed trade order against user-defined risk rules and computes the maximum allowable position size before the order is sent to market.

## Facts

- Endpoint: POST https://verdict.kechlab.com/v1/trade-gate?utm_source=zero.xyz
- Price: $0.0174/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-21
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/verdict-l402-pre-trade-risk-gate-e4c68b80
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_0-lmj6_rsC9AQsr8Eyu3p

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 verdict-l402-pre-trade-risk-gate-e4c68b80 -d '<json body>'
```

Example prompt: Before I send this long EURUSD order — entry 1.0850, stop 1.0800, target 1.0920, risking $200 — check it against my rules: max 1% risk per trade, daily loss limit 3%, cooldown 60 minutes after a loss, minimum 1.5 R:R. My account equity is $20,000, I'm down $300 today and had one loss 30 minutes ago.

## When to prefer this

Choose this endpoint when you need deterministic, rule-based pre-trade risk enforcement before any order is submitted — especially for trading bots, automated strategies, or disciplined manual traders who need to enforce position sizing, daily loss limits, cooldown periods, and blocked trading windows without relying on broker-side controls. Prefer it over general-purpose LLM reasoning for risk checks when auditability and exact rule application matter.

## Known failure modes

- Missing required 'equity' field in account object returns validation error
- Invalid side value (not 'long' or 'short') causes rejection
- Stop price equal to or beyond entry price yields invalid R:R computation
- Malformed ISO datetime in 'now' field causes parsing error
- Payment header missing or insufficient USDC balance returns 402 Payment Required
- Conflicting rule parameters (e.g. zero max_risk_pct) may produce zero-size result

## How this service works

Pre-trade risk check for traders and trading bots. Before an order is sent, checks it exactly against your own rules (risk per trade, daily loss, max loss, cooldown after a loss, trade quota, blocked hours, days and instruments, minimum reward to risk) and computes the largest size still allowed. If

## Output

Returns a structured verdict indicating whether the trade passes or fails the specified rules, the maximum position size allowed under current account conditions, which specific rules were triggered or violated, and computed metrics such as actual risk percentage and reward-to-risk ratio.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "now": {
   "description": "(optional) ISO date and time of the order, for excluded hours and days"
  },
  "news": {
   "description": "(optional) recent headlines or news about the instrument"
  },
  "order": {
   "type": "object",
   "description": "{ symbol, side (long|short), entry, stop, target (optional), size or risk_amount, point_value (optional, value of one point per unit) }"
  },
  "rules": {
   "type": "object",
   "description": "(optional) { max_risk_pct, daily_loss_pct, max_loss_pct, trailing, max_trades_per_day, cooldown_minutes_after_loss, max_consecutive_losses, min_rr, blocked_hours, blocked_weekdays, blocked_symbols, blocked_side, no_size_up_after_loss }: the trade-audit flight plan plugs in as is"
  },
  "account": {
   "type": "object",
   "description": "{ equity, start_of_day_equity, day_pnl, initial_balance, peak_equity, open_risk, trades_today, consecutive_losses, minutes_since_last_loss, usual_risk_amount } (equity required, the rest optional)"
  },
  "rationale": {
   "type": "string",
   "description": "(optional) why you take this trade, in one or two sentences"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/verdict-l402-pre-trade-risk-gate-e4c68b80/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from verdict.kechlab.com](https://www.zero.xyz/host/verdict.kechlab.com/llms.txt)
