@@ -10,6 +10,25 @@ export interface MarginAsset {
1010 netAsset : string ;
1111}
1212
13+ export type CapitalFlowType =
14+ | 'TRANSFER'
15+ | 'BORROW'
16+ | 'REPAY'
17+ | 'BUY_INCOME'
18+ | 'BUY_EXPENSE'
19+ | 'SELL_INCOME'
20+ | 'SELL_EXPENSE'
21+ | 'TRADING_COMMISSION'
22+ | 'BUY_LIQUIDATION'
23+ | 'SELL_LIQUIDATION'
24+ | 'REPAY_LIQUIDATION'
25+ | 'OTHER_LIQUIDATION'
26+ | 'LIQUIDATION_FEE'
27+ | 'SMALL_BALANCE_CONVERT'
28+ | 'COMMISSION_RETURN'
29+ | 'SMALL_CONVERT'
30+
31+
1332export interface MarginAccountInfo {
1433 borrowEnabled : boolean ;
1534 marginLevel : string ;
@@ -93,11 +112,61 @@ export interface MarginOrderOcoParams extends Omit<MarginOrderParams, 'type'> {
93112 limitTimeInForce ?: TimeInForce ;
94113}
95114
115+ export interface MarginInterestHistory {
116+ txId : string ;
117+ interestAccuredTime : number ;
118+ asset : string ;
119+ rawAsset ?: string ;
120+ principal : string ;
121+ interest : string ;
122+ interestRate : string ;
123+ type : string ;
124+ isolatedSymbol : string ;
125+ }
126+
96127export interface MarginEndpoints extends BinanceRestClient {
97128 // Account endpoints
98129 marginAccountInfo ( ) : Promise < MarginAccountInfo > ;
130+ marginCapitalFlow ( params ?: {
131+ asset ?: string ;
132+ /**
133+ * Required when querying isolated data
134+ */
135+ symbol ?: string ;
136+ type ?: CapitalFlowType ;
137+ /**
138+ * Only supports querying the data of the last 90 days
139+ */
140+ startTime ?: number ;
141+ endTime ?: number ;
142+ fromId ?: number ;
143+ /**
144+ * The number of data items returned each time is limited. Default 500; Max 1000.
145+ */
146+ limit ?: number ;
147+ recvWindow ?: number ;
148+ } ) : Promise <
149+ {
150+ id : number ;
151+ tranId : number ;
152+ timestamp : number ;
153+ asset : string ;
154+ symbol : string ;
155+ type : CapitalFlowType ;
156+ amount : number ;
157+ } [ ]
158+ > ;
99159 marginIsolatedAccount ( params : { symbols : string } ) : Promise < MarginIsolatedAccount > ;
100160 marginMaxBorrow ( params : { asset : string ; isolatedSymbol ?: string } ) : Promise < MarginMaxBorrow > ;
161+ marginInterestHistory ( params : {
162+ asset ?: string ;
163+ isolatedSymbol ?: string ;
164+ startTime ?: number ;
165+ endTime ?: number ;
166+ current ?: number ;
167+ size ?: number ;
168+ timestamp ?: number ;
169+ } ) : Promise < { total : number ; rows : MarginInterestHistory [ ] } > ;
101170 marginCreateIsolated ( params : { base : string ; quote : string } ) : Promise < { success : boolean ; symbol : string } > ;
102171 marginIsolatedTransfer ( params : {
103172 asset : string ;
@@ -129,6 +198,67 @@ export interface MarginEndpoints extends BinanceRestClient {
129198 } > ;
130199 disableMarginAccount ( params : { symbol : string } ) : Promise < { success : boolean ; symbol : string } > ;
131200 enableMarginAccount ( params : { symbol : string } ) : Promise < { success : boolean ; symbol : string } > ;
201+ isolatedMarginAllPairs ( params : {
202+ symbol ?: string
203+ } ) : Promise <
204+ {
205+ base : string ;
206+ isBuyAllowed : boolean ;
207+ isMarginTrade : boolean ;
208+ isSellAllowed : boolean ;
209+ quote : string ;
210+ symbol : string ;
211+ } [ ]
212+ > ;
213+ isolatedMarginAccount ( params : {
214+ /**
215+ * Max 5 symbols can be sent; separated by ",". e.g. "BTCUSDT,BNBUSDT,ADAUSDT"
216+ */
217+ symbols ?: string ;
218+ recvWindow ?: number ;
219+ } ) : Promise < {
220+ assets : {
221+ baseAsset : {
222+ asset : string ;
223+ borrowEnabled : boolean ;
224+ borrowed : number ;
225+ free : number ;
226+ interest : number ;
227+ locked : number ;
228+ netAsset : number ;
229+ netAssetOfBtc : number ;
230+ repayEnabled : boolean ;
231+ totalAsset : number ;
232+ } ,
233+ quoteAsset : {
234+ asset : string ;
235+ borrowEnabled : boolean ;
236+ borrowed : number ;
237+ free : number ;
238+ interest : number ;
239+ locked : number ;
240+ netAsset : number ;
241+ netAssetOfBtc : number ;
242+ repayEnabled : boolean ;
243+ totalAsset : number ;
244+ } ;
245+ symbol : string ;
246+ isolatedCreated : boolean ;
247+ enabled : boolean ;
248+ marginLevel : number ;
249+ marginLevelStatus :
250+ | 'EXCESSIVE'
251+ | 'NORMAL'
252+ | 'MARGIN_CALL'
253+ | 'PRE_LIQUIDATION'
254+ | 'FORCE_LIQUIDATION' ;
255+ marginRatio : number ;
256+ indexPrice : number ;
257+ liquidatePrice : number ;
258+ liquidateRate : number ;
259+ tradeEnabled : boolean ;
260+ } [ ]
261+ } > ;
132262 marginAccount ( ) : Promise < MarginAccountInfo > ;
133263
134264 // Order endpoints
0 commit comments