# `zfin options`

Show the options chain (all expirations) for a symbol.

```
Usage: zfin options <SYMBOL> [--ntm <N>]
```

Lists every expiration with its call/put counts and auto-expands the
nearest monthly expiration into strike tables near the money (last/bid/
ask, volume, open interest, and implied volatility). The other
expirations stay collapsed to their counts. Data comes from CBOE -- no
API key required, cached one hour, 15-minute delayed during market
hours.

## Options

| Flag        | Default | Effect                                                          |
|-------------|---------|-----------------------------------------------------------------|
| `--ntm <N>` | `8`     | Show ±N strikes near the money on the auto-expanded expiration. |

`NTM` = near the money. `--ntm` only widens or narrows the strike band
on the one auto-expanded expiration; it does not expand the others.

## Example

```bash
zfin options AAPL --ntm 12
```

```
Options Chain for AAPL
========================================
Underlying: $298.62    26 expiration(s)    +/- 12 strikes NTM

2026-06-18  (108 calls, 108 puts)
...
2026-07-17  (66 calls, 66 puts)  [monthly]
    CALLS
        Strike       Last        Bid        Ask     Volume       OI       IV
    ...
```

`[monthly]` marks standard monthly expirations; the nearest one is the
table that gets expanded.

## Filtering to calls or puts

The CLI has no calls-only / puts-only flag. For that -- plus expanding
*any* expiration and changing the strike band on the fly -- use the
**Options tab** in the [interactive TUI](../tui.md): `c` and `p` toggle
all calls / all puts, and `Ctrl-1` through `Ctrl-9` set the ±N
near-the-money band.

## See also

- [`quote`](quote.md) -- the underlying's spot price.
- [`portfolio`](portfolio.md) -- option *positions* you hold (`security_type::option`).

---

[CLI command reference](index.md)
