Options

Example context

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

const config = createClientConfig();
const quoteClient = QuoteClient.fromConfig(config);

getOptionExpiration

Signature

async getOptionExpiration(symbols: string[], market?: string): Promise<OptionExpiration[]>

Purpose

Gets option expiration.

Parameters, defaults, and constraints

ParameterTypeRequiredSDK defaultConstraints
symbolsstring[]YesNoneNo client-side validation is declared.
marketstringNoNoneNo client-side validation is declared.

Returns

Promise<OptionExpiration[]>

FieldTypeDescription
symbolstringSymbol code
optionSymbolsstring[]Option symbols list
datesstring[]Expiration date list
timestampsnumber[]Expiration timestamps
periodsstring[]Periods list
countsnumber[]Counts per expiration

Type-checked example

const result = await quoteClient.getOptionExpiration(['AAPL'], 'US');
console.log(result);

Response example

[
  {
    "symbol": "string",
    "optionSymbols": [
      "string"
    ],
    "dates": [
      "string"
    ],
    "timestamps": [
      0
    ],
    "periods": [
      "string"
    ],
    "counts": [
      0
    ]
  }
]

Special option symbols for indices

  • S&P 500 (.SPX): monthly options use SPX; weekly and quarterly options use SPXW.
  • Nasdaq-100: monthly options use NDX; weekly options use NDXP.
  • VIX: monthly options use VIX; weekly options use VIXW.

getOptionChain

Signature

async getOptionChain(items: Array<[string, string]>, timezone?: string, returnGreekValue?: boolean, optionFilter?: OptionChainFilter): Promise<OptionChain[]>

Purpose

Gets option chain.

Parameters, defaults, and constraints

ParameterTypeRequiredSDK defaultConstraints
itemsArray<[string, string]>YesNoneNo client-side validation is declared.
timezonestringNoNoneNo client-side validation is declared.
returnGreekValuebooleanNoNoneNo client-side validation is declared.
optionFilterOptionChainFilterNoNoneNo client-side validation is declared.
optionFilter.inTheMoneyboolean | undefinedNoNoneNo client-side validation is declared.
optionFilter.impliedVolatilityRange | undefinedNoNoneNo client-side validation is declared.
optionFilter.openInterestRange | undefinedNoNoneNo client-side validation is declared.
optionFilter.greeksOptionChainFilterGreeks | undefinedNoNoneNo client-side validation is declared.

Returns

Promise<OptionChain[]>

FieldTypeDescription
symbolstringSymbol code
expirynumberExpiration date
itemsOptionChainRow[]Data items array

Type-checked example

const result = await quoteClient.getOptionChain([], 'America/New_York', false, { inTheMoney: true });
console.log(result);

Response example

[
  {
    "symbol": "string",
    "expiry": 0,
    "items": [
      "OptionChainRow"
    ]
  }
]

getOptionKline

Signature

async getOptionKline(identifiers: string[], period: string, beginTime: number = -1, endTime: number = -1, timezone?: string, limit?: number, sortDir?: string): Promise<Kline[]>

Purpose

Gets option kline.

Parameters, defaults, and constraints

ParameterTypeRequiredSDK defaultConstraints
identifiersstring[]YesNoneNo client-side validation is declared.
periodstringYesNoneNo client-side validation is declared.
beginTimenumberNo-1No client-side validation is declared.
endTimenumberNo-1No client-side validation is declared.
timezonestringNoNoneNo client-side validation is declared.
limitnumberNoNoneNo client-side validation is declared.
sortDirstringNoNoneNo client-side validation is declared.

Returns

Promise<Kline[]>

FieldTypeDescription
symbolstringSymbol code
periodstringK-line period
nextPageTokenstringNext page token
itemsKlineItem[]Data items array

Type-checked example

const result = await quoteClient.getOptionKline(['AAPL  260619C00150000'], 'day', -1, -1, 'America/New_York', 1, 'value');
console.log(result);

