package com.yami.trading.huobi.websocket.client;
|
|
import java.util.List;
|
|
import com.yami.trading.huobi.websocket.client.req.account.GetBalanceRequest;
|
import com.yami.trading.huobi.websocket.client.req.crossmargin.CrossMarginApplyLoanRequest;
|
import com.yami.trading.huobi.websocket.client.req.crossmargin.CrossMarginLoanOrdersRequest;
|
import com.yami.trading.huobi.websocket.client.req.crossmargin.CrossMarginRepayLoanRequest;
|
import com.yami.trading.huobi.websocket.client.req.crossmargin.CrossMarginTransferRequest;
|
import com.yami.trading.huobi.websocket.client.req.crossmargin.GeneralLoanOrdersRequest;
|
import com.yami.trading.huobi.websocket.client.req.crossmargin.GeneralRepayLoanRequest;
|
import com.yami.trading.huobi.websocket.constant.Options;
|
import com.yami.trading.huobi.websocket.constant.enums.ExchangeEnum;
|
import com.yami.trading.huobi.websocket.exception.SDKException;
|
import com.yami.trading.huobi.websocket.model.crossmargin.CrossMarginAccount;
|
import com.yami.trading.huobi.websocket.model.crossmargin.CrossMarginCurrencyInfo;
|
import com.yami.trading.huobi.websocket.model.crossmargin.CrossMarginLoadOrder;
|
import com.yami.trading.huobi.websocket.model.crossmargin.GeneralRepayLoanRecord;
|
import com.yami.trading.huobi.websocket.model.crossmargin.GeneralRepayLoanResult;
|
import com.yami.trading.huobi.websocket.service.huobi.HuobiCrossMarginService;
|
|
public interface CrossMarginClient {
|
|
Long transfer(CrossMarginTransferRequest request);
|
|
Long applyLoan(CrossMarginApplyLoanRequest request);
|
|
void repayLoan(CrossMarginRepayLoanRequest request);
|
|
List<CrossMarginLoadOrder> getLoanOrders(CrossMarginLoanOrdersRequest request);
|
|
CrossMarginAccount getLoanBalance(GetBalanceRequest request);
|
|
List<CrossMarginCurrencyInfo> getLoanInfo();
|
|
static CrossMarginClient create(Options options) {
|
|
if (options.getExchange().equals(ExchangeEnum.HUOBI)) {
|
return new HuobiCrossMarginService(options);
|
}
|
throw new SDKException(SDKException.INPUT_ERROR, "Unsupport Exchange.");
|
}
|
|
List<GeneralRepayLoanResult> repayLoan(GeneralRepayLoanRequest request);
|
|
List<GeneralRepayLoanRecord> getRepaymentLoanRecords(GeneralLoanOrdersRequest request);
|
|
}
|