行情查询

TypeScript SDK 通过 QuoteClient 提供全部行情接口。自 v0.3.0 起所有方法均返回强类型对象;v0.4.0 将 4 个行情方法(getBrief / getQuoteDepth / getTradeTick / getFutureRealTimeQuote)改为 Request 对象签名(breaking),并新增 41 个方法覆盖股票基础 / 期权 / 期货 / 基金 / 窝轮 / 行业 / 财务日历 / 夜盘等场景。请求参数在 TS 中使用 camelCase,SDK 会自动转换为 snake_case 发往服务端。

完整可运行示例:

import {
  createClientConfig,
  HttpClient,
  QuoteClient,
} from '@tigeropenapi/tigeropen';

async function main() {
  const config = createClientConfig();
  // 行情客户端需要行情专用的 HttpClient
  const qc = new QuoteClient(
    new HttpClient(config, undefined, { useQuoteServerUrl: true }),
  );

  // 市场状态
  const states = await qc.getMarketState('US');
  console.log('美股市场状态:', states);

  // 实时报价 (v0.4.0: Request 对象)
  const briefs = await qc.getBrief({ symbols: ['AAPL', 'TSLA'] });
  console.log('实时报价:', briefs);

  // K 线
  const klines = await qc.getKline('AAPL', 'day');
  console.log('K 线:', klines[0]?.items.length);
}

main().catch(console.error);

基础行情

getMarketState 获取市场状态

qc.getMarketState(market: string): Promise<MarketState[]>

说明

查询指定市场(美股、港股等)的当前交易状态。

参数

参数名类型是否必填描述
marketstring市场代码:'US' / 'HK' / 'CN' / 'SG'

返回

Promise<MarketState[]>,每个元素含 marketmarketStatusstatusopenTime

示例

const states = await qc.getMarketState('US');
console.log(states);

getBrief 获取实时报价

qc.getBrief(req: BriefRequest): Promise<Brief[]>

v0.4.0 Breaking:由位置参数 symbols: string[] 改为 Request 对象。

说明

批量获取股票的实时快照行情。wire 方法 quote_real_time

请求 BriefRequest

参数名类型是否必填描述
symbolsstring[]股票代码列表,如 ['AAPL', 'TSLA']
includeHourTradingboolean是否包含盘前盘后
secTypestring证券类型('STK' / 'OPT' 等)
langstring语言('zh_CN' / 'zh_TW' / 'en_US'

返回

Promise<Brief[]>,每个元素含 symbollatestPricepreCloseopen/high/low/closechange/changeRatevolumebidPrice/askPricebidSize/askSizelatestTime 等。

示例

const briefs = await qc.getBrief({
  symbols: ['AAPL', 'TSLA', '00700'],
});
for (const b of briefs) {
  console.log(`${b.symbol} ${b.latestPrice} (${b.changeRate})`);
}

getKline 获取 K 线数据

qc.getKline(symbol: string, period: string): Promise<Kline[]>

说明

获取指定股票的历史 K 线数据。

参数

参数名类型是否必填描述
symbolstring股票代码
periodstringK 线周期:'day' / 'week' / 'month' / 'year' / '1min' / '5min' / '15min' / '30min' / '60min'

返回

Promise<Kline[]>,每个元素含 symbolperioditems: KlineItem[]time/open/high/low/close/volume/amount)、可选 nextPageToken

示例

const klines = await qc.getKline('AAPL', 'day');
console.log(klines[0]?.items);

getTimeline 获取分时数据

qc.getTimeline(symbols: string[]): Promise<Timeline[]>

说明

获取当日分时走势数据。

参数

参数名类型是否必填描述
symbolsstring[]股票代码列表

返回

Promise<Timeline[]>,每个元素含 symbolperiodpreClose,以及 intraday / preHours / afterHours 三个可选分时桶,每个桶下的 itemstimepricevolumeavgPrice

示例

const tl = await qc.getTimeline(['AAPL']);
console.log(tl[0]?.intraday?.items);

getTradeTick 获取逐笔成交

qc.getTradeTick(req: TradeTickRequest): Promise<TradeTick[]>

v0.4.0 Breaking:由位置参数 symbols: string[] 改为 Request 对象。

说明

获取最新逐笔成交记录。wire 方法 trade_tick

请求 TradeTickRequest

参数名类型是否必填描述
symbolsstring[]股票代码列表
beginIndexnumber起始序号
endIndexnumber结束序号
limitnumber返回条数上限
langstring语言

返回