Response example

[
  {
    "symbol": "string",
    "period": "string",
    "nextPageToken": "string",
    "items": [
      "KlineItem"
    ]
  }
]

getOptionQuote

Signature

async getOptionQuote(identifiers: string[], timezone?: string): Promise<Brief[]>

Purpose

Gets option quote.

Parameters, defaults, and constraints

ParameterTypeRequiredSDK defaultConstraints
identifiersstring[]YesNoneNo client-side validation is declared.
timezonestringNoNoneNo client-side validation is declared.

Returns

Promise<Brief[]>

FieldTypeDescription
symbolstringSymbol code
opennumberOpen price
highnumberHigh price
lownumberLow price
closenumberClose price
preClosenumberPrevious close price
latestPricenumberLatest price
latestTimenumberLatest trade time (ms timestamp)
askPricenumberAsk price (best offer)
askSizenumberAsk size
bidPricenumberBid price (best bid)
bidSizenumberBid size
volumenumberTrading volume
statusstringTrading status
adjPreClosenumberAdjusted previous close
changenumberPrice change
changeRatenumberPrice change rate
amplitudenumberAmplitude
expirystringExpiration date
strikestringStrike price
rightstringOption right (CALL/PUT)
multipliernumberContract multiplier
openInterestnumberOpen interest

Type-checked example

const result = await quoteClient.getOptionQuote(['AAPL  260619C00150000'], 'America/New_York');
console.log(result);

Response example

[
  {
    "symbol": "string",
    "open": 0,
    "high": 0,
    "low": 0,
    "close": 0,
    "preClose": 0,
    "latestPrice": 0,
    "latestTime": 0,
    "askPrice": 0,
    "askSize": 0,
    "bidPrice": 0,
    "bidSize": 0,
    "volume": 0,
    "status": "string",
    "adjPreClose": 0,
    "change": 0,
    "changeRate": 0,
    "amplitude": 0,
    "expiry": "string",
    "strike": "string",
    "right": "string",
    "multiplier": 0,
    "openInterest": 0
  }
]

getOptionTradeTicks

Signature

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

Purpose

Gets option trade ticks.

Parameters, defaults, and constraints

ParameterTypeRequiredSDK defaultConstraints
reqOptionTradeTicksRequestYesNoneNo client-side validation is declared.
req.contractsOptionQueryItem[] | undefinedNoNoneNo client-side validation is declared.
req.langstring | undefinedNoNoneNo client-side validation is declared.

Returns

Promise<TradeTick[]>

FieldTypeDescription
symbolstringSymbol code
beginIndexnumberBegin index
endIndexnumberEnd index
itemsTradeTickItem[]Data items array

Type-checked example

const result = await quoteClient.getOptionTradeTicks({ contracts: [{ symbol: 'AAPL', expiry: Date.UTC(2026, 5, 19), strike: '150', right: 'CALL' }] });
console.log(result);

Response example

[
  {
    "symbol": "string",
    "beginIndex": 0,
    "endIndex": 0,
    "items": [
      "TradeTickItem"
    ]
  }
]

getOptionTimeline

Signature

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

Purpose

Gets option timeline.

Parameters, defaults, and constraints

ParameterTypeRequiredSDK defaultConstraints
reqOptionTimelineRequestYesNoneNo client-side validation is declared.
req.optionQueryOptionQueryItem[] | undefinedNoNoneNo client-side validation is declared.
req.marketstring | undefinedNoNoneNo client-side validation is declared.
req.langstring | undefinedNoNoneNo client-side validation is declared.

Returns

Promise<Timeline[]>

FieldTypeDescription
symbolstringSymbol code
periodstringK-line period
preClosenumberPrevious close price
intradayTimelineBucketIntraday timeline data
preHoursTimelineBucketPre-market timeline data
afterHoursTimelineBucketAfter-hours timeline data

Type-checked example

