Commit Graph

28 Commits

Author SHA1 Message Date
bdc5ba2db7 Enhance SpotBot to handle small leftover token balances after closing positions
- Added logic to check if remaining token balances are below $2 USD and verified in exchange history before logging warnings or accepting them as successfully closed.
- Improved logging messages for better clarity on the status of token balances after closing positions and force close attempts, ensuring accurate tracking of transactions.
2026-01-07 22:32:04 +07:00
bc4725ca19 Refactor FuturesBot and SpotBot to utilize ticker enum for candle retrieval
- Updated GetCurrentCandleForPositionClose method in both FuturesBot and SpotBot to parse the ticker parameter into an enum, enhancing type safety and clarity.
- Adjusted TradingBotBase to use the position's ticker for candle retrieval, ensuring consistency across trading bot implementations.
2026-01-07 01:44:05 +07:00
b928eac031 Enhance SpotBot closing price calculation and logging
- Implemented logic to calculate broker closing price from PNL when the price is zero or invalid, improving accuracy in trade reconciliation.
- Added detailed logging for calculated closing prices, including entry price, PNL, and leverage, to enhance visibility into trading performance.
- Updated handling of take profit and stop loss updates based on valid closing prices, ensuring more reliable position management.
2026-01-06 16:36:02 +07:00
58eee1a878 Update SpotBot PNL calculation and enhance documentation guidelines
- Added logic to calculate broker PNL when it is zero or invalid, using actual prices for more accurate profit and loss reporting.
- Improved logging to provide detailed information when PNL is calculated, enhancing visibility into trading performance.
- Updated documentation guidelines to discourage unnecessary .md files unless explicitly requested by users.
2026-01-06 16:24:53 +07:00
09a6a13eb1 Enhance SpotBot position verification and logging
- Introduced a new method to verify the execution of opening swaps in history, ensuring positions are only marked as filled after confirming successful swaps.
- Improved logging to provide detailed feedback on swap confirmation status, including retries for pending swaps and error handling for verification failures.
- Adjusted position status update logic to enhance robustness in managing filled positions, preventing premature status changes.
2026-01-06 01:23:58 +07:00
efbb116ed2 Enhance SpotBot position management and logging
- Introduced logic to check if the opening swap was canceled by the broker, marking positions as canceled when necessary.
- Adjusted orphaned balance thresholds for ETH and other tokens to improve balance management.
- Enhanced logging to provide detailed information on swap status, including warnings for canceled swaps and their implications on position management.
- Added a new method to verify swap execution status, improving the robustness of position handling in SpotBot.
2026-01-06 00:13:21 +07:00
6134364ddd Enhance SpotBot balance management after position closure
- Added logic to wait for ETH→USDC swap to settle before refreshing the USDC balance, preventing premature bot stoppage due to low balance.
- Implemented balance verification and cache invalidation for accurate balance checks post-swap.
- Improved logging to indicate the status of balance refresh and cache invalidation after closing a position.
2026-01-05 23:21:51 +07:00
815b172bb7 Refine SpotBot token balance handling and logging
- Adjusted max dust amount threshold based on token type: increased for ETH to account for gas reserves, while maintaining a lower threshold for other tokens.
- Enhanced logging to clarify when a position is closed, indicating if the remaining balance is expected for gas reserves or if it was successfully closed.
2026-01-05 22:27:38 +07:00
645bbe6d95 Enhance SpotBot slippage handling and logging
- Increased slippage tolerance from 0.6% to 0.7% to account for gas reserves.
- Improved logging to provide detailed information when adjusting position quantities due to slippage or when retaining original quantities.
- Updated CloseSpotPositionCommandHandler to use the position's opened quantity instead of the entire wallet balance, ensuring gas fees are preserved.
- Adjusted Web3ProxyService settings for retry attempts and operation timeouts to improve performance.
- Enhanced swap token implementation to handle native tokens correctly and increased operation timeout for better reliability.
2026-01-05 22:13:18 +07:00
a0d5e336d5 Improve error handling and logging in SpotBot position closing
- Added try-catch block around position closing logic to handle potential failures gracefully.
- Enhanced logging to provide detailed warnings when closing a position fails, ensuring the position status remains unchanged for retry on the next cycle.
- Re-threw exceptions for unhandled cases to inform callers of operation failures, improving overall robustness of the SpotBot.
2026-01-05 20:39:44 +07:00
700d975da7 Implement on-chain token balance retrieval and enhance SpotBot logging
- Added a new method in IWeb3ProxyService to retrieve token balances directly from the blockchain, ensuring accurate decimal handling.
- Updated ExchangeService to utilize the new on-chain balance method, replacing the previous balance retrieval logic.
- Enhanced SpotBot logging to provide clearer warnings when token balances are significantly lower than expected, and to log cases of excess token balances.
- Introduced a new API endpoint for fetching token balances on-chain, improving the overall functionality of the service.
2026-01-05 20:30:24 +07:00
25a2b202a1 Enhance SpotBot logging and orphaned position handling
- Updated SpotBot to log detailed information when detecting small token balances, indicating potential gas reserves or dust.
- Introduced a minimum threshold for orphaned positions, improving decision-making on whether to open new positions.
- Enhanced logging for potential zombie positions, providing clearer warnings when token balances are missing.
- Improved force close logging to clarify the status of remaining balances after attempts to clear them.
2026-01-05 19:49:59 +07:00
f578d8dc22 Refactor SpotBot position history logging
- Updated SpotBot to log detailed information when a closing position is found in the history, including position direction and dates.
- Enhanced logging for scenarios where no closing position is found or when position history is unavailable, improving clarity on position status.
- Removed outdated log messages to streamline the logging process.
2026-01-05 18:58:27 +07:00
3c8242c88a Implement force closing of remaining balance in SpotBot
- Added a new method to force close any remaining balance in a trading position if it was not fully closed.
- Enhanced logging to provide detailed information during the force close process, including current price checks and retry attempts.
- Implemented error handling to manage potential failures during the force close operation, ensuring manual intervention is flagged when necessary.
2026-01-05 06:04:18 +07:00
aa3b06bbe4 Enhance user settings management by adding new properties and updating related functionality
This commit introduces additional user settings properties, including TrendStrongAgreementThreshold, SignalAgreementThreshold, AllowSignalTrendOverride, and DefaultExchange, to the User entity and associated DTOs. The UserController and UserService are updated to handle these new settings, allowing users to customize their trading configurations more effectively. Database migrations are also included to ensure proper schema updates for the new fields.
2025-12-30 06:48:08 +07:00
ee8db1cdc8 Enhance SpotBot to improve position recovery logic and add token balance verification after closing positions. The changes include filtering for recent unfinished positions and logging detailed information during position closure, ensuring better tracking and error handling for token balances. 2025-12-29 16:39:02 +07:00
2db6cc9033 Implement orphaned position recovery in SpotBot; enhance logging for recovery attempts and failures, and ensure position synchronization with token balance checks. 2025-12-24 20:52:08 +07:00
667ac44b03 Update SpotBot tolerance calculation to 0.6% to better account for slippage; adjust logging to reflect new tolerance value for position synchronization checks. 2025-12-23 10:13:39 +07:00
65d00c0b9a Add reconcilliation for cancelled position if needed 2025-12-11 18:35:25 +07:00
1426f0b560 Clean code, remove warning for future and spot 2025-12-11 14:36:35 +07:00
df8c199cce Clean tradingbot and spot and future 2025-12-11 14:10:38 +07:00
292a48d108 Fix close position 2025-12-11 12:23:01 +07:00
8ff9437400 Fix a bit the spot trading 2025-12-10 23:16:46 +07:00
931af3d3af Refactor SpotBot and ExchangeService for balance retrieval
- Updated SpotBot to fetch token balance directly using the new GetBalance method in IExchangeService.
- Modified IExchangeService to include a method for retrieving balance by ticker.
- Enhanced ExchangeService to implement the new balance retrieval logic for both EVM and non-EVM exchanges.
- Updated TokenService to streamline contract address and decimal retrieval for various tokens.
- Adjusted TradesModal to reflect changes in position status handling.
2025-12-08 23:37:10 +07:00
a2ed4edd32 Implement spot position history retrieval in SpotBot and related services
- Added CheckSpotPositionInExchangeHistory method to SpotBot for verifying closed positions against exchange history.
- Enhanced logging for Web3Proxy errors during position verification.
- Introduced GetSpotPositionHistory method in IEvmManager, IExchangeService, and IWeb3ProxyService interfaces.
- Implemented GetSpotPositionHistory in EvmManager and ExchangeService to fetch historical swap data.
- Updated GMX SDK integration to support fetching spot position history.
- Modified generated API types to include new trading type and position history structures.
2025-12-07 19:20:47 +07:00
15d8b38d8b Adapt spot for recovery 2025-12-05 15:24:51 +07:00
b44e1f66a7 Fix spot bot 2025-12-04 21:21:48 +07:00
c932fef289 Add spot trading 2025-12-02 14:38:54 +07:00