That is prototype a stock market application. That is implemented using a red black tree and endpoints with boost asio and served libraries.
- Sineth Dhananjay
- Isuru Liyanage
- Project has a low level architecture and a high level Architecture
- That is consist of 13 files
- For the execute example, that need a file 'order.csv'
- Example
Client Order ID,Instrument,Side,Quantity,Price
aa13,Rose,2,100,55
aa14,Rose,1,100,12p
aa15,Rose,2,100,45
aa16,Rose,1,200,4
aa17,Royse,2,100,15
aa18,Rose,2,100,65
- For the Run software, First you need to compile the project
- For That , use that command
g++ -g main.cpp order.cpp RedBlackTree.cpp ValidateOrder.cpp BuyHandler.cpp Cache.cpp -o out
- After that you can run the command
- For That , use that command
./out
That consist three parts
- Authenticator
- Backend
- GUI
That had three three functions
- Sign Up
- Log In
- Token Validating
- without login you can't do order process
- First you need to make a account in our system
- After that we are create a account
In the inner process we are add data to our database and generate a token. For every login we are creating new token. As well as that has auto login facility.
- If you need to run this use that commands
cd Authenticater
cd build
cmake ..
make
./Authenticater
That had three functions
- New Order
- Get History
- without login, you can't do order process
In the inner process we are add data to our database and generate a token. For every login we are creating new token. As well as that has auto login facility.
- If you need to run this use that commands
cd Backend
cd build
cmake ..
make
./Backend
More Information about our API , Use our postman link.
If you haven't dependencies, You need to install them before the running program. You can install them using my bash code
chmod +x dependencies.sh
./dependencies.sh
- If you can't bind port change port in main.cpp
- As well as you need to select your IP as public ip in main.cpp
- Also you can use http://localhost for application
I am highly recommend linux for do this. If you need to run that in windows, you can use visual studio and add that libraries
- We had made that using QT. If you need to modify or test this, Install the QT software
- It is available in branch 'gui'