@itick/browser-sdk
Version:
Official iTick API SDK for browser. Real-time & historical data for global Stocks, Forex, Crypto, Indices, Futures, Funds, Precious Metals. REST (OHLCV/K-line) + low-latency WebSocket. Promise-based, TypeScript-ready. For quant trading & fintech
205 lines • 10.2 kB
TypeScript
/**
* Indices Module
* Provides data access interfaces for indices
*/
import { Client, ClientOptions } from '../../utils/client';
import { APIResponse } from '../../types';
import { TickData, TickDataMap } from '../../types/tick';
import { QuoteData, QuoteDataMap } from '../../types/quote';
import { DepthData, DepthDataMap } from '../../types/depth';
import { KlineData, KlineDataMap, GetKlineOptions, GetKlinesOptions } from '../../types/kline';
import { CreateSocketOptions } from '../../types/socket';
import SocketClient from '../../utils/SocketClient';
/**
* Indices SDK Client
* Specialized for indices data access
*/
export declare class IndicesClient extends Client {
constructor(token: string, options?: ClientOptions);
/**
* Get Indices Real-Time Trade Snapshot
* @description Query latest trade real-time market data for indices based on market code and symbol code
* @param params - Query parameters object
* @param params.region - Market code (e.g., GB etc.), see {@link https://docs.itick.org/rest-api/indices/indices-tick Official Documentation} for complete supported list
* @param params.code - Symbol code (e.g., DJI, SPX etc.)
* @returns Promise wrapped standard API response, data is real-time market data {@link TickData}
* @example
* ```typescript
* // Get real-time trade market data for Dow Jones Industrial Average (DJI)
* getTick({ region: 'GB', code: 'DJI' }).then(response => {
* console.log('Real-time market:', response.data);
* }).catch(err => {
* console.error('Failed to get market data:', err);
* });
* ```
*/
getTick(params: {
region: string;
code: string;
}): Promise<APIResponse<TickData>>;
/**
* Get Indices Latest Quote
* @description Query latest quote real-time market data for indices based on market code and symbol code
* @param params - Query parameters object
* @param params.region - Market code (e.g., GB etc.), see {@link https://docs.itick.org/rest-api/indices/indices-quote Official Documentation} for complete supported list
* @param params.code - Symbol code (e.g., DJI, SPX etc.)
* @returns Promise wrapped API response, data is latest quote data {@link QuoteData}
* @example
* ```typescript
* // Get latest quote for Dow Jones Industrial Average (DJI)
* getQuote({ region: 'GB', code: 'DJI' }).then(response => {
* console.log('Latest quote:', response.data);
* }).catch(err => {
* console.error('Failed to get quote:', err);
* });
* ```
*/
getQuote(params: {
region: string;
code: string;
}): Promise<APIResponse<QuoteData>>;
/**
* Get Indices Latest Order Book
* @description Query latest order book data for indices based on market code and symbol code
* @param params - Query parameters object
* @param params.region - Market code (e.g., GB etc.), see {@link https://docs.itick.org/rest-api/indices/indices-depth Official Documentation} for complete supported list
* @param params.code - Symbol code (e.g., DJI, SPX etc.)
* @returns Promise wrapped API response, data is latest order book data {@link DepthData}
* @example
* ```typescript
* // Get latest order book for Dow Jones Industrial Average (DJI)
* getDepth({ region: 'GB', code: 'DJI' }).then(response => {
* console.log('Latest order book:', response.data);
* }).catch(err => {
* console.error('Failed to get order book:', err);
* });
* ```
*/
getDepth(params: {
region: string;
code: string;
}): Promise<APIResponse<DepthData>>;
/**
* Get Indices K-Line Data
* @description Query indices K-line data based on market code, symbol code, K-line period, end time and number of records to return
* @param options - Query parameters object {@link GetKlineOptions}
* @param options.region - Market code (e.g., GB etc.), see {@link https://docs.itick.org/rest-api/indices/indices-kline Official Documentation} for complete supported list
* @param options.code - Symbol code (e.g., DJI, SPX etc.)
* @returns Promise wrapped API response, data is K-line data array {@link KlineData}
* @example
* ```typescript
* // Get 5-minute K-line data for Dow Jones Industrial Average (DJI)
* getKline({ region: 'GB', code: 'DJI', interval: '5m', limit: 100 }).then(response => {
* console.log('K-line data:', response.data);
* }).catch(err => {
* console.error('Failed to get K-line data:', err);
* });
* ```
*/
getKline(options: GetKlineOptions): Promise<APIResponse<KlineData[]>>;
/**
* Get Multiple Indices Latest Trades
* @description Query latest trade real-time market data for multiple indices based on market code and symbol code list
* @param params - Query parameters object
* @param params.region - Market code (e.g., GB etc.), see {@link https://docs.itick.org/rest-api/indices/indices-ticks Official Documentation} for complete supported list
* @param params.codes - Symbol code list (e.g., DJI, SPX etc.)
* @returns Promise wrapped API response, data is multiple indices latest trade data object {@link TickDataMap}
* @example
* ```typescript
* // Get latest trade market data for Dow Jones (DJI) and S&P 500 (SPX)
* getTicks({ region: 'GB', codes: ['DJI', 'SPX'] }).then(response => {
* console.log('Latest trades:', response.data);
* }).catch(err => {
* console.error('Failed to get trade market data:', err);
* });
* ```
*/
getTicks(params: {
region: string;
codes: string[] | string;
}): Promise<APIResponse<TickDataMap>>;
/**
* Get Multiple Indices Latest Quotes
* @description Query latest quote real-time market data for multiple indices based on market code and symbol code list
* @param params - Query parameters object
* @param params.region - Market code (e.g., GB etc.), see {@link https://docs.itick.org/rest-api/indices/indices-quotes Official Documentation} for complete supported list
* @param params.codes - Symbol code list (e.g., DJI, SPX etc.)
* @returns Promise wrapped API response, data is multiple indices latest quote data object {@link QuoteDataMap}
* @example
* ```typescript
* // Get latest quotes for Dow Jones (DJI) and S&P 500 (SPX)
* getQuotes({ region: 'GB', codes: ['DJI', 'SPX'] }).then(response => {
* console.log('Latest quotes:', response.data);
* }).catch(err => {
* console.error('Failed to get quotes:', err);
* });
* ```
*/
getQuotes(params: {
region: string;
codes: string[] | string;
}): Promise<APIResponse<QuoteDataMap>>;
/**
* Get Multiple Indices Latest Order Books
* @description Query latest order book real-time market data for multiple indices based on market code and symbol code list
* @param params - Query parameters object
* @param params.region - Market code (e.g., GB etc.), see {@link https://docs.itick.org/rest-api/indices/indices-depths Official Documentation} for complete supported list
* @param params.codes - Symbol code list (e.g., DJI, SPX etc.)
* @returns Promise wrapped API response, data is multiple indices latest order book data object {@link DepthDataMap}
* @example
* ```typescript
* // Get latest order books for Dow Jones (DJI) and S&P 500 (SPX)
* getDepths({ region: 'GB', codes: ['DJI', 'SPX'] }).then(response => {
* console.log('Latest order books:', response.data);
* }).catch(err => {
* console.error('Failed to get order books:', err);
* });
* ```
*/
getDepths(params: {
region: string;
codes: string[] | string;
}): Promise<APIResponse<DepthDataMap>>;
/**
* Get Multiple Indices K-Line Data
* @description Query K-line data for multiple indices based on market code, symbol code list, K-line period, end time and number of records to return
* @param options - Query parameters object {@link GetKlinesOptions}
* @param options.region - Market code (e.g., GB etc.), see {@link https://docs.itick.org/rest-api/indices/indices-klines Official Documentation} for complete supported list
* @param options.codes - Symbol code list (e.g., DJI, SPX etc.)
* @returns Promise wrapped API response, data is multiple indices K-line data object {@link KlineDataMap}
* @example
* ```typescript
* // Get 5-minute K-line data for Dow Jones (DJI) and S&P 500 (SPX)
* getKlines({ region: 'GB', codes: ['DJI', 'SPX'], kType: '5m', limit: 100 }).then(response => {
* console.log('K-line data:', response.data);
* }).catch(err => {
* console.error('Failed to get K-line data:', err);
* });
* ```
*/
getKlines(options: GetKlinesOptions): Promise<APIResponse<KlineDataMap>>;
/**
* Create WebSocket Connection
* @description Creates a WebSocket connection and returns a SocketClient object for managing connection and subscribing to real-time data. Subscription data can be specified through options parameter.
* Automatically handles connection retry and heartbeat mechanism to ensure connection stability and reliability.
* @param options - Optional options object for creating WebSocket connection {@link CreateSocketOptions}
* @returns SocketClient object for managing WebSocket connection
* @example
* ```typescript
* // Create a WebSocket connection and subscribe to 1-minute K-line and real-time quote data for Dow Jones and S&P 500
* const client = new IndicesClient(token);
* const socket = client.createSocket({
* subscribeData: {
* codes: ['DJI$GB', 'SPX$GB'],
* types: ['kline@1m', 'quote']
* }
* });
* socket.onSocketMessage(data => {
* console.log('Received WebSocket message:', data);
* });
* ```
* @see Official Documentation https://docs.itick.org/websocket/indices
*/
createSocket(options?: CreateSocketOptions): SocketClient;
}
//# sourceMappingURL=index.d.ts.map