Promise<TradeTick[]>,每个元素含 symbolbeginIndexendIndexitemstime/price/volume/type)。

示例

const ticks = await qc.getTradeTick({ symbols: ['AAPL'] });
console.log(ticks[0]?.items.slice(0, 5));

getQuoteDepth 获取深度行情

qc.getQuoteDepth(req: DepthQuoteRequest): Promise<Depth[]>

v0.4.0 Breaking:由位置参数 (symbol, market) 改为 Request 对象,且 symbols 支持批量。

说明

获取盘口深度数据。仅支持 'US' / 'HK' 市场。wire 方法 quote_depth

请求 DepthQuoteRequest

参数名类型是否必填描述
symbolsstring[]股票代码列表
marketstring市场:'US' / 'HK'
tradeSessionstring交易时段
langstring语言

返回

Promise<Depth[]>,每个元素含 symbolasksbids;每档 DepthLevelprice/count/volume

示例

const depths = await qc.getQuoteDepth({
  symbols: ['AAPL'],
  market: 'US',
});
console.log(depths[0]?.asks, depths[0]?.bids);

期权行情

getOptionExpiration 获取期权到期日

qc.getOptionExpiration(symbol: string): Promise<OptionExpiration[]>

说明

获取标的的所有期权到期日列表。

参数

参数名类型是否必填描述
symbolstring标的股票代码,如 'AAPL'

返回

Promise<OptionExpiration[]>,每个元素含 symboldates'YYYY-MM-DD' 字符串数组)、timestamps(毫秒时间戳数组),可选 optionSymbols / periods / counts

示例

const exps = await qc.getOptionExpiration('AAPL');
console.log(exps[0]?.dates);

getOptionChain 获取期权链

qc.getOptionChain(symbol: string, expiry: string): Promise<OptionChain[]>

说明

获取指定标的和到期日的完整期权链。expiry 必须为 'YYYY-MM-DD' 格式,SDK 自动转换为毫秒时间戳。

参数

参数名类型是否必填描述
symbolstring标的代码
expirystring到期日,格式 'YYYY-MM-DD'

返回

Promise<OptionChain[]>,每个元素含 symbolexpiryitems: OptionChainRow[]。每行含 callput 两个 OptionLegOptionLegidentifierstrikerightlatestPricebidPrice/askPriceimpliedVoldeltagammathetavega 等。

示例

const chain = await qc.getOptionChain('AAPL', '2025-01-17');
const firstRow = chain[0]?.items[0];
console.log(firstRow?.call?.identifier, firstRow?.put?.identifier);

getOptionBrief 获取期权报价

qc.getOptionBrief(identifiers: string[]): Promise<Brief[]>

说明

批量获取期权合约的实时报价;SDK 内部会把 OCC 期权代码解析为 symbol / expiry / right / strike 请求参数。

参数

参数名类型是否必填描述
identifiersstring[]期权代码列表,美股格式:'AAPL 250117C00150000'(注意双空格)

返回

Promise<Brief[]>,每个元素含 symbollatestPricepreClosechangevolumeopenInterestmultiplierexpirystrikerightaskPrice/bidPrice

示例

const optBriefs = await qc.getOptionBrief(['AAPL  250117C00150000']);
console.log(optBriefs[0]?.latestPrice);

getOptionKline 获取期权 K 线

qc.getOptionKline(identifier: string, period: string): Promise<Kline[]>

说明

获取指定期权合约的历史 K 线。SDK 自动从 identifier 解析出 symbol / expiry / right / strike

参数

参数名类型是否必填描述
identifierstring期权合约代码
periodstringK 线周期

返回

Promise<Kline[]>(结构同 getKline)。

示例

const optKline = await qc.getOptionKline('AAPL  250117C00150000', 'day');
console.log(optKline[0]?.items);

期货行情

getFutureExchange 获取期货交易所列表

qc.getFutureExchange(): Promise<FutureExchange[]>

说明

获取平台支持的所有期货交易所列表。

返回

Promise<FutureExchange[]>,每个元素含 codenamezoneId

示例

const exchanges = await qc.getFutureExchange();
for (const e of exchanges) {
  console.log(`${e.code} ${e.name} (${e.zoneId})`);
}

getFutureContracts 获取期货合约列表

qc.getFutureContracts(exchangeCode: string): Promise<FutureContractInfo[]>

说明

获取指定交易所下所有可交易期货合约。

参数

参数名类型是否必填描述
exchangeCodestring交易所代码,如 'CME''HKEX'

返回

