All Projects → philipperemy → Order-Book-Matching-Engine

philipperemy / Order-Book-Matching-Engine

Licence: other
Order Book Matching Engine for Stock Exchanges (1us latency for matching)

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Order-Book-Matching-Engine

korbit-python
Korbit API wrapper for Python
Stars: ✭ 17 (-84.82%)
Mutual labels:  finance, trading, trading-api
Coinbase.Pro
📈 A .NET/C# implementation of the Coinbase Pro API.
Stars: ✭ 63 (-43.75%)
Mutual labels:  trading, trading-api
AutoTrader
A Python-based development platform for automated trading systems - from backtesting to optimisation to livetrading.
Stars: ✭ 227 (+102.68%)
Mutual labels:  finance, trading
open-trading-platform-UI
The Open Trading Platform UI is a front-end module for trading across 5 crypto currency exchanges allowing both spot and margin trading. The UI needs to be used with the API repo.
Stars: ✭ 54 (-51.79%)
Mutual labels:  trading, trading-api
HTML-Crypto-Currency-Chart-Snippets
💹 Simple HTML Snippets to create Tickers / Charts of Cryptocurrencies with the TradingView API 💹
Stars: ✭ 89 (-20.54%)
Mutual labels:  finance, trading
orderbook
A fast L2/L3 orderbook data structure, in C, for Python
Stars: ✭ 101 (-9.82%)
Mutual labels:  finance, trading
trading-rules-using-machine-learning
A financial trading method using machine learning.
Stars: ✭ 16 (-85.71%)
Mutual labels:  finance, trading
Sequence-to-Sequence-Learning-of-Financial-Time-Series-in-Algorithmic-Trading
My bachelor's thesis—analyzing the application of LSTM-based RNNs on financial markets. 🤓
Stars: ✭ 64 (-42.86%)
Mutual labels:  finance, trading
piker
#nontina, #paperhands,, #pwnzebotz, #tradezbyguille
Stars: ✭ 63 (-43.75%)
Mutual labels:  finance, trading
trading sim
📈📆 Backtest trading strategies concurrently using historical chart data from various financial exchanges.
Stars: ✭ 21 (-81.25%)
Mutual labels:  finance, trading
tuneta
Intelligently optimizes technical indicators and optionally selects the least intercorrelated for use in machine learning models
Stars: ✭ 77 (-31.25%)
Mutual labels:  finance, trading
EA31337-classes
📦📈 EA31337 framework (MQL library for writing trading Expert Advisors, indicators and scripts)
Stars: ✭ 103 (-8.04%)
Mutual labels:  trading, trading-api
trading-gmbh
Gründung einer vermögensverwaltenden GmbH
Stars: ✭ 34 (-69.64%)
Mutual labels:  finance, trading
stocklist
Stock data collection and analysis
Stars: ✭ 27 (-75.89%)
Mutual labels:  finance, trading
tellerbot
Telegram Bot for over-the-counter trading
Stars: ✭ 17 (-84.82%)
Mutual labels:  finance, trading
coinbase-fix-example
Simple example application for Coinbase Pro FIX API
Stars: ✭ 42 (-62.5%)
Mutual labels:  finance, trading
open-trading-platform-API
The Open Trading Platform API is an independent module for managing API requests from the UI module
Stars: ✭ 17 (-84.82%)
Mutual labels:  trading, trading-api
xapi-node
xStation5 Trading API for NodeJS/JS
Stars: ✭ 36 (-67.86%)
Mutual labels:  trading, trading-api
Ostia
Ostia is a cryptocurrency trading platform that allows you to run algorithmic trading strategies across all major exchanges.
Stars: ✭ 61 (-45.54%)
Mutual labels:  finance, trading
uniswap-python
🦄 The unofficial Python client for the Uniswap exchange.
Stars: ✭ 533 (+375.89%)
Mutual labels:  trading, trading-api

Order Book Matching Engine (Low Latency)

Latency to match an order with a thick order book: ~1us.

No dependencies required (except Java).

Example

OrderBookEngine engine = new OrderBookEngine();
// Bid
// <99.95, 100>
//<99.90, 50>
//<99.85,50>
engine.onOrder(99.95, 100, OrderBookEngine.Side.BUY);
engine.onOrder(99.90, 50, OrderBookEngine.Side.BUY);
engine.onOrder(99.85, 50, OrderBookEngine.Side.BUY);

// Ask
// <100.00, 1000>
// <100.05, 50>
// <100.10, 90>
engine.onOrder(100.0, 1000, OrderBookEngine.Side.SELL);
engine.onOrder(100.05, 50, OrderBookEngine.Side.SELL);
engine.onOrder(100.10, 90, OrderBookEngine.Side.SELL);

engine.printOrderBook();

engine.onOrder(99.97, 1, OrderBookEngine.Side.BUY);
engine.onOrder(100.0, 1, OrderBookEngine.Side.BUY);

engine.printOrderBook();
System.out.println(engine.getBBO());
___ ORDER BOOK ___
Asks:
90 @ 100.1
50 @ 100.05
999 @ 100.0
Bids:
1 @ 99.97
100 @ 99.95
50 @ 99.9
50 @ 99.85
_________________
BBO{bid_price=99.97, bid_quantity=1.0, ask_price=100.0, ask_quantity=999.0}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].