A trading system with GUI for managing and analyzing trade data using B+ Tree and Segment Tree.
This project uses a hybrid data structure approach:
- B+ Tree → indexing trades by timestamp
- Segment Tree → fast aggregation and range queries
The system supports efficient querying and analysis of trade data.
- Insert, update, and delete trades
- Stores trade data (Stock ID, Timestamp, Price, Volume)
- Updates reflected in GUI table
- Total volume in a time range
- Maximum price
- Minimum price
-
Calculates volatility based on price range
-
Classifies market as:
- Stable
- High Volatility
- Built using Java Swing
- Input panel, table, and analytics panel
- Table row selection auto-fills input fields
- Displays results in output area
GUI
↓
B+ Tree (Indexing)
↓
Leaf Nodes (Trade Storage)
↓
Segment Tree (Aggregation)
- Java
- Java Swing
- B+ Tree
- Segment Tree
FinancialTradingSystem/
├── Trade.java
├── SegmentTree.java
├── BPlusTree.java
├── TradingSystemGUI.java
├── QueryResult.java
javac *.javajava TradingSystemGUI- Insert: O(log N)
- Update: O(log N)
- Delete: O(log N)
- Range Query: O(log N + k log B)
- File/database storage
- Real-time data support
- Charts/visualization
- Multi-threading
Darsini
This project combines data structures and a GUI to manage and analyze trade data efficiently.