mirror of
https://github.com/discountry/ritmex-bot.git
synced 2026-09-11 09:18:08 +00:00
Feat/support binance (#22)
* add docs * Add Binance exchange support - Updated the environment configuration to include Binance as a selectable exchange option. - Enhanced the README documentation to reflect the addition of Binance. - Implemented the Binance exchange adapter and integrated it into the existing exchange framework. - Modified the basis arbitrage strategy to support Binance alongside existing exchanges. - Added tests to ensure proper functionality and integration of Binance within the trading system. * Enhance README with detailed Binance exchange configuration - Added comprehensive instructions for setting up Binance as an exchange option. - Included environment variable specifications for API keys, market types, and trading symbols. - Provided examples for both perpetual and spot trading strategies. - Clarified the use of WebSocket and REST for the Binance adapter. * Enhance exchange support and testing framework - Added a new test suite for exchange contracts to ensure consistency and functionality across supported exchanges. - Refactored exchange ID handling to utilize a centralized list of supported exchanges, improving maintainability. - Updated CLI argument parsing and help documentation to reflect the new exchange structure. - Introduced utility functions for validating supported exchanges and their display names. - Enhanced the BasisApp and strategy runner to leverage the new exchange validation logic. - Added a new test command for running exchange-related tests. * Refactor exchange contract tests and update CLI commands - Removed the trailing supported exchanges set and simplified the logic for trailing stop support in the exchange contract tests. - Updated the test command for exchange contracts to exclude unnecessary tests, streamlining the testing process. - Enhanced test descriptions for clarity and improved understanding of the functionality being tested.
This commit is contained in:
@@ -5,6 +5,7 @@ import { GrvtExchangeAdapter } from "../src/exchanges/grvt/adapter";
|
||||
import { BackpackExchangeAdapter } from "../src/exchanges/backpack/adapter";
|
||||
import { ParadexExchangeAdapter } from "../src/exchanges/paradex/adapter";
|
||||
import { StandxExchangeAdapter } from "../src/exchanges/standx/adapter";
|
||||
import { BinanceExchangeAdapter } from "../src/exchanges/binance/adapter";
|
||||
|
||||
const ORIGINAL_ENV = { ...process.env };
|
||||
|
||||
@@ -32,6 +33,7 @@ describe("exchange factory", () => {
|
||||
expect(resolveExchangeId("BACKPACK")).toBe("backpack");
|
||||
expect(resolveExchangeId("PaRaDeX")).toBe("paradex");
|
||||
expect(resolveExchangeId("StandX")).toBe("standx");
|
||||
expect(resolveExchangeId("BiNaNcE")).toBe("binance");
|
||||
});
|
||||
|
||||
it("creates grvt adapter when EXCHANGE=grvt", () => {
|
||||
@@ -79,4 +81,15 @@ describe("exchange factory", () => {
|
||||
expect(adapter).toBeInstanceOf(StandxExchangeAdapter);
|
||||
expect(adapter.id).toBe("standx");
|
||||
});
|
||||
|
||||
it("creates binance adapter when EXCHANGE=binance", () => {
|
||||
process.env.EXCHANGE = "binance";
|
||||
process.env.BINANCE_API_KEY = "api-key";
|
||||
process.env.BINANCE_API_SECRET = "api-secret";
|
||||
process.env.BINANCE_SYMBOL = "BTCUSDT";
|
||||
|
||||
const adapter = createExchangeAdapter({ symbol: "BTCUSDT" });
|
||||
expect(adapter).toBeInstanceOf(BinanceExchangeAdapter);
|
||||
expect(adapter.id).toBe("binance");
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user