Skip to content

YasiruDEX/Flower-Exchange-LSEG

Repository files navigation

🌸 Flower Exchange Project

The Flower Exchange Project is a trading platform for buying and selling flowers, built as part of the LSEG C++ Workshop Series. It includes a C++ back-end for processing orders and a React-based front-end for generating orders in CSV format.

🚀 Getting Started

  1. Clone the repository to your local machine:
  2. git clone <repository_url> 
  3. Run the Trader and Exchange applications to simulate placing and matching orders.

🔢 Input and Output

  • Input: Orders are submitted in CSV format (orders.csv) containing fields like Order ID, Client Order ID, Instrument, Side (Buy/Sell), Quantity, and Price.
  • Output: The execution_rep.csv file is generated, which shows the status of each order (e.g., New, Partial Fill, Fill, Reject).

⚙️ Implementation Details

  • Order validation checks for missing fields, valid flower types, side (buy/sell), valid quantities, and prices. Rejected orders are noted with reasons.
  • Orders are sorted and matched based on price and quantity. The system supports full and partial executions of orders.
  • An optimized version is available for handling single flower type orders, reducing computation overhead for better performance.
  • The execution time is logged in the output for performance analysis.

🎨 React Front-End

A separate front-end interface is built using React to allow users (traders) to submit buy and sell orders. The front-end generates the orders.csv file, which is then processed by the Exchange Application.

📋 Instructions to Run the React App

  1. Clone the front-end repository:
  2. git clone <repository_url>
  3. Navigate to the project directory:
  4. cd <project_directory>
  5. Install the dependencies:
  6. npm install
  7. Start the React development server:
  8. npm start
  9. Open your browser and navigate to http://localhost:3000 to access the Trader Application.
  10. Submit orders through the interface, and the orders.csv file will be generated automatically.

About

A C++ trading application developed for a flower exchange system, created as part of the LSEG workshop series.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors