kucoin-api
Version:
Complete & robust Node.js SDK for Kucoin's REST APIs and WebSockets, with TypeScript & strong end to end tests.
170 lines (169 loc) • 3.59 kB
TypeScript
/**
*
***********
* Margin Trading
***********
*
*/
/**
*
* Margin HF trade
*
*/
export interface SubmitHFMarginOrderRequest {
clientOid: string;
side: 'buy' | 'sell';
symbol: string;
type?: 'limit' | 'market';
stp?: 'CN' | 'CO' | 'CB' | 'DC';
isIsolated?: boolean;
autoBorrow?: boolean;
autoRepay?: boolean;
price?: string;
size?: string;
timeInForce?: 'GTC' | 'GTT' | 'IOC' | 'FOK';
cancelAfter?: number;
postOnly?: boolean;
hidden?: boolean;
iceberg?: boolean;
visibleSize?: string;
funds?: string;
}
export interface HFMarginRequestOrder {
symbol: string;
tradeType: 'MARGIN_TRADE' | 'MARGIN_ISOLATED_TRADE';
}
export interface GetHFMarginFilledRequest {
symbol: string;
tradeType: 'MARGIN_TRADE' | 'MARGIN_ISOLATED_TRADE';
side?: 'buy' | 'sell';
type?: 'limit' | 'market';
startAt?: number;
endAt?: number;
lastId?: number;
limit?: number;
}
export interface getHFMarginFillsRequest {
orderId?: string;
symbol: string;
tradeType: 'MARGIN_TRADE' | 'MARGIN_ISOLATED_TRADE';
side?: 'buy' | 'sell';
type?: 'limit' | 'market';
startAt?: number;
endAt?: number;
lastId?: number;
limit?: number;
}
/**
*
* Orders
*
*/
export interface SubmitMarginOrderRequest {
clientOid: string;
side: 'buy' | 'sell';
symbol: string;
type?: 'limit' | 'market';
remark?: string;
stp?: 'CN' | 'CO' | 'CB' | 'DC';
marginModel?: 'cross' | 'isolated';
autoBorrow?: boolean;
autoRepay?: boolean;
price: string;
size?: string;
timeInForce?: 'GTC' | 'GTT' | 'IOC' | 'FOK';
cancelAfter?: number;
postOnly?: boolean;
hidden?: boolean;
iceberg?: boolean;
visibleSize?: string;
funds?: string;
}
/**
*
* Margin info
*
*/
export interface MarginRiskLimitRequest {
isIsolated: boolean;
symbol?: string;
currency?: string;
}
/**
*
* Isolated Margin
*
*/
/**
*
* Margin trading(v3)
*
*/
export interface MarginBorrowV3Request {
isIsolated?: boolean;
symbol?: string;
currency: string;
size: number;
timeInForce: 'IOC' | 'FOK';
isHf: boolean;
}
export interface MarginRepayV3Request {
isIsolated?: boolean;
symbol?: string;
currency: string;
size: number;
isHf: boolean;
}
export interface MarginHistoryV3Request {
currency: string;
isIsolated?: boolean;
symbol?: string;
orderNo?: string;
startTime?: number;
endTime?: number;
currentPage?: number;
pageSize?: number;
}
export interface MarginInterestRecordsRequest {
isIsolated?: boolean;
symbol?: string;
currency?: string;
startTime?: number;
endTime?: number;
currentPage?: number;
pageSize?: number;
}
/**
*
* Lending market(v3)
*
*/
export interface InitiateLendingSubscriptionV3Request {
currency: string;
size: string;
interestRate: string;
}
export interface InitiateLendingRedemptionV3Request {
currency: string;
size: string;
purchaseOrderNo: string;
}
export interface ModifyLendingSubscriptionOrdersV3Request {
currency: string;
purchaseOrderNo: string;
interestRate: string;
}
export interface GetLendingRedemptionOrdersV3Request {
currency: string;
redeemOrderNo?: string;
status: 'DONE' | 'PENDING';
currentPage?: number;
pageSize?: number;
}
export interface GetLendingSubscriptionOrdersV3Request {
currency: string;
purchaseOrderNo?: string;
status: 'DONE' | 'PENDING';
currentPage?: number;
pageSize?: number;
}