Administrator
2026-06-04 9abea15a209abe0ee319b3b8486b0fdcdf46ac82
src/main/java/com/xcong/excoin/modules/gateApi/GateGridTradeService.java
@@ -11,9 +11,6 @@
import io.gate.gateapi.models.*;
import lombok.extern.slf4j.Slf4j;
import okhttp3.ConnectionPool;
import okhttp3.OkHttpClient;
import java.io.IOException;
import java.math.BigDecimal;
import java.math.RoundingMode;
@@ -22,7 +19,6 @@
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;
import com.xcong.excoin.modules.gateApi.wsHandler.handler.CandlestickChannelHandler;
import com.xcong.excoin.modules.gateApi.wsHandler.handler.PositionClosesChannelHandler;
@@ -153,24 +149,11 @@
    public GateGridTradeService(GateConfig config) {
        this.config = config;
        ApiClient apiClient = createApiClient(config);
        ApiClient apiClient = new ApiClient();
        apiClient.setBasePath(config.getRestBasePath());
        apiClient.setApiKeySecret(config.getApiKey(), config.getApiSecret());
        this.futuresApi = new FuturesApi(apiClient);
        this.executor = new GateTradeExecutor(apiClient, config.getContract());
    }
    private static ApiClient createApiClient(GateConfig config) {
        OkHttpClient httpClient = new OkHttpClient.Builder()
                .connectTimeout(30, TimeUnit.SECONDS)
                .readTimeout(60, TimeUnit.SECONDS)
                .writeTimeout(20, TimeUnit.SECONDS)
                .connectionPool(new ConnectionPool(5, 5, TimeUnit.SECONDS))
                .retryOnConnectionFailure(true)
                .build();
        ApiClient client = new ApiClient();
        client.setBasePath(config.getRestBasePath());
        client.setApiKeySecret(config.getApiKey(), config.getApiSecret());
        client.setHttpClient(httpClient);
        return client;
    }
    // ---- 初始化 ----
@@ -191,7 +174,9 @@
     */
    public void init() {
        try {
            ApiClient detailClient = createApiClient(config);
            ApiClient detailClient = new ApiClient();
            detailClient.setBasePath(config.getRestBasePath());
            detailClient.setApiKeySecret(config.getApiKey(), config.getApiSecret());
            AccountDetail detail = new AccountApi(detailClient).getAccountDetail();
            this.userId = detail.getUserId();
            log.info("[Gate] 用户ID: {}", userId);