Promise<FutureContractInfo[]>,每个元素含 contractCodenametypecontractMonthlastTradingDatecurrencymultiplierminTickexchange

示例

const contracts = await qc.getFutureContracts('CME');
console.log(contracts[0]?.contractCode);

getFutureRealTimeQuote 获取期货实时报价

qc.getFutureRealTimeQuote(req: FutureBriefRequest): Promise<FutureQuote[]>

v0.4.0 Breaking:由位置参数 contractCodes: string[] 改为 Request 对象。

说明

批量获取期货合约的实时行情数据。wire 方法 future_real_time_quote

请求 FutureBriefRequest

参数名类型是否必填描述
contractCodesstring[]期货合约代码列表,如 ['ES2506', 'NQ2506']
langstring语言

返回

Promise<FutureQuote[]>,每个元素含 contractCodelatestPricebidPrice/askPricevolumeopenInterestopen/high/lowsettlementlimitUp/limitDown

示例

const futQuotes = await qc.getFutureRealTimeQuote({
  contractCodes: ['ES2506', 'NQ2506'],
});
console.log(futQuotes);

getFutureKline 获取期货 K 线

qc.getFutureKline(req: FutureKlineRequest): Promise<FutureKline[]>

说明

获取期货合约的历史 K 线数据。beginTime/endTime 为毫秒时间戳;传 -1(或省略后由 SDK 默认填 -1)表示不限制。

请求 FutureKlineRequest

参数名类型是否必填描述
contractCodesstring[]期货合约代码列表
periodstringK 线周期
beginTimenumber开始时间(ms);-1 表示不限
endTimenumber结束时间(ms);-1 表示不限
limitnumber返回条数限制
pageTokenstring分页令牌

返回

Promise<FutureKline[]>,每个元素含 items: FutureKlineItem[] 与可选 nextPageTokenFutureKlineItemtimeopenhighlowclosevolumelastTimeopenInterestsettlement

示例

const futKline = await qc.getFutureKline({
  contractCodes: ['ES2506'],
  period: 'day',
  beginTime: -1,
  endTime: -1,
});
console.log(futKline[0]?.items);

基本面数据

getFinancialDaily 获取日级财务数据

qc.getFinancialDaily(req: FinancialDailyRequest): Promise<FinancialDailyItem[]>

说明

获取股票的每日财务指标数据(如流通股数等)。

请求 FinancialDailyRequest

参数名类型是否必填描述
symbolsstring[]股票代码列表
marketstring市场
fieldsstring[]查询字段,如 ['shares_outstanding']
beginDatestring起始日期 'YYYY-MM-DD'
endDatestring结束日期 'YYYY-MM-DD'

返回

Promise<FinancialDailyItem[]>symbol/field/date/value)。

示例

const daily = await qc.getFinancialDaily({
  symbols: ['AAPL'],
  market: 'US',
  fields: ['shares_outstanding'],
  beginDate: '2025-01-01',
  endDate: '2025-01-31',
});
console.log(daily);

资金流向

getCapitalFlow 获取资金流向

qc.getCapitalFlow(symbol: string, market: string, period: string): Promise<CapitalFlow | undefined>

说明

获取股票的资金流向时间序列数据。

参数

参数名类型是否必填描述
symbolstring股票代码
marketstring市场
periodstring周期:'intraday' / 'day' / 'week' / 'month' / 'year' / 'quarter'

返回

Promise<CapitalFlow | undefined>,对象含 symbolperioditems: CapitalFlowItem[]time/timestamp/netInflow)。

示例

const flow = await qc.getCapitalFlow('AAPL', 'US', 'day');
console.log(flow?.items);

getCapitalDistribution 获取资金分布

qc.getCapitalDistribution(symbol: string, market: string): Promise<CapitalDistribution | undefined>

说明

获取股票当前资金分布快照,按大单/中单/小单维度展示流入流出。

参数

参数名类型是否必填描述
symbolstring股票代码
marketstring市场

返回

Promise<CapitalDistribution | undefined>,对象含 symbolnetInflowinAllinBiginMidinSmalloutAlloutBigoutMidoutSmall

示例

const dist = await qc.getCapitalDistribution('AAPL', 'US');
console.log(dist?.netInflow);

选股器

marketScanner 选股器

qc.marketScanner(req: MarketScannerRequest): Promise<ScannerResult | undefined>

说明

根据自定义条件筛选股票。

请求 MarketScannerRequest

