binance-futures-wrapper
Version:
A comprehensive TypeScript wrapper for Binance USDT-M Futures API with full REST and WebSocket support
307 lines • 7.35 kB
TypeScript
/**
* Market data types for Binance Futures API
*/
import { IntervalType } from './base';
export interface SymbolInfo {
symbol: string;
pair: string;
contractType: string;
deliveryDate: number;
onboardDate: number;
status: string;
maintMarginPercent: string;
requiredMarginPercent: string;
baseAsset: string;
quoteAsset: string;
marginAsset: string;
pricePrecision: number;
quantityPrecision: number;
baseAssetPrecision: number;
quotePrecision: number;
underlyingType: string;
underlyingSubType: string[];
settlePlan: number;
triggerProtect: string;
liquidationFee: string;
marketTakeBound: string;
filters: SymbolFilter[];
orderTypes: string[];
timeInForce: string[];
}
export interface Filter {
filterType: string;
maxPrice?: string;
minPrice?: string;
tickSize?: string;
stepSize?: string;
maxQty?: string;
minQty?: string;
limit?: number;
notional?: string;
multiplierUp?: string;
multiplierDown?: string;
multiplierDecimal?: string;
}
export interface ExchangeInfo {
exchangeFilters: ExchangeFilter[];
rateLimits: RateLimit[];
serverTime: number;
assets: Asset[];
symbols: SymbolInfo[];
timezone: string;
}
export interface RateLimit {
rateLimitType: string;
interval: string;
intervalNum: number;
limit: number;
}
export interface Asset {
asset: string;
marginAvailable: boolean;
autoAssetExchange: string;
}
export interface OrderBook {
lastUpdateId: number;
E: number;
T: number;
bids: [string, string][];
asks: [string, string][];
}
export interface MarketTrade {
id: number;
price: string;
qty: string;
quoteQty: string;
time: number;
isBuyerMaker: boolean;
}
export interface AggTrade {
a: number;
p: string;
q: string;
f: number;
l: number;
T: number;
m: boolean;
}
export interface Kline {
openTime: number;
open: string;
high: string;
low: string;
close: string;
volume: string;
closeTime: number;
quoteAssetVolume: string;
count: number;
takerBuyBaseAssetVolume: string;
takerBuyQuoteAssetVolume: string;
}
export interface MarkPrice {
symbol: string;
markPrice: string;
indexPrice: string;
estimatedSettlePrice: string;
lastFundingRate: string;
interestRate: string;
nextFundingTime: number;
time: number;
}
export interface FundingRate {
symbol: string;
fundingTime: number;
fundingRate: string;
markPrice: string;
}
export interface Ticker24hr {
symbol: string;
priceChange: string;
priceChangePercent: string;
weightedAvgPrice: string;
lastPrice: string;
lastQty: string;
openPrice: string;
highPrice: string;
lowPrice: string;
volume: string;
quoteVolume: string;
openTime: number;
closeTime: number;
firstId: number;
lastId: number;
count: number;
}
import { ExchangeFilter, SymbolFilter } from './filters';
export interface PriceTickerData {
symbol: string;
price: string;
time: number;
}
export interface BookTicker {
symbol: string;
bidPrice: string;
bidQty: string;
askPrice: string;
askQty: string;
time: number;
}
export interface OpenInterest {
openInterest: string;
symbol: string;
time: number;
}
export interface OpenInterestStatistics {
symbol: string;
sumOpenInterest: string;
sumOpenInterestValue: string;
timestamp: number;
}
export interface TopLongShortAccountRatio {
symbol: string;
longShortRatio: string;
longAccount: string;
shortAccount: string;
timestamp: number;
}
export interface TopLongShortPositionRatio {
symbol: string;
longShortRatio: string;
longPosition: string;
shortPosition: string;
timestamp: number;
}
export interface GlobalLongShortAccountRatio {
symbol: string;
longShortRatio: string;
longAccount: string;
shortAccount: string;
timestamp: number;
}
export interface TakerLongShortRatio {
buySellRatio: string;
buyVol: string;
sellVol: string;
timestamp: number;
}
export interface HistoricalBlvtNavKlines {
symbol: string;
nav: [number, string, string, string, string, string][];
}
export interface CompositeIndexSymbolInfo {
symbol: string;
time: number;
component: string;
baseAssetList: {
baseAsset: string;
weightInQuantity: string;
weightInPercentage: string;
}[];
}
export interface MultiAssetsMode {
multiAssetsMargin: boolean;
}
export interface GetOrderBookParams {
symbol: string;
limit?: 5 | 10 | 20 | 50 | 100 | 500 | 1000;
}
export interface GetTradesParams {
symbol: string;
limit?: number;
}
export interface GetHistoricalTradesParams {
symbol: string;
limit?: number;
fromId?: number;
}
export interface GetAggTradesParams {
symbol: string;
fromId?: number;
startTime?: number;
endTime?: number;
limit?: number;
}
export interface GetKlinesParams {
symbol: string;
interval: IntervalType;
startTime?: number;
endTime?: number;
limit?: number;
}
export interface GetContinuousKlinesParams {
pair: string;
contractType: 'PERPETUAL' | 'CURRENT_MONTH' | 'NEXT_MONTH' | 'CURRENT_QUARTER' | 'NEXT_QUARTER';
interval: IntervalType;
startTime?: number;
endTime?: number;
limit?: number;
}
export interface GetIndexPriceKlinesParams {
pair: string;
interval: IntervalType;
startTime?: number;
endTime?: number;
limit?: number;
}
export interface GetMarkPriceKlinesParams {
symbol: string;
interval: IntervalType;
startTime?: number;
endTime?: number;
limit?: number;
}
export interface GetFundingRateParams {
symbol?: string;
startTime?: number;
endTime?: number;
limit?: number;
}
export interface GetOpenInterestParams {
symbol: string;
}
export interface GetOpenInterestStatisticsParams {
symbol: string;
period: '5m' | '15m' | '30m' | '1h' | '2h' | '4h' | '6h' | '12h' | '1d';
limit?: number;
startTime?: number;
endTime?: number;
}
export interface GetTopLongShortAccountRatioParams {
symbol: string;
period: '5m' | '15m' | '30m' | '1h' | '2h' | '4h' | '6h' | '12h' | '1d';
limit?: number;
startTime?: number;
endTime?: number;
}
export interface GetTopLongShortPositionRatioParams {
symbol: string;
period: '5m' | '15m' | '30m' | '1h' | '2h' | '4h' | '6h' | '12h' | '1d';
limit?: number;
startTime?: number;
endTime?: number;
}
export interface GetGlobalLongShortAccountRatioParams {
symbol: string;
period: '5m' | '15m' | '30m' | '1h' | '2h' | '4h' | '6h' | '12h' | '1d';
limit?: number;
startTime?: number;
endTime?: number;
}
export interface GetTakerLongShortRatioParams {
symbol: string;
period: '5m' | '15m' | '30m' | '1h' | '2h' | '4h' | '6h' | '12h' | '1d';
limit?: number;
startTime?: number;
endTime?: number;
}
export interface GetHistoricalBlvtNavKlinesParams {
symbol: string;
interval: IntervalType;
startTime?: number;
endTime?: number;
limit?: number;
}
export interface GetCompositeIndexSymbolInfoParams {
symbol?: string;
}
//# sourceMappingURL=market.d.ts.map