Skip to main content

Auction Rollover Example

This section describes an auction epoch rollover example.

Consider the example of a wallet, Wallet A, who creates an auction, Auction A.

Day 0: Auction Created

Auction ParameterValue
NetworkSolana
Base CurrencySOL
Quote CurrencyUSDC
Min$20 (inclusive)
Max$50 (exclusive)
Notional$200,000
Genesis Epoch Duration10 days
Genesis Epoch Delivery Period5 days
Generic Epoch Delivery Period2 days
Fee PayerMarket Maker
Backup Liquidity ProviderJupiter Aggregator

DFlow hardcodes a set of factors to determine the ending of each epoch's Bid Period. These are not user defined.

Protocol ParameterValue
Time Factor70%
Notional Factor70%

Auction A's Genesis Epoch have the following Bid, Reveal, and Delivery Period:

  • Bid Period: 7 days (Genesis Epoch Duration * Time Factor) = 10 days * 70%
  • Reveal Period: 3 days (Genesis Epoch Duration - Genesis Epoch Bid Period)
  • Delivery Period: the shorter of 5 days (Genesis Epoch Delivery Period) or when $200,000 (Notional) is delivered

Auction Rollover Example 1

Day 0-7: Accepting Bids

Day 8: Genesis Epoch Bid Period Ends

In the 7 days, three market makers submitted bids into Auction A. During this period, none of them or DFlow can see the bid values.

Market MakerBlind Bid Value
A$150
B$200
C$250

The Reveal Period starts and all three of them have 3 days to reveal their bids. No new bids can be submitted and market makers are not obligated to reveal. The winning bid will be selected from the pool of revealed bids.

Auction Rollover Example 2

Day 8-10: Revealing Bids

Day 11: Genesis Epoch Reveal Period Ends

All market makers have revealed. Market Maker C has the highest bid and thus, wins the right to fill $200,000 of SOL-USDC orders! This also marks the start of Epoch 1's Bid Period.

Wallet A now has a maximum of 5 days to deliver $200,000 worth of SOL-USDC of [$20,$50). Let's say Wallet A delivers $140,000 in 2 days.

Auction Rollover Example 3

Day 12: Delivering Order Flow

Day 13: Epoch 1 Bid Period Ends

Epoch 1 has a Bid Period end time that's dependent on which of the following happens first:

  • $140,000 (Total Notional Size * Notional Factor = $200,000 * 70%)
  • 3.5 days (Genesis Epoch Delivery Days * Time Factor = 5 days * 70%) since start of Delivery Period

In this case, Wallet ABC delivered $140,000 in 2 days.

Auction Rollover Example 4

Day 14: Generic Epoch Delivery and Epoch 1 Reveal Period ends at the same time

Auction A delivers the other $60,000 the next day and Genesis Epoch has officially ended. Epoch 1 Reveal Period also ended and the next $200,000 worth of SOL-USDC starts being delivered to the winner of Epoch 1.

Note Epoch 1 has a different maximum Delivery Period because auction operator defines Generic Epoch Delivery Period.

Auction Rollover Example 5