参数名类型是否必填描述
marketstring市场
pagenumber页码(从 0 开始)
pageSizenumber每页数量
cursorIdstring游标分页 ID
baseFilterListArray<Record<string, unknown>>基础字段过滤
accumulateFilterListArray<Record<string, unknown>>累积字段过滤
financialFilterListArray<Record<string, unknown>>财务字段过滤
multiTagsFilterListArray<Record<string, unknown>>多标签过滤
sortFieldDataRecord<string, unknown>排序字段

返回

Promise<ScannerResult | undefined>,对象含 pagetotalPagetotalCountpageSizecursorId,以及 items: ScannerResultItem[](每项含 symbolmarket 及分类数据列表)。

示例

const res = await qc.marketScanner({ market: 'US', page: 0, pageSize: 10 });
console.log(`page=${res?.page}/${res?.totalPage} items=${res?.items.length}`);

grabQuotePermission 获取行情权限

qc.grabQuotePermission(): Promise<QuotePermission[]>

说明

查询当前账户开通的行情权限列表。

返回

Promise<QuotePermission[]>,每个元素含 nameexpireAt

示例

const perms = await qc.grabQuotePermission();
console.log(perms);

getMarketScannerTags 获取选股扫描器标签 (v0.4.0 新增)

qc.getMarketScannerTags(req: MarketScannerTagsRequest): Promise<MarketScannerTags | undefined>

说明

查询选股扫描器(marketScanner)可用的 multi_tags 字段及枚举值。wire 方法 market_scanner_tags

请求 MarketScannerTagsRequest

参数名类型是否必填描述
marketstring市场
multiTagFieldListstring[]多标签字段列表(wire: multi_tag_field_list
langstring语言

返回

Promise<MarketScannerTags | undefined>tagFields / tags: MarketScannerTag[],每个 MarketScannerTagfield / name / values)。

示例

const tags = await qc.getMarketScannerTags({ market: 'US' });
console.log(tags?.tagFields, tags?.tags.length);

股票基础 (v0.4.0 新增)

getSymbols 获取市场全部代码

qc.getSymbols(req: SymbolsRequest): Promise<string[]>

说明

获取指定市场的全部合约代码列表(仅 symbol)。wire 方法 all_symbols

请求 SymbolsRequest

参数名类型是否必填描述
marketstring市场:'US' / 'HK' / 'CN' / 'SG'
secTypestring证券类型
includeOtcboolean是否包含 OTC
langstring语言

返回

Promise<string[]> symbol 列表。

示例

const symbols = await qc.getSymbols({ market: 'US' });
console.log(`total=${symbols.length} first=${symbols[0]}`);

getSymbolNames 获取代码 + 名称

qc.getSymbolNames(req: SymbolsRequest): Promise<SymbolName[]>

说明

获取指定市场的合约代码及中英文名称。wire 方法 all_symbol_names

返回

Promise<SymbolName[]>symbol / name / market)。

示例

const items = await qc.getSymbolNames({ market: 'US' });
for (const it of items.slice(0, 5)) {
  console.log(`${it.symbol} ${it.name}`);
}

getTradeMetas 获取交易元数据

qc.getTradeMetas(req: TradeMetasRequest): Promise<TradeMeta[]>

说明

获取合约的交易元数据(最小变动价位、每手股数、是否可融可空等)。wire 方法 quote_stock_trade

请求 TradeMetasRequest

参数名类型是否必填描述
symbolsstring[]股票代码列表
langstring语言

返回

Promise<TradeMeta[]>symbol / lotSize / minTick / spreadScale / shortableFlag / marginableFlag)。

示例

const metas = await qc.getTradeMetas({ symbols: ['AAPL', '00700'] });
for (const m of metas) {
  console.log(`${m.symbol} lot=${m.lotSize} minTick=${m.minTick}`);
}

getStockDelayBriefs 获取延迟行情

qc.getStockDelayBriefs(req: StockDelayBriefsRequest): Promise<Brief[]>

说明

获取延迟行情快照(结构与实时 getBrief 相同)。wire 方法 quote_delay

请求 StockDelayBriefsRequest

参数名类型是否必填描述
symbolsstring[]股票代码列表
secTypestring证券类型
langstring语言

示例

const briefs = await qc.getStockDelayBriefs({ symbols: ['AAPL'] });

getBars 获取 K 线(完整版)

qc.getBars(req: BarsRequest): Promise<Kline[]>

说明

getKline 更完整的 K 线接口,支持时间范围、分页、前复权/后复权、盘前盘后等。

字段命名约定beginTime / endTime毫秒时间戳(wire begin_time / end_time)。

