Add changeMarginMode method to ExchangeAdapter and Standx classes

- Introduced `changeMarginMode` method in `ExchangeAdapter` interface to allow margin mode adjustments.
- Implemented the `changeMarginMode` method in `StandxExchangeAdapter` to interact with the gateway for changing margin modes.
- Added corresponding `changeMarginMode` method in `StandxGateway` to handle API requests for margin mode changes.
- Enhanced `MakerPointsEngine` to ensure isolated margin mode before order placement, with appropriate logging and defense mode activation if the change fails.
- Created tests for margin mode functionality to validate behavior under different scenarios.
This commit is contained in:
discountry
2026-01-24 22:57:03 +08:00
parent a629bc940c
commit 683352f737
6 changed files with 322 additions and 2 deletions
+4 -1
View File
@@ -99,6 +99,8 @@ describe("MakerPointsEngine defense-mode REST polling", () => {
standxRestUnhealthy: false,
standxRestConsecutiveErrors: 0,
standxRestLastError: null,
marginModeNotIsolated: false,
marginMode: "isolated",
standxDepthAge: 6000,
binanceAge: 0,
standxAccountAge: 0,
@@ -149,6 +151,8 @@ describe("MakerPointsEngine defense-mode REST polling", () => {
standxRestUnhealthy: false,
standxRestConsecutiveErrors: 0,
standxRestLastError: null,
marginModeNotIsolated: false,
marginMode: "isolated",
standxDepthAge: 6000,
binanceAge: 0,
standxAccountAge: 0,
@@ -162,4 +166,3 @@ describe("MakerPointsEngine defense-mode REST polling", () => {
engine.stop();
});
});