This project aims to simulate a trading environment, providing users with a realistic experience of a trading platform. This README will guide you through the initial setup and explain the first screen of the simulation.
This is the first screen of the trading simulation, where user credentials are validated. The screen contains the following components:
- User ID Field: Input field for the user's identification.
- Password Field: Input field for the user's password.
- Submit Button: Event triggered when the user wants to submit the credentials.
- Exit/Cancel Button: Event triggered when the user wants to exit or cancel the authentication process.
![login Panel](https://private-user-images.githubusercontent.com/40321363/297281541-b07dffad-8d9a-4e1e-b28d-ec30bd5864cf.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjYwMTY1ODksIm5iZiI6MTcyNjAxNjI4OSwicGF0aCI6Ii80MDMyMTM2My8yOTcyODE1NDEtYjA3ZGZmYWQtOGQ5YS00ZTFlLWIyOGQtZWMzMGJkNTg2NGNmLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA5MTElMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwOTExVDAwNTgwOVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTk5OTk4ZmZhYmFjZGZjNTJiZmI1ZDk1NDU5MWQxYzZkNTRjODk5ODcxZTAwNDE4ODI2MjQyZTBhYjUxN2ZlZDgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.EDfL3A8sq4ezVLTzmNIBLkZ0qXsOyRDnjJnlETr35WQ)
After successfully validating the user credentials, users can proceed to explore the trading simulation.
The second screen of the trading simulation opens once the user is successfully validated. It features different layouts for:
- Charting: (Note: Charting functionality is not completed due to the removal of Charting Control from .Net 6.0 by Microsoft.)
- Trades Execution: Contains columns for various trade-related information.
- Log Forms: Display logs of trading activities.
The second layout includes the following buttons:
- Start Trading: Initiates the trading functionality after validating specific conditions.
- BUY: Initiates the buying process for one STOCKS NIFTY 50, generating a random tick price using the Random class.
- SELL: Initiates the selling process for one STOCKS NIFTY 50, generating a random tick price using the Random class.
Before activating the "Start Trading" functionality, the system checks specific conditions to ensure a safe and controlled trading environment.
The Trades Execution view contains different columns, each performing specific functions:
- Symbol: Indicates the trading instrument (e.g., STOCKS NIFTY 50).
- Quantity: Represents the quantity of stocks traded.
- Price: Displays the trade price.
- OrderType: Specifies the trading action (BUY/SELL).
- EntryTime: Entry Time of Trades
- Status: Open/ Close
- Ltp: Ltp Tick of Stocks
- PnL: Calculate PNL
- ExitPrice: Exit Price
- ExitTime: Exit Time of Trades
![Welcome Screen](https://private-user-images.githubusercontent.com/40321363/297281571-0e48185f-4a38-4681-ac92-2c3ce1f2d141.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjYwMTY1ODksIm5iZiI6MTcyNjAxNjI4OSwicGF0aCI6Ii80MDMyMTM2My8yOTcyODE1NzEtMGU0ODE4NWYtNGEzOC00NjgxLWFjOTItMmMzY2UxZjJkMTQxLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA5MTElMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwOTExVDAwNTgwOVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTAzYTc1MDFjM2ZhOTRhNjY2NmNmZWRkZjBjMWYzYTcyNmQ3NzFjZmNjN2MyOWUyMmEyZDRjMWE2NWY1MGE1YTImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.5rS742pvLMytZq5hrTj1GYRiwp4tMTfJXMMYnDJtTv0)
Once the user is allowed to start trading, ticks will be updated and visible in a text box. Users can generate new trades using the "Buy" and "Sell" buttons. The tick price will be generated randomly .
- Buy: Initiates the buying process, generating a random tick price.
- Sell: Initiates the selling process, generating a random tick price.
The updated tick price will be displayed in a text box, providing real-time information to the user about the market conditions. Explore the tick updating, trade generation, and P&L calculation features on the trading screen. Experiment with buying and selling to observe how the P&L is dynamically calculated based on market movements (Random function will simulate Market real time feed)
![Trading screen 3](https://private-user-images.githubusercontent.com/40321363/297281577-9f5763cf-d538-488e-a539-fa1bc2e7c7ce.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjYwMTY1ODksIm5iZiI6MTcyNjAxNjI4OSwicGF0aCI6Ii80MDMyMTM2My8yOTcyODE1NzctOWY1NzYzY2YtZDUzOC00ODhlLWE1MzktZmExYmMyZTdjN2NlLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA5MTElMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwOTExVDAwNTgwOVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWVkYzIwNGE0Zjg3Yzc4NWFkMzE4MTBlYzlkYzc2ZWQxZmM1ZDhjZDdlODI1ZTFhM2VmNmZkOGYyZWQzMjIwMTEmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.WBGBxSj13JC9Z0t-flkTAG4RsvVvBYXLifwTO5GpZtw)