# Risk gate — rolling 24h BUY cap

**How the daily loss limit works, why it never blocks selling, and how to configure it.**

Section: Account · Last updated: 2026-07-28

---

## What it enforces

Total **USDC notional you commit to new BUY orders** in any rolling 24-hour window. Default $500. Configurable in Settings → Trading → Daily loss limit (min $0, max $1,000,000).

## What it doesn't block

  - SELL orders (closing positions reduces risk)
  - TP / SL fires (they close positions)
  - Cancellations

## When you hit the cap

The next BUY attempt returns a friendly error: "Daily limit hit: $X of $Y risked in the last 24h. This order (Z) would push you over. Raise the limit in Settings or wait for older positions to roll out." Older BUYs age out of the 24h window and free budget naturally.

## Why we don't measure P&amp;L

Realized+unrealized P&amp;L is fiddly across market resolutions and mid-window price swings. Notional-committed is a hard, conservative bound: you can never have more than $500 of BUY exposure originated in the last 24h. Whether that goes to zero or to 2× is out of scope — we just cap the maximum in-flight risk.

## Cool-off (future)

`coolOffHours` pref exists in the schema but isn't enforced yet. Will be a "soft pause" that forces an explicit acknowledgement before trading resumes after a bad session.