KESTREL docs
v1.0.0
Get help
● Use · Market scans

Scanner and hedge
funding, spreads, screener and a two-leg hedge.

Read-only scans across the exchanges a user has connected. Nothing is traded unless the user confirms a hedge.

FundingSpreadsScreenerHedge

01Funding rates

Funding rates of perpetual markets with the interval, the next funding time, the mark price and the annualised rate: rate × 24 / interval hours × 365. A positive rate means longs pay shorts. When an exchange does not report the interval, 8 hours is assumed and marked "default". Filter by a minimum |annualised| and by exchange. Rates are cached for 60 seconds.

02Spreads

Up to 10 symbols compared across exchanges: bid, ask, taker fee, and the best "buy on / sell on" pair with the gross and the net spread after taker fees on both sides. The fee comes from the market info; when a market has none, SCANNER_DEFAULT_TAKER_FEE (0.001) is used and marked "default fee".

Only the top of the book is used. Depth, withdrawal fees and transfer time are not included, so a spread is not an opportunity by itself.

03Screener

One exchange, spot or perpetual, sorted by 24 h change, volume, volatility or funding (funding needs perpetuals), up to 30 markets. It shows where the last price sits in the 24 h range (0 = low, 100 = high) and the volatility: the standard deviation of the last 24 hourly returns.

04Hedge

Opens two ordinary market Smart Trades of the same size: a long and a perpetual short, on the same or on two accounts. Choosing Spot long (carry) makes the long leg spot.

  • The same validation and kill-switch rules as any Smart Trade apply.
  • If the second leg cannot be created, or either leg fails on its first pass, every leg is closed at market (or its entry cancelled) and the app shows which leg failed and why. Nothing is left open on one side only.
  • Isolated margin; leverage 1 by default.

A live hedge asks "Open a live hedge at market?" and is sent with a slide.

05Limits

Each user may make 30 scanner requests a minute (SCANNER_RATE_PER_MIN). If one exchange does not answer, its error is listed and the others are still shown.