OCC symbol guide

OCC Option Symbol Format with GLDM, SPY, QQQ & SPXW Examples

OCC and OSI option tickers look dense, but they use a predictable 21-character structure: root symbol, YYMMDD expiration date, call or put flag, and strike price stored in thousandths. This guide is the parser-focused companion to the interactive decoder, with explicit GLDM, SPY, QQQ, and SPXW examples.

SPY 260417C00500000
Root: SPYExpiration: 2026-04-17Type: CallStrike: $500.00
QQQ 260618P00480000
Root: QQQExpiration: 2026-06-18Type: PutStrike: $480.00
GLDM 260618C00065000
Root: GLDMExpiration: 2026-06-18Type: CallStrike: $65.00
SPXW 260417P06000000
Root: SPXWExpiration: 2026-04-17Type: PutStrike: $6,000.00

OCC symbol format at a glance

Use this table when you need the exact parser rule before opening the interactive decoder or contracts API.

ComponentExampleMeaning
RootGLDM Six-character root field; trim right-side padding after slicing.
Expiration260618YYMMDD date, so this example means 2026-06-18.
Call / putCContract type. C is call; P is put.
Strike00065000Eight digits stored in thousandths, so this example means 65.00.

OCC / OSI field breakdown

For parser implementation, split the string by fixed positions before trimming or converting field values. This avoids root-padding and strike-scaling errors.

FieldPositionExampleParser rule
Root1-6SPY Read six characters, then trim right-side padding spaces. Do not assume every root has three letters.
Expiration7-12260417Parse as YYMMDD, then convert to a full date such as 2026-04-17.
Call / put13CAccept C for calls and P for puts. Reject other values instead of guessing.
Strike14-2100500000Convert the final eight digits to a number and divide by 1,000, so 00500000 becomes 500.00.

Fixed-width layout

OCC option symbol format: root, YYMMDD, C/P, strike

The canonical OSI layout is fixed-width even when display systems show a compact version. Positions 1 through 6 hold the root field, positions 7 through 12 hold the expiration date in YYMMDD form, position 13 holds C or P, and positions 14 through 21 hold the strike price in thousandths. That final conversion is the parser step most likely to create incorrect strikes if it is skipped.

SPY   260417C00500000
QQQ   260618P00480000
GLDM  260618C00065000
SPXW  260417P06000000

root  = characters 1-6, trimmed after parsing
date  = YYMMDD
type  = C or P
strike = final 8 digits / 1000

How to split an OCC option symbol

Root

1 to 6 characters, often padded with spaces

Expiration

YYMMDD, for example 260417 means 2026-04-17

Type

C for call, P for put

Strike

Eight digits in thousandths, so 00500000 means 500.00

Common OCC parser mistakes

These mistakes are common when a parser is written from display examples instead of the fixed-width OSI contract.

MistakeFailure modeCorrect handling
Assuming the root is always three lettersGLDM, SPXW, adjusted roots, and padded roots are parsed incorrectly.Slice six root characters first, then trim right-side padding spaces.
Splitting on spaces before slicingCompact and padded symbols produce different field boundaries.Normalize optional prefixes, then parse fixed-width or compact forms with explicit date/type/strike positions.
Using the final eight digits as dollars00500000 becomes 500000 instead of 500.00.Convert to a number and divide by 1,000 before formatting.
Treating SPX and SPXW as equivalentSettlement and expiration workflows can be mislabeled.Preserve the root exactly and link SPXW symbols to SPXW expiration logic.

OCC symbol to API lookup mapping

After parsing the symbol, keep the compact OCC ticker as the stable identifier for contracts, snapshots, quotes, trades, and aggregates.

WorkflowInput from symbolAPI path pattern
Single contract lookupCompact OCC ticker such as O:SPY260417C00500000/v1/options/contracts/{occ_ticker}/
Latest contract stateUnderlying root plus compact OCC ticker/v1/options/snapshot/{root}/{occ_ticker}/
Chain by expirationRoot and parsed expiration date/v1/options/chain/{root}/?expiration_date=YYYY-MM-DD
Historical barsCompact OCC ticker and date window/v1/options/aggs/{occ_ticker}/1/day/...

OCC option symbol FAQ

What is the OCC option symbol format?

The OCC format is root symbol, YYMMDD expiration, C or P, then an eight digit strike price stored in thousandths.

How long is an OCC option symbol?

The fixed-width OSI form is 21 characters: a six-character root field, six date digits, one C or P flag, and eight strike digits. Compact display forms may remove root padding spaces.

Is OCC the same as OSI?

For most practical parsing work, yes. OSI is the standardized option symbology format used for OCC-style contract identifiers.

Why does GLDM have spaces in OCC examples?

The root field can be padded to six characters. Many systems display or accept the compact form, but parsers should handle optional spaces.

Related pages