Administrator
3 hours ago 1e792f025712da88d5f53e7ef22462301d6cf071
src/main/java/com/xcong/excoin/modules/okxApi/OkxWebSocketClientManager.java
@@ -26,18 +26,18 @@
        try {
            config = OkxConfig.builder()
                    .apiKey("d90ca272391992b8e74f8f92cedb21ec")
                    .secretKey("1861e4f52de4bb53369ea3208d9ede38ece4777368030f96c77d27934c46c274")
                    .passphrase("Aa123123@")
                    .contract("BTC-USDT-SWAP")
                    .apiKey("ac76252d-e717-4459-a6f9-80512aed5ea0")
                    .secretKey("A8168543EF4F08A6DBFE27AB23956898")
                    .passphrase("Aa12345678@")
                    .contract("ETH-USDT-SWAP")
                    .leverage("100")
                    .marginMode("cross")
                    .posMode("long_short_mode")
                    .gridRate(new BigDecimal("0.0015"))
                    .overallTp(new BigDecimal("5"))
                    .maxLoss(new BigDecimal("15"))
                    .overallTp(new BigDecimal("15"))
                    .maxLoss(new BigDecimal("20"))
                    .quantity("1")
                    .contractMultiplier(new BigDecimal("1"))
                    .contractMultiplier(new BigDecimal("0.1"))
                    .unrealizedPnlPriceMode(OkxConfig.PnLPriceMode.LAST_PRICE)
                    .isProduction(false)
                    .build();
@@ -48,11 +48,6 @@
            gridTradeService = new OkxGridTradeService(config, accountName);
            gridTradeService.startGrid();
            wsKlineClient = new OkxKlineWebSocketClient(config.getWsKlineUrl());
            wsKlineClient.addChannelHandler(new OkxCandlestickChannelHandler(config.getContract(), gridTradeService));
            wsKlineClient.init();
            log.info("[管理器] K线WS已连接, 已注册K线频道处理器");
            wsPrivateClient = new OkxKlineWebSocketClient(
                    config.getWsPrivateUrl(),
                    config.getApiKey(),
@@ -61,10 +56,22 @@
            wsPrivateClient.addChannelHandler(new OkxPositionsChannelHandler(config.getContract(), gridTradeService));
            wsPrivateClient.addChannelHandler(new OkxAccountChannelHandler());
            wsPrivateClient.addChannelHandler(new OkxOrderInfoChannelHandler(config.getContract(), gridTradeService, config));
            wsPrivateClient.init();
            log.info("[管理器] 私有WS已连接, 已注册 3 个频道处理器");
            wsPrivateClient.setOnLoginSuccess(() -> {
                log.info("[管理器] 私有WS登录完成,启动K线订阅");
                try {
                    wsKlineClient = new OkxKlineWebSocketClient(config.getWsKlineUrl());
                    wsKlineClient.addChannelHandler(new OkxCandlestickChannelHandler(config.getContract(), gridTradeService));
                    wsKlineClient.init();
                    log.info("[管理器] K线WS已连接, 已注册K线频道处理器");
                } catch (Exception e) {
                    log.error("[管理器] K线WS初始化失败", e);
                }
            });
            wsPrivateClient.init();
            gridTradeService.setWebSocketClient(wsPrivateClient.getWebSocketClient());
            log.info("[管理器] 私有WS已连接, 等待登录完成...");
        } catch (Exception e) {
            log.error("[管理器] 初始化失败", e);