This Pull Request introduces the implementation of the Market Making Strategy for the TSE (Trading Strategy Execution) module. The Market Making Strategy is designed to provide liquidity by placing both buy and sell orders around the current market price. This implementation follows the interface defined in strategy.interface.ts and integrates with the existing system components.
Summary of Changes
MarketMakingStrategy class implementing the Strategy interface.
Create Market Making Strategy: Added method to create entity with dto params.
Start Market Making Strategy: Added a method to initialize and run the Market Making Strategy for a given user, including periodic placement of buy and sell orders based on the defined spread and order amount.
Pause Market Making Strategy: Added functionality to pause the strategy for a given user.
Stop Market Making Strategy: Implemented a method to stop the ongoing Market Making Strategy, including the cancellation of active orders.
Delete Market Making Strategy: Added method to soft delete entity.
Order Placement Logic: Incorporated logic to calculate the appropriate bid and ask prices based on the mid-price, with adjustments for the defined spread and layer configuration.
Unit Tests: Created unit tests to verify the correct functionality of the strategy.
Description
This Pull Request introduces the implementation of the Market Making Strategy for the TSE (Trading Strategy Execution) module. The Market Making Strategy is designed to provide liquidity by placing both buy and sell orders around the current market price. This implementation follows the interface defined in
strategy.interface.ts
and integrates with the existing system components.Summary of Changes
Strategy
interface.Related Issues
Fixes #19