# Engine Simulation

## **Test results for Configuration 1: crossed markets in puts, calls and forwards show:**

* Elektro ME significantly outperforms a standard auction-based ME
* Increasing the number of contracts increases Elektro’s outperformance
* Elektro ME outperformed standard auction-based ME by 44%, under crossed puts calls, and forwards market configuration
* Elektro ME outperformed standard auction-based ME by 52%, under crossed puts calls, and forwards market configuration
* Elektro ME creates significant liquidity that otherwise would not exist under:
  * An uncrossed puts, calls, and forwards market configuration
  * An uncrossed puts, calls, forwards, and binary and barrier options market configuration
  * A standard auction-based ME, by definition, cannot find matches under these circumstances&#x20;

![](https://lh4.googleusercontent.com/pJe0ae4e9E7PqSBIwb4IziW-IVf0x3o9zF9X9-NgEwH33o5X4V2f6uEMdItHVAU2IDetABOuoz0pplFAYpR1tq6uXBzc0BgrRsrVsitE_XudNsqu1UPp8SujY3fVASB7FYYPTqz8)

## **Configuration 2: Uncrossed markets in puts, calls and forwards**

* The outperformance of Elektro ME increases in illiquid markets. In uncrossed markets, simple matching finds few or no matches and the value of pooling liquidity across instruments increases.
* In our simulation, Elektro ME outperformed the simple matching engine by **2,149%.**

![](https://lh4.googleusercontent.com/kJstwi8_BtpSMTMQ5D4w99x3WGXGEFVpUL2dbMestnzI5uuIgg4vInkSh0jqKNfybfUdF4bKwBuykQ7Cf_SHlhQ8IjTP8gz_vRThaq5zRQVm5XNUqLEvtAalEL4WGwk-nDpQhU85)

## **Mixed Integer Linear Programming (MIP) Optimization**

Elektro allows for organic continuing inclusion of new products in ways that naturally do NOT cannibalize existing liquidity; to the contrary, more products create synergistically MORE liquidity among existing contracts. The ability to incorporate statically replicable structured products and collateral swap ones open up huge markets that are currently unattainable. This is done via Mixed Integer Linear Programming (MIP) Optimization. MIP optimization allows searching for clearing prices and associated sets of consistent orders satisfying them that maximize executed volume and satisfy best execution requirements.

Maximizing volume is challenging, as it involves optimizing a continuous quantity (volume), subject to discrete constraints. MIP utilizes advanced heuristics to perform an efficient search of the solution space, solving the problem using augmented Linear Programming tools (Simplex algorithm):

* **Branch-and-bound methods enumerate possible values for integer variables and prune away provably un-optimal ones**
* **Cut generators augment the problem with additional constraints, which guide the standard, continuous-valued Linear Program solutions toward integer values**

![](https://lh5.googleusercontent.com/vxZ2R-uMddTuBRRiedQpJESeogmZ9MjciSze18c_wMZ47wq59RbsWsc9fhh2dAeWesECUMLtMjb6kfU5DWAj6oCZeEbQsVj1PgCoeb3eOteLfkadz-gVcViHUp-Kv5sBTWpZaaY-)

At current, Elektro is capable of processing auctions of 3,000 orders within 5 seconds, with scope for additional optimization to further improve auction processing time.<br>


---

# 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://elektro.gitbook.io/elektro-protocol/mip-clearing-engine/engine-simulation.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.
