Execution
Trades execute entirely between users. First, the user sends their trade request and balance state to the counterparty. If the margin requirements are met, the counterparty signs and transmits the new balance states of both the user and itself. Finally, the user cosigns both balance states and propagates the complete versions back to the counterparty.
If a dishonest or latent participant does not sign balance states during the handshake, then the opposing user may execute their balance state onchain. For convenience, users can trade against a common counterparty which is always assumed to be live.
The process of signing is nearly instant, resulting in sub-millisecond finality in co-geographically located clients. Because users self-validate, VDEXCore execution is trustless and atomic. The peer-to-peer nature of trading creates a darkpool from which external market participants are unable to view transactions.
Last updated