This post is a introduction on how to get MemExchange up and running
The post will cover:
Don't know what this is? Read What is MemExchange?
Latest version of the code can be found on github here: https://github.com/ThomasVestergaard/MemExchange
Currently the master branch is also the working branch which may result in the branch being partially broken. Once the first version is done, feature branches will be introduced.
Once you have downloaded the source code at opened it in visual studio, you can right click the MemExchange.Server project Debug -> Start new Instance.
The project is a single server -> multiple client application. The server needs to be run first.
Running the server should give you a console window with some debug output. The server will dump log messages in the console window while running. Should look something like this.
While the server is running, right click MemExchange.Client.UI -> Debug -> Start new instance
This should prompt you with a setup window like this:
ClientId: A randomized client id which will identify your orders. If you wish, you can start another client with the same client id and it will shoe the same orders.
Server address: Address to the server.
Command port and Publish port: Unless you changed something on the server, don't change these.
Hit Start to connect to the server.
You should have a client window that looks something like this.
For the record, I have done absolutely nothing to make the UI pretty. The UI is merely a wrapper of the API.
The top part of the screen is where you can enter new orders. Enter a symbol, price and quantity and hit "Send order". This sends the order to the server which will send back a add event.
The bottom part of the screen shows your current active orders. Here you can delete and/or modify them.
Progress as of today - No order matching is implemented. The serer supports adding/deleting/modifying orders and communicating this to the clients. Pretty basic stuff.