请求 BarsRequest

参数名类型是否必填描述
symbolsstring[]股票代码列表
periodstring周期
rightstring复权类型:'br' / 'nr'
beginTimenumber起始毫秒时间戳
endTimenumber结束毫秒时间戳
limitnumber返回条数上限
beginIndexnumber起始索引(与时间范围二选一)
endIndexnumber结束索引
pageTokenstring分页 token
tradeSessionstring交易时段
datestring指定日期
withFundamentalboolean是否带基本面
secTypestring证券类型
langstring语言

返回

Promise<Kline[]>(结构同 getKline)。

示例

const bars = await qc.getBars({
  symbols: ['AAPL'],
  period: 'day',
  limit: 100,
});
console.log(bars[0]?.items.length);

getBarsByPage 客户端分页 K 线

qc.getBarsByPage(req: BarsByPageRequest): Promise<KlineItem[]>

说明

客户端分页包装:循环调用 getBars 直到拉取到指定数量的 K 线,按时间升序返回合并结果。

请求 BarsByPageRequest

参数名类型是否必填描述
symbolstring股票代码(单个)
periodstring周期
beginTimenumber起始毫秒时间戳
endTimenumber结束毫秒时间戳
totalSizenumber想获取的总条数,默认 1000
pageSizenumber每页条数,默认 200
rightstring复权
tradeSessionstring交易时段
langstring语言

返回

Promise<KlineItem[]>(已扁平化)。

示例

const items = await qc.getBarsByPage({
  symbol: 'AAPL',
  period: 'day',
  totalSize: 500,
  pageSize: 200,
});
console.log(`got ${items.length} bars`);

getTimelineHistory 获取历史分时

qc.getTimelineHistory(req: TimelineHistoryRequest): Promise<Timeline[]>

说明

获取历史某一交易日的分时数据。wire 方法 history_timeline

请求 TimelineHistoryRequest

参数名类型是否必填描述
symbolsstring[]股票代码列表
datestring日期,格式 'yyyy-MM-dd'
rightstring复权
tradeSessionstring交易时段
langstring语言

返回

Promise<Timeline[]>(结构同 getTimeline)。

示例

const tl = await qc.getTimelineHistory({
  symbols: ['AAPL'],
  date: '2025-09-01',
});

getTradeRank 获取成交排行

qc.getTradeRank(req: TradeRankRequest): Promise<TradeRankItem[]>

说明

查询指定市场的成交额/成交量排行榜。wire 方法 trade_rank

请求 TradeRankRequest

参数名类型是否必填描述
marketstring市场
langstring语言

返回

Promise<TradeRankItem[]>symbol / name / latestPr / change / changeRate / volume / amount)。

示例

const rank = await qc.getTradeRank({ market: 'HK' });
for (const r of rank.slice(0, 10)) {
  console.log(`${r.symbol} ${r.name} amount=${r.amount}`);
}

getShortInterest 获取空头利益

qc.getShortInterest(req: ShortInterestRequest): Promise<ShortInterest[]>

说明

获取美股空头持仓(short interest)数据。wire 方法 quote_shortable_stocks

请求 ShortInterestRequest

参数名类型是否必填描述
symbolsstring[]股票代码列表
langstring语言

返回

Promise<ShortInterest[]>symbol / settlementDate / shortInterest / avgDailyVolume / daysToCover / percentOfFloat / shortInterestPrevious / percentChange)。

示例

const si = await qc.getShortInterest({ symbols: ['TSLA'] });

getStockBroker 获取港股经纪商队列

qc.getStockBroker(req: StockBrokerRequest): Promise<StockBroker | undefined>

说明

获取港股指定股票的经纪商盘口队列(需港股 Level2 牌照)。wire 方法 stock_broker

请求 StockBrokerRequest

参数名类型是否必填描述
symbolstring股票代码(单个)
limitnumber每档最大经纪商数
secTypestring证券类型
langstring语言

返回

Promise<StockBroker | undefined>symbol / levelAskList / levelBidList;每档 StockBrokerItemlevel / price / brokers: BrokerDetail[])。

示例

const sb = await qc.getStockBroker({ symbol: '00700', limit: 40 });
console.log(`askLevels=${sb?.levelAskList?.length} bidLevels=${sb?.levelBidList?.length}`);

getStockIndustry 获取股票所属行业

qc.getStockIndustry(req: StockIndustryRequest): Promise<StockIndustry[]>

说明

查询股票所属的 GICS 行业分类。wire 方法 stock_industry

