Swaps & FX with the rate’s age on it.
SwapWidget
On flip the two fields cross-translate; the amounts swap instantly. The computed field is visibly derived, never editable-looking.
| Amount to convert | 1,000 US Dollar |
|---|---|
| Our fee | negative 4 US Dollar and 50 cents |
| Amount we’ll convert | 995 US Dollar and 50 cents |
1 USD = 0.91842 EUR | |
| Recipient gets | 914 Euro and 29 cents |
RateLine · RateTicker
A rate without an as-of is not a rate. A live rate flashes its background for 640ms and swaps the digits instantly — the value itself is never animated.
Static, with as-of
Live
Locked
RateLock
A lock that expires mid-transaction blocks the action until the new rate is acknowledged. It never quietly re-quotes and it never executes at an unseen rate.
Rate held for 30s
ConversionBreakdown · SwapRoute
Every fee is named. The rate used, its timestamp, and what the recipient actually receives are all stated — the spread is not hidden inside the rate.
| Amount to convert | 10,000 US Dollar |
|---|---|
| Transfer fee | negative 39 US Dollar |
| FX margin (0.35%) | negative 35 US Dollar |
| Amount we’ll convert | 9,112 Euro and 70 cents |
1 USD = 0.91842 EUR | |
| Recipient gets | 9,112 Euro and 70 cents |
SwapRoute — a multi-hop conversion, every hop priced
USD → EUR
0.91842
Fee 39 US Dollar
EUR → CHF
0.94102
Fee 21 Euro
CurrencyPairChart · SlippageControl
A slippage tolerance expressed only as a percentage is not decision-grade. The worst case is shown in absolute money.
USD/EUR
Axis does not start at zero — this is a rate, not a quantity.
SlippageControl
You’ll receive at least 9,067 Euro and 14 cents.
FxExposure
Realised and unrealised FX are different facts and are never combined. Every position states the rate it was translated at, and nothing is summed across currencies without that conversion being stated.
FX exposure
Presented in USD ·