Blind FBA: Implementation
Introduction
Synchronicity Exchange uses Blind Frequent Batch Auctions (BFBA) to create the optimal game theory for traders to get the best prices every trade. This document details the frequent batch auction algorithm implemented by Synchronicity Exchange.
For a short piece on the game theory and implications of BFBA, see Blind FBA: Game Theory and Implications.
How Do Blind Frequent Batch Auctions Work?
Instead of matching trades continuously (as is traditionally done by exchanges like NASDAQ, Binance or Hyperliquid), FBA collects all incoming orders during short discrete time intervals (e.g., every 100 milliseconds), combines them with the resting orders leftover from the previous clearance, and then clears all overlapping orders in the order book simultaneously at a single uniform price per batch.
Each “batch” functions like a mini-auction. Traders submit limit or market orders during a time window Δt (Synchronicity Exchange uses a Δt of 100ms). During this window, orders are indexed privately in a Trusted Execution Environment (TEE) on-chain such that no information from the orders are revealed in any way to anyone other than the order submitter, including Synchronicity.
At the end of Δt, Synchronicity Exchange computes the price that maximizes total trading volume (i.e., the economic equilibrium where aggregate demand intersects aggregate supply). All matched orders are cleared simultaneously at this clearing price.
After a batch clearance, the following information is published.
- Clearance price
- Clearance volume
- Liquidation volume
- Aggregate order book after clearance (i.e., volumes at each bid and ask price level)
No information about individual orders is published.
How is the Clearance Price Calculated?
The clearance price is calculated by finding the intersection between the cumulative bids and asks. After the clearance price is determined, the maximum order volume is cleared at that price, with price, time, quantity prioritization among orders. After every batch, there is a resulting spread between bids and asks. Any leftover orders continue into the next batch unless modified or cancelled.
Case 0: No Intersection
If there is no point of intersection (i.e., there are no overlapping bids and asks at the time of clearance), there are no trades cleared.

Case 1: Single Price of Intersection
If there is a single point of intersection (i.e., the volume for bids and asks is equal at only one price), the clearing price is the price of the intersection and the volume is the minimum of the volume of bids or asks at the clearing price.



Case 2: Multiple Prices of Intersection
If there are multiple points of intersection (i.e. there are multiple prices where the volume for bids and asks is equal), the algorithm determines the clearing price of the batch as the midpoint along the prices where volume is equal.



Thus, Synchronicity Exchange implements BFBA to give every trader the best price in every clearance.