# Matching Logic and Market Hours

### **Matching Logic**

At the centre of every trading platform is a matching engine, the system that determines how and when trades are executed. At Initiativ, we've designed our matching logic to prioritise clarity, speed, and auditability, while aligning with the unique needs of the regulated emissions markets.

#### **What Is a Matching Engine?**

A matching engine is the system that decides when a trade happens. It continuously compares incoming buy and sell orders and executes a trade the moment a valid counterparty is found, using price, quantity, and time as its criteria.

#### **Price-Time Priority**

The near-universal standard for determining match priority is price-time priority. The best-priced orders are matched first: the highest bid against the lowest offer. Where two orders share the same price, the one submitted earliest takes priority. Order size confers no advantage. This standard applies across legacy venues and Initiativ alike.

#### **Traditional Matching Systems**

Most legacy trading platforms use matching engines hosted on centralised infrastructure. These typically rely on SQL-based databases or in-memory systems to sort and match orders.

Well-known platforms that use traditional matching engines include NASDAQ and Euronext, which operate proprietary high-performance engines; Binance and Kraken in crypto markets, which rely on custom in-memory matching frameworks; and ICE, which uses specialised matching logic for commodities and allowances. At the extreme end of the speed spectrum, equity HFT venues use Field-Programmable Gate Array (FPGA) chips to operate at nanosecond latency. Nanosecond latency is not the goal here. Emissions markets operate at a different pace, and millisecond matching is the right benchmark. That is what Initiativ is built for.

#### **Initiativ's Approach to Matching**

Initiativ applies the same price-time priority standard but on fundamentally different infrastructure. Rather than relying on a centralised database, we operate an on-chain order book hosted on a private EVM-compatible L1 blockchain. Matching is executed using application-specific modules built specifically for this platform, rather than general-purpose smart contracts.

This architecture allows for instant matching as soon as an order enters the book, deterministic execution based on predefined rules, and fully auditable activity since all matches are recorded on-chain. Although users interact with a familiar trading interface, the underlying logic ensures that all activity is traceable and cannot be altered retroactively.

#### **How Matching Works in Practice**

When an incoming order enters the book, the matching engine immediately checks it against resting orders on the opposite side. If a valid counterparty exists, the trade executes instantly. Consider a simple example:

* A buyer submits a limit order to purchase 100 EUAs at a maximum price of €80 per tonne.
* The order book shows a seller offering 80 EUAs at €79 and another offering 20 EUAs at €81.

The engine matches the 80 EUAs at €79 immediately, as this is within the buyer's limit. The remaining 20 EUAs at €81 are above the buyer's limit and are not matched. The buyer's order stays open for the remaining 20 tonnes, resting in the book until a seller at €80 or better appears or the order is cancelled.

#### **Partial Fills**

Large orders can be filled incrementally across multiple counterparties or price levels. Each matched portion is executed and delivered immediately; there is no batching or delay. The unfilled portion of an order remains active in the book until fully filled, cancelled, or expired per its time-in-force instruction.

#### **On-Chain Settlement Notification**

Once a match is confirmed on-chain, Initiativ sends a real-time trade notification to the clearing house. The clearing house then initiates settlement as the central counterparty to both sides. The on-chain record of the match is the authoritative source of truth for both the platform and the clearer.

#### **Why On-Chain Matching Matters**

Traditional matching engines run on centralized databases. They are fast, but the record of what happened is held by a single operator and is not independently verifiable in real time. Initiativ's on-chain matching means:

* Execution is deterministic: the same inputs always produce the same output, with no discretionary intervention possible.
* The audit trail is immutable: every order and match is permanently recorded and cannot be altered retroactively.
* Front-running is structurally impossible: order priority is enforced by the chain, not by an operator.
* Authorised parties, including the clearer, regulators, and others granted access, can all verify activity independently, without relying on a single intermediary's reporting.

***

### **Market Hours**

The infrastructure is built for 24/7 trading. Whether that capacity is activated depends on what the market wants, not on what the technology can support.For now, Initiativ operates continuous trading during the following hours:

* **Open:** 08:00 CET
* **Close:** 18:00 CET
* **Days:** Monday to Friday, excluding public holidays

These hours are aligned with the major regulated carbon and energy markets.

#### **Settlement Window**

Between 17:05 and 17:15 CET, the official settlement price is calculated as the volume-weighted average price of all trades executed during that window. Continuous trading continues normally during and after the settlement window.

TAS orders execute at the settlement price resulting from this window.

#### **Extended and Continuous Trading**

The Initiativ infrastructure is capable of supporting 24/7 trading. This is not activated at launch but can be enabled without architectural changes as market demand develops.

#### **Latency and Throughput**

Initiativ's matching engine operates on a private EVM-compatible L1 blockchain optimised for high throughput and low latency.

Current performance targets:

* Up to 10,000 orders per second
* Block time of approximately 500 milliseconds
* Matching occurs as each block is formed

Block time is deliberately configured to maximise orders processed per second. These figures are validated through ongoing testing and will be updated as infrastructure and load conditions develop.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://initiativ.gitbook.io/initiativ/the-exchange/matching-logic-and-market-hours.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
