Skip to content

A buy example

This example uses chosen prices and excludes all costs. The Contract price is illustrative and is not a suggested fair price.

Term Value
Yesterday’s reference K 80,000 USDC per BTC
Execution price S 84,000 USDC per BTC
Reference size n 1 BTC
Gap 5%
Split rate q 2.5
Seller input 80,000 USDC
Conversion output R 0.95238095 BTC
Buyer payment P 0.01190476 BTC
Funded amount B 0.96428571 BTC

The buy direction is eligible because S is above K. The conversion output is rounded down to a whole satoshi, which is one hundred-millionth of a BTC.

Amounts in BTC. Seller result compares with conversion at entry. All costs excluded.
Tomorrow's average (USDC/BTC)Buyer payoutSeller payoutBuyer netSeller net at entry
84,00000.96428571-0.011904760.01190476
80,00000.96428571-0.011904760.01190476
79,0000.031645560.932640150.0197408-0.0197408
10,0000.9642857100.95238095-0.95238095

Every row divides the same 0.96428571 BTC. These are BTC results, not USDC profit figures. The seller’s comparison uses the 0.95238095 BTC received at entry.

Tomorrow’s average is 1,000 USDC below the reference. The buyer’s BTC allocation before the final rounding is:

2.5 × 1 × (80,000 - 79,000) / 79,000 BTC

Rounded down to satoshis, that is 0.03164556 BTC. The seller gets the rest: 0.93264015 BTC.

The buyer’s net result is 0.01974080 BTC after subtracting the payment. The seller is down the same amount compared with the BTC from immediate conversion at entry.

The division by 79,000 matters. It keeps the payout in BTC. Simply reusing the USDC formula would give the wrong unit and amount.

If a later unfilled order still asks for 0.01190476 BTC, that BTC amount stays fixed. Its USDC display and the seller’s conversion output may change. This does not alter any earlier fill.

Next: partial fills with different caps.