请求 StockIndustryRequest

参数名类型是否必填描述
symbolstring股票代码
marketstring市场
secTypestring证券类型
langstring语言

返回

Promise<StockIndustry[]>symbol / gSector / gGroup / gInd / gSubInd / level)。

示例

const si = await qc.getStockIndustry({ symbol: 'AAPL', market: 'US' });

getQuotePermission 查询行情权限(带日期范围)

qc.getQuotePermission(req: QuotePermissionRequest): Promise<QuotePermission[]>

说明

查询账户行情权限。与无参的 grabQuotePermission 不同:此方法支持传入日期范围,返回历史有效的权限明细。wire 方法 get_quote_permission

请求 QuotePermissionRequest

参数名类型是否必填描述
beginDatestring起始日期 'yyyyMMdd'
endDatestring结束日期 'yyyyMMdd'
langstring语言

示例

const perms = await qc.getQuotePermission({
  beginDate: '20250101',
  endDate: '20251231',
});

getKlineQuota 查询 K 线调用配额

qc.getKlineQuota(req: KlineQuotaRequest): Promise<KlineQuota[]>

说明

查询 K 线接口剩余调用配额。wire 方法 kline_quota

请求 KlineQuotaRequest

参数名类型是否必填描述
withDetailsboolean是否返回每个 symbol 的明细
langstring语言

返回

Promise<KlineQuota[]>method / used / quota / detail;每个 KlineQuotaDetailsymbol / market / usedBars / quotaBars / lastAccess)。

示例

const quota = await qc.getKlineQuota({ withDetails: true });
for (const q of quota) {
  console.log(`${q.method} used=${q.used}/${q.quota}`);
}

期权行情 (v0.4.0 新增)

所有期权扩展方法均复用 OptionQueryItem 嵌套结构用于精确定位单份期权合约:

interface OptionQueryItem {
  symbol?: string;
  expiry?: number;   // ms timestamp
  strike?: string;
  right?: string;    // 'CALL' / 'PUT'
  period?: string;   // 仅 K 线 / 分时用到
  beginTime?: number;
  endTime?: number;
  limit?: number;
  beginIndex?: number;
  endIndex?: number;
  pageToken?: string;
}

getOptionBars 获取期权 K 线

qc.getOptionBars(req: OptionBarsRequest): Promise<Kline[]>

请求 OptionBarsRequestoptionQuery: OptionQueryItem[] / market / lang。wire 方法 option_kline(v2.0)。

示例

const bars = await qc.getOptionBars({
  optionQuery: [{
    symbol: 'AAPL', expiry: 1750291200000, strike: '200', right: 'CALL', period: 'day',
  }],
  market: 'US',
});

getOptionTradeTicks 获取期权逐笔

qc.getOptionTradeTicks(req: OptionTradeTicksRequest): Promise<TradeTick[]>

请求contracts: OptionQueryItem[] / lang。wire 方法 option_trade_tick

示例

const ticks = await qc.getOptionTradeTicks({
  contracts: [{ symbol: 'AAPL', expiry: 1750291200000, strike: '200', right: 'CALL' }],
});

getOptionTimeline 获取期权分时

qc.getOptionTimeline(req: OptionTimelineRequest): Promise<Timeline[]>

请求optionQuery: OptionQueryItem[] / market / lang。wire 方法 option_timeline


getOptionDepth 获取期权盘口

qc.getOptionDepth(req: OptionDepthRequest): Promise<Depth[]>

请求optionBasic: OptionQueryItem[] / market / lang。wire 方法 option_depth


getOptionSymbols 获取期权代码列表

qc.getOptionSymbols(req: OptionSymbolsRequest): Promise<OptionSymbol[]>

请求 OptionSymbolsRequestmarket / lang。wire 方法 option_symbol

返回

Promise<OptionSymbol[]>symbol / market / nameCN / nameEN)。

示例

const syms = await qc.getOptionSymbols({ market: 'US' });

getOptionAnalysis 获取期权波动率分析

qc.getOptionAnalysis(req: OptionAnalysisRequest): Promise<OptionAnalysis[]>

请求 OptionAnalysisRequest

参数名类型是否必填描述
symbolsstring[]标的代码
marketstring市场
periodstring历史波动率周期
requireVolatilityListboolean是否返回历史波动率时序
langstring语言

返回

Promise<OptionAnalysis[]>symbol / historicalVol30D / historicalVol60D / historicalVol90D / impliedVol / volatilityList)。

示例

const res = await qc.getOptionAnalysis({
  symbols: ['AAPL'],
  market: 'US',
});

期货行情 (v0.4.0 新增)

getFutureContract 按合约代码查合约

qc.getFutureContract(req: FutureContractSingleRequest): Promise<FutureContractInfo[]>

请求 FutureContractSingleRequestcontractCode / type / lang。wire 方法 future_contract_by_contract_code

示例

const cs = await qc.getFutureContract({ contractCode: 'CL2609' });

getAllFutureContracts 按品种查全部合约

qc.getAllFutureContracts(req: AllFutureContractsRequest): Promise<FutureContractInfo[]>

请求 AllFutureContractsRequesttype / exchange / lang。wire 方法 future_contracts

示例

const cs = await qc.getAllFutureContracts({ type: 'CL' });

getCurrentFutureContract 查当前主力合约

qc.getCurrentFutureContract(req: FutureContractSingleRequest): Promise<FutureContractInfo | undefined>

示例

const c = await qc.getCurrentFutureContract({ type: 'CL' });
console.log(`current main: ${c?.contractCode}`);

getFutureContinuousContracts 连续合约

qc.getFutureContinuousContracts(req: FutureContinuousContractsRequest): Promise<FutureContractInfo[]>

请求type / lang。wire 方法 future_continuous_contracts


getFutureHistoryMainContract 主力合约历史

qc.getFutureHistoryMainContract(req: FutureHistoryMainContractRequest): Promise<FutureMainContractHistory[]>

请求 FutureHistoryMainContractRequest

参数名类型是否必填描述
contractCodesstring[]合约代码列表
beginTimenumber起始毫秒时间戳
endTimenumber结束毫秒时间戳
langstring语言

返回

Promise<FutureMainContractHistory[]>contractCode / symbol / beginDate / endDate)。


getFutureBars 获取期货 K 线(索引分页版)

qc.getFutureBars(req: FutureBarsRequest): Promise<FutureKline[]>

请求 FutureBarsRequest

参数名类型是否必填描述
contractCodesstring[]合约代码列表
contractCodestring单个合约代码
periodstring周期
beginTimenumber起始毫秒时间戳
endTimenumber结束毫秒时间戳
beginIndex / endIndexnumber索引分页
limitnumber返回条数上限
pageTokenstring分页 token
langstring语言

示例

const bars = await qc.getFutureBars({
  contractCodes: ['CL2609'],
  period: 'day',
  limit: 200,
});

getFutureBarsByPage 客户端分页期货 K 线

qc.getFutureBarsByPage(req: FutureBarsByPageRequest): Promise<FutureKlineItem[]>

请求 FutureBarsByPageRequest

参数名类型是否必填描述
contractCodestring合约代码
periodstring周期
beginTimenumber起始毫秒时间戳
endTimenumber结束毫秒时间戳
totalSizenumber想获取的总条数
pageSizenumber每页条数
langstring语言

getFutureTradeTicks 获取期货逐笔

qc.getFutureTradeTicks(req: FutureTradeTicksRequest): Promise<FutureTradeTickItem[]>

请求 FutureTradeTicksRequest

参数名类型是否必填描述
contractCodestring合约代码
beginIndex / endIndexnumber索引分页
limitnumber返回条数上限
langstring语言

返回

Promise<FutureTradeTickItem[]>contractCode / index / time / price / volume / direction)。wire 方法 future_tick(v3.0)。


getFutureDepth 获取期货盘口

qc.getFutureDepth(req: FutureDepthRequest): Promise<FutureDepth[]>

请求contractCodes: string[] / lang。wire 方法 future_depth

返回

Promise<FutureDepth[]>contractCode / timestamp / asks / bids)。


getFutureTradingTimes 获取期货交易时段

qc.getFutureTradingTimes(req: FutureTradingTimesRequest): Promise<FutureTradingTime | undefined>

请求 FutureTradingTimesRequest

参数名类型是否必填描述
contractCodestring合约代码
tradingDatestring交易日
langstring语言

返回

Promise<FutureTradingTime | undefined>contractCode / bizDate / zone / tradingTimes: FutureTradingSegment[];每段含 start / end / type)。wire 方法 future_trading_date


基金 (v0.4.0 新增)

getFundSymbols 获取基金代码列表

qc.getFundSymbols(req: FundSymbolsRequest): Promise<string[]>

请求lang。wire 方法 fund_all_symbols


getFundContracts 获取基金合约资料

qc.getFundContracts(req: FundContractsRequest): Promise<FundContractInfo[]>

请求symbols: string[] / lang。wire 方法 fund_contracts

返回

Promise<FundContractInfo[]>symbol / name / currency / fundType / inception / netAssetVal / expenseRatio)。


getFundQuote 获取基金实时净值

qc.getFundQuote(req: FundQuoteRequest): Promise<FundQuote[]>

请求symbols: string[] / lang。wire 方法 fund_quote

返回

Promise<FundQuote[]>symbol / latestNav / change / changeRate / date)。

示例

const q = await qc.getFundQuote({ symbols: ['SPY'] });

getFundHistoryQuote 获取基金历史净值

qc.getFundHistoryQuote(req: FundHistoryQuoteRequest): Promise<FundHistoryQuote[]>

请求 FundHistoryQuoteRequest

参数名类型是否必填描述
symbolsstring[]基金代码列表
beginTimenumber起始毫秒时间戳
endTimenumber结束毫秒时间戳
limitnumber返回条数上限
langstring语言

返回

Promise<FundHistoryQuote[]>symbol / date / nav)。wire 方法 fund_history_quote


窝轮 (v0.4.0 新增)

getWarrantBriefs 获取窝轮报价

qc.getWarrantBriefs(req: WarrantBriefsRequest): Promise<WarrantBrief[]>

请求symbols: string[] / lang。wire 方法 warrant_briefs

返回

Promise<WarrantBrief[]>symbol / name / latestPrice / change / changeRate / volume / amount / underlying / issuer / expiryDate / strikePrice / warrantType)。


getWarrantFilter 窝轮筛选

qc.getWarrantFilter(req: WarrantFilterRequest): Promise<WarrantFilterResult | undefined>

请求 WarrantFilterRequest

参数名类型是否必填描述
symbolstring标的代码
page / pageSizenumber分页
sortFieldName / sortDirstring排序
issuerNamestring发行商过滤
expireYmstring到期年月过滤('yyyyMM'
langstring语言

返回

Promise<WarrantFilterResult | undefined>total / items / pageSize / page)。wire 方法 warrant_filter


行业 (v0.4.0 新增)

getIndustryList 获取行业列表

qc.getIndustryList(req: IndustryListRequest): Promise<IndustryItem[]>

请求 IndustryListRequestindustryLevel / lang。wire 方法 industry_list

返回

Promise<IndustryItem[]>id / name / level)。


getIndustryStocks 获取行业下股票

qc.getIndustryStocks(req: IndustryStocksRequest): Promise<IndustryStock[]>

请求 IndustryStocksRequestindustryId / market / lang。wire 方法 industry_stock_list

返回

Promise<IndustryStock[]>symbol / name / industryId / change / changeRate)。


财务与日历 (v0.4.0 新增)

getFinancialCurrency 获取财报币种

qc.getFinancialCurrency(req: FinancialCurrencyRequest): Promise<FinancialCurrency[]>

请求symbols: string[] / market / lang。wire 方法 financial_currency

返回

Promise<FinancialCurrency[]>symbol / market / currency)。


getFinancialExchangeRate 获取汇率

qc.getFinancialExchangeRate(req: FinancialExchangeRateRequest): Promise<ExchangeRate[]>

请求 FinancialExchangeRateRequest

参数名类型是否必填描述
currencyListstring[]币种列表,如 ['USD', 'HKD']
beginDatestring起始日期 'yyyyMMdd'
endDatestring结束日期 'yyyyMMdd'
timezonestring时区
langstring语言

注意beginDate / endDate 的格式是 'yyyyMMdd'(没有短横线),与 K 线的毫秒时间戳不同。

返回

Promise<ExchangeRate[]>currency / date / rate / baseCurrency)。wire 方法 financial_exchange_rate

示例

const rates = await qc.getFinancialExchangeRate({
  currencyList: ['HKD', 'EUR'],
  beginDate: '20250101',
  endDate: '20250131',
});

getTradingCalendar 获取交易日历

qc.getTradingCalendar(req: TradingCalendarRequest): Promise<TradingCalendarItem[]>

请求 TradingCalendarRequest

参数名类型是否必填描述
marketstring市场
beginDatestring起始日期 'yyyy-MM-dd'
endDatestring结束日期 'yyyy-MM-dd'
langstring语言

返回

Promise<TradingCalendarItem[]>market / date / isTrading / sessionType)。wire 方法 trading_calendar

示例

const cal = await qc.getTradingCalendar({
  market: 'US',
  beginDate: '2025-01-01',
  endDate: '2025-12-31',
});