const result = await quoteClient.getOptionTimeline({ optionQuery: [{ symbol: 'AAPL', expiry: Date.UTC(2026, 5, 19), strike: '150', right: 'CALL' }], market: 'US' });
console.log(result);

Response example

[
  {
    "symbol": "string",
    "period": "string",
    "preClose": 0,
    "intraday": {
      "items": [
        "TimelineItem"
      ]
    },
    "preHours": {
      "items": [
        "TimelineItem"
      ]
    },
    "afterHours": {
      "items": [
        "TimelineItem"
      ]
    }
  }
]

getOptionDepth

Signature

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

Purpose

Gets option depth.

Parameters, defaults, and constraints

ParameterTypeRequiredSDK defaultConstraints
reqOptionDepthRequestYesNoneNo client-side validation is declared.
req.optionBasicOptionQueryItem[] | undefinedNoNoneNo client-side validation is declared.
req.marketstring | undefinedNoNoneNo client-side validation is declared.
req.langstring | undefinedNoNoneNo client-side validation is declared.

Returns

Promise<Depth[]>

FieldTypeDescription
symbolstringSymbol code
asksDepthLevel[]Ask order queue
bidsDepthLevel[]Bid order queue

Type-checked example

const result = await quoteClient.getOptionDepth({ optionBasic: [{ symbol: 'AAPL', expiry: Date.UTC(2026, 5, 19), strike: '150', right: 'CALL' }], market: 'US' });
console.log(result);

Response example

[
  {
    "symbol": "string",
    "asks": [
      "DepthLevel"
    ],
    "bids": [
      "DepthLevel"
    ]
  }
]

getOptionSymbols

Signature

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

Purpose

Gets option symbols.

Parameters, defaults, and constraints

ParameterTypeRequiredSDK defaultConstraints
reqOptionSymbolsRequestYesNoneNo client-side validation is declared.
req.marketstring | undefinedNoNoneNo client-side validation is declared.
req.langstring | undefinedNoNoneNo client-side validation is declared.

Returns

Promise<OptionSymbol[]>

FieldTypeDescription
symbolstringSymbol code
marketstringMarket
nameCNstringChinese name
nameENstringEnglish name

Type-checked example

const result = await quoteClient.getOptionSymbols({ market: 'US' });
console.log(result);

Response example

[
  {
    "symbol": "string",
    "market": "string",
    "nameCN": "string",
    "nameEN": "string"
  }
]

getOptionAnalysis

Signature

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

Purpose

Gets option analysis.

Parameters, defaults, and constraints

ParameterTypeRequiredSDK defaultConstraints
reqOptionAnalysisRequestYesNoneNo client-side validation is declared.
req.symbolsstring[] | undefinedNoNoneNo client-side validation is declared.
req.marketstring | undefinedNoNoneNo client-side validation is declared.
req.periodstring | undefinedNoNoneNo client-side validation is declared.
req.requireVolatilityListboolean | undefinedNoNoneNo client-side validation is declared.
req.langstring | undefinedNoNoneNo client-side validation is declared.

Returns

Promise<OptionAnalysis[]>

FieldTypeDescription
symbolstringSymbol code
impliedVol30Daysnumber30-day implied volatility
hisVolatilitynumberHistorical volatility
ivHisVRationumberIV/HV ratio
callPutRationumberCall/put ratio
impliedVolMetricImpliedVolMetricImplied volatility metric
volatilityListOptionVolatilityPoint[]Volatility list

Type-checked example

const result = await quoteClient.getOptionAnalysis({ symbols: ['AAPL'], market: 'US', period: '26week' });
console.log(result);

Response example

[
  {
    "symbol": "string",
    "impliedVol30Days": 0,
    "hisVolatility": 0,
    "ivHisVRatio": 0,
    "callPutRatio": 0,
    "impliedVolMetric": {
      "period": "string",
      "percentile": 0,
      "rank": 0
    },
    "volatilityList": [
      "OptionVolatilityPoint"
    ]
  }
]

Did this page help you?