@hackape/tardis-dev
Version:
Convenient access to tick-level historical and real-time cryptocurrency market data via Node.js
143 lines • 4.8 kB
TypeScript
import { BookChange, DerivativeTicker, Exchange, Trade, OptionSummary } from '../types';
import { Mapper } from './mapper';
export declare class OkexTradesMapper implements Mapper<OKEX_EXCHANGES, Trade> {
private readonly _exchange;
private readonly _market;
private readonly _seenSymbols;
constructor(_exchange: Exchange, _market: OKEX_MARKETS);
canHandle(message: OkexDataMessage): boolean;
getFilters(symbols?: string[]): {
channel: string;
symbols: string[] | undefined;
}[];
map(okexTradesMessage: OKexTradesDataMessage, localTimestamp: Date): IterableIterator<Trade>;
}
export declare class OkexBookChangeMapper implements Mapper<OKEX_EXCHANGES, BookChange> {
private readonly _exchange;
private readonly _market;
private readonly _canUseTickByTickChannel;
constructor(_exchange: Exchange, _market: OKEX_MARKETS, _canUseTickByTickChannel: boolean);
canHandle(message: OkexDataMessage): boolean;
getFilters(symbols?: string[]): {
readonly channel: string;
readonly symbols: string[] | undefined;
}[];
map(okexDepthDataMessage: OkexDepthDataMessage, localTimestamp: Date): IterableIterator<BookChange>;
}
export declare class OkexDerivativeTickerMapper implements Mapper<'okex-futures' | 'okex-swap', DerivativeTicker> {
private readonly _exchange;
private readonly pendingTickerInfoHelper;
private _futuresChannels;
private _swapChannels;
constructor(_exchange: Exchange);
canHandle(message: OkexDataMessage): boolean;
getFilters(symbols?: string[]): {
channel: string;
symbols: string[] | undefined;
}[];
map(message: OkexTickersMessage | OkexFundingRateMessage | OkexMarkPriceMessage, localTimestamp: Date): IterableIterator<DerivativeTicker>;
}
export declare class OkexOptionSummaryMapper implements Mapper<'okex-options', OptionSummary> {
private readonly _indexPrices;
private readonly expiration_regex;
canHandle(message: OkexDataMessage): boolean;
getFilters(symbols?: string[]): ({
readonly channel: "option/summary";
readonly symbols: string[] | undefined;
readonly indexes?: undefined;
} | {
readonly channel: "index/ticker";
readonly indexes: string[] | undefined;
readonly symbols?: undefined;
})[];
map(message: OkexOptionSummaryData | OkexIndexData, localTimestamp: Date): IterableIterator<OptionSummary> | undefined;
}
declare type OkexDataMessage = {
table: string;
};
declare type OKexTradesDataMessage = {
data: {
side: 'buy' | 'sell';
trade_id: string | number;
price: string | number;
qty?: string | number;
size?: string | number;
instrument_id: string;
timestamp: string;
}[];
};
declare type OkexTickersMessage = {
data: {
last: string | number;
best_bid: string | number;
best_ask: string | number;
open_interest: string | undefined;
instrument_id: string;
timestamp: string;
}[];
};
declare type OkexFundingRateMessage = {
data: {
funding_rate: string;
funding_time: string;
estimated_rate?: string;
instrument_id: string;
timestamp: undefined;
}[];
};
declare type OkexMarkPriceMessage = {
data: {
instrument_id: string;
mark_price: string;
timestamp: string;
}[];
};
declare type OkexDepthDataMessage = {
action: 'partial' | 'update';
data: {
instrument_id: string;
asks: OkexBookLevel[];
bids: OkexBookLevel[];
timestamp: string;
}[];
};
declare type OkexBookLevel = [number | string, number | string, number | string, number | string];
declare type OKEX_EXCHANGES = 'okex' | 'okcoin' | 'okex-futures' | 'okex-swap' | 'okex-options';
declare type OKEX_MARKETS = 'spot' | 'swap' | 'futures' | 'option';
declare type OkexIndexData = {
table: 'index/ticker';
data: [
{
last: number;
instrument_id: string;
}
];
};
declare type OkexOptionSummaryData = {
table: 'option/summary';
data: [
{
instrument_id: string;
underlying: string;
best_ask: string;
best_bid: string;
best_ask_size: string;
best_bid_size: string;
change_rate: string;
delta: string;
gamma: string;
bid_vol: string;
ask_vol: string;
mark_vol: string;
last: string;
leverage: string;
mark_price: string;
theta: string;
vega: string;
open_interest: string;
timestamp: string;
}
];
};
export {};
//# sourceMappingURL=okex.d.ts.map