Exchange v0.1.1 API Reference
Modules
The best Elixir Exchange supporting limit and market orders. Restful API and fancy dashboard supported soon!
Public API to use the adapter of Exchange.MessageBus, the Event Bus.
This module uses the Registry to un/register processes under a event and send messages to the registered processes.
A struct representing the payload of :order_cancelled events.
A struct representing the payload of :order_expired events.
A struct representing the payload of :order_placed events.
A struct representing the payload of :order_queued events.
A struct representing the payload of :price_broadcast events.
A struct representing the payload of :trade_executed events.
A struct representing the payload of :trade_processed events.
Documentation for a Flux adapter
Public API to use the adapter of Exchange.TimeSeries, the InMemoryTimeSeries.
This adapter is an approach of an in memory time series database and it keeps state about orders, prices and trades.
Public API to use the adapter of Exchange.MessageBus, the Test Event Bus.
This is used to test the messages sent by the Matching Engine, therefore, it doesn't send any messages it only stores them in memory.
The Agent behaviour is used to encapsulate the messages that are meant to be sent in a real scenario.
This is the core of the Exchange The matching engine is responsible for matching the orders on the order book
Behaviour that a message library adapter must implement in order to communicate with the Exchange
A struct representing an Order to be placed in the Exchange
Order Book Struct
The Order Book is the Exchange main data structure. It holds the Order Book in Memory where the MatchingEngine realizes the matches and register the Trades.
Behaviour that a time series database must implement to be able to communicate with the Exchange.
Placeholder to define trades
Auxiliary functions for Exchange APP
Validations for Data Structures for the Exchange