Synchronicity Oracles
Introduction
Synchronicity Exchange supports a variety of oracles. The exchange uses an index price oracle and mark price oracle for each asset traded. Additionally, Synchronicity’s Synchronous Strategies builder supports the use of arbitrary oracle data as inputs into synchronous strategies.
This document details how the mark and index prices are calculated by Synchronicity Exchange and includes high level information on the types of oracles supported by the Synchronous Strategies builder.
Exchange Oracles
Index Price
The index price is a reference value for the underlying asset of a perpetuals contract. The index price is used by the funding rate and mark price calculations.
For each perpetual market, the index price is computed as a weighted median of the spot mid prices from other exchanges. The following exchanges are currently included with the following weights (weights are subject to change).
Binance (3), Bybit (2), OKX (2), Kraken (1), GATE IO (1), MEXC (1)
Once Synchronicity launches a spot exchange which has sufficient market liquidity, Synchronicity’s spot price will be included in the index price calculation as well.
Mark Price
The mark price is a manipulation-resistant reference price for the fair value of perpetual contracts. The mark price is used by (1) margin, liquidation and UPNL calculations in order to facilitate smooth functioning of the Synchronicity Exchange liquidation engine, (2) orders including take profit/stop loss orders and other advanced order types and (3) Synchronous Strategies.
Synchronicity Exchange uses external and internal oracles to calculate a manipulation resistant mark price.
Mark price is calculated as the median of the following prices.
-
Index Price + Moving Average where
Simple Moving Average (past X minutes) = Simple Moving Average (Mid Price - Index Price), sampled every Y seconds over the past X minutes.
The simple moving average provides the average deviation of the mid price of a perpetual on Synchronicity Exchange relative to its index price. This provides an accurate and manipulation resistant measure of the average deviation of the mid price of perpetuals on Synchronicity Exchange from their Index Price over the previous X minutes. By adding this value to the current Index Price, Synchronicity Exchange calculates a live price that factors in the historical deviation of the mid on Synchronicity Exchange from the Index Price.
-
Median of best bid, best ask, and last trade on Synchronicity
The median of these three values gives an accurate representation of the price at which perpetuals on Synchronicity Exchange are currently trading, but is less manipulation resistant than (1).
-
Median of perpetual mid prices externally with the following weights (i.e., the weight determines the number of instances of the mid price from a given exchange in the set).
Binance (3), Bybit (2), OKX (2), Gate IO (1), MEXC (1), Hyperliquid (1)
The median of mid prices across external exchanges provides an accurate and manipulation-resistant measure of overall market depth, generally representing the prevailing market price for a perpetual.
Mark prices are updated every second by Synchronicity Oracle TEEs (see below) to ensure trust minimized oracles.
Synchronous Strategies Oracles
The Synchronous Strategies builder empowers users to create arbitrarily sophisticated synchronous strategies via a GUI and post them to Synchronicity Exchange in encrypted form, where they will be executed privately with zero execution latency.
The utility of Synchronous Strategies is dependent on the speed, variety, trustlessness and privacy of the oracles it uses. The oracle solution for Synchronous Strategies removes latency wherever possible, supports arbitrary API calls and provides high levels of security and privacy via TEEs.
Latency Minimization
Synchronicity Exchange removes latency asymmetry for traders who use Synchronous Strategies by normalizing for the latency of certain data feeds. First, Synchronicity accesses the lowest latency data feeds possible (i.e., that are competitive with HFTs’ feeds). Second, Synchronicity delays clearance of a batch after the auction window has closed for long enough such that oracle data with the same timestamp as the clearance can be used by Synchronous Strategies. Thus, in practice, latency for traders that use these feeds for their synchronous strategies is removed entirely.
Universal Data Support
Traders demand a wide variety of data feeds. Synchronicity Exchange provides a wide variety of data feeds by default and allows users to permissionlessly add data feeds from any API with any parsing method.
Synchronicity Exchange contains a general language for how oracle data can be processed. Users can extract and parse certain parts of API feed responses and request time based averages and the computation of other statistics from the feed. Thus, Synchronicity Exchange provides traders with the ultimate flexibility to integrate any data into their synchronous strategies.
TEE Security and Privacy
Synchronicity Exchange oracles will run on TEEs managed by Corino, Synchronicity’s TEE management solution, to provide strong integrity, privacy and liveness guarantees. Synchronicity Exchange will support zk-TLS once it is fast enough.