Skip to content

Commit 1198da8

Browse files
committed
docs(option/history): align greeks family with upstream
Apply the same parity sweep to the 11 greeks endpoints: option_history_greeks_{all, eod, implied_volatility, first_order, second_order, third_order} and option_history_trade_greeks_{all, implied_volatility, first_order, second_order, third_order}. For each: - strike / right marked optional with upstream defaults (`*` / `both`) - start_time / end_time documented as HH:MM:SS.SSS with the upstream 09:30:00 / 16:00:00 defaults - expiration accepts YYYY-MM-DD and YYYYMMDD plus `*` - interval (where applicable) marked optional, default `1s`, enum extended to include `tick` and `10ms` - Greeks inputs (annual_dividend, rate_type with full Treasury enum, rate_value, version) documented with their upstream defaults and allowed values - start_date / end_date listed as builder optionals on the intraday greeks endpoints; greeks_eod keeps start_date / end_date required per upstream - underlyer_use_nbbo (greeks_eod only) documents its `false` default Multi-day one-month / must-specify-expiration ceiling called out where upstream documents it.
1 parent f5489d8 commit 1198da8

11 files changed

Lines changed: 315 additions & 145 deletions

docs-site/docs/historical/option/history/greeks-all.md

Lines changed: 31 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -49,43 +49,59 @@ for (const auto& t : data) {
4949
</div>
5050
<div class="param">
5151
<div class="param-header"><code>expiration</code><span class="param-type">string</span><span class="param-badge required">required</span></div>
52-
<div class="param-desc">Expiration date in <code>YYYYMMDD</code> format</div>
52+
<div class="param-desc">Expiration date in <code>YYYYMMDD</code> or <code>YYYY-MM-DD</code> format, or <code>"*"</code> for all expirations</div>
5353
</div>
5454
<div class="param">
55-
<div class="param-header"><code>strike</code><span class="param-type">string</span><span class="param-badge required">required</span></div>
56-
<div class="param-desc">Strike price in dollars as a string</div>
55+
<div class="param-header"><code>date</code><span class="param-type">string</span><span class="param-badge required">required</span></div>
56+
<div class="param-desc">Date in <code>YYYYMMDD</code> format</div>
5757
</div>
5858
<div class="param">
59-
<div class="param-header"><code>right</code><span class="param-type">string</span><span class="param-badge required">required</span></div>
60-
<div class="param-desc"><code>"C"</code> for call, <code>"P"</code> for put</div>
59+
<div class="param-header"><code>strike</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
60+
<div class="param-desc">Strike price in dollars (e.g. <code>"550"</code> or <code>"17.5"</code>), or <code>"*"</code> for all strikes. Default: <code>"*"</code>.</div>
6161
</div>
6262
<div class="param">
63-
<div class="param-header"><code>date</code><span class="param-type">string</span><span class="param-badge required">required</span></div>
64-
<div class="param-desc">Date in <code>YYYYMMDD</code> format</div>
63+
<div class="param-header"><code>right</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
64+
<div class="param-desc">Option side: <code>"call"</code>, <code>"put"</code>, or <code>"both"</code>. SDK also accepts <code>"C"</code>/<code>"P"</code>. Default: <code>"both"</code>.</div>
65+
</div>
66+
<div class="param">
67+
<div class="param-header"><code>interval</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
68+
<div class="param-desc">Sampling interval. Allowed values: <code>tick</code>, <code>10ms</code>, <code>100ms</code>, <code>500ms</code>, <code>1s</code>, <code>5s</code>, <code>10s</code>, <code>15s</code>, <code>30s</code>, <code>1m</code>, <code>5m</code>, <code>10m</code>, <code>15m</code>, <code>30m</code>, <code>1h</code>. Millisecond strings (e.g. <code>"60000"</code>) are accepted and snapped to the nearest preset. Default: <code>"1s"</code>. Sub-minute intervals are available only for single-day requests.</div>
6569
</div>
6670
<div class="param">
67-
<div class="param-header"><code>interval</code><span class="param-type">string</span><span class="param-badge required">required</span></div>
68-
<div class="param-desc">Accepts milliseconds (<code>"60000"</code>) or shorthand (<code>"1m"</code>). Valid presets: <code>100ms</code>, <code>500ms</code>, <code>1s</code>, <code>5s</code>, <code>10s</code>, <code>15s</code>, <code>30s</code>, <code>1m</code>, <code>5m</code>, <code>10m</code>, <code>15m</code>, <code>30m</code>, <code>1h</code>.</div>
71+
<div class="param-header"><code>start_time</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
72+
<div class="param-desc">Start time (inclusive) in <code>HH:MM:SS.SSS</code> ET wall-clock format. Default: <code>"09:30:00"</code>. Legacy millisecond strings are also accepted.</div>
73+
</div>
74+
<div class="param">
75+
<div class="param-header"><code>end_time</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
76+
<div class="param-desc">End time (inclusive) in <code>HH:MM:SS.SSS</code> ET wall-clock format. Default: <code>"16:00:00"</code>.</div>
6977
</div>
7078
<div class="param">
7179
<div class="param-header"><code>annual_dividend</code><span class="param-type">float</span><span class="param-badge optional">optional</span></div>
72-
<div class="param-desc">Override annual dividend</div>
80+
<div class="param-desc">Annualized expected dividend amount used in the Greeks calculation.</div>
7381
</div>
7482
<div class="param">
7583
<div class="param-header"><code>rate_type</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
76-
<div class="param-desc">Interest rate type</div>
84+
<div class="param-desc">Risk-free rate curve. Allowed values: <code>sofr</code>, <code>treasury_m1</code>, <code>treasury_m3</code>, <code>treasury_m6</code>, <code>treasury_y1</code>, <code>treasury_y2</code>, <code>treasury_y3</code>, <code>treasury_y5</code>, <code>treasury_y7</code>, <code>treasury_y10</code>, <code>treasury_y20</code>, <code>treasury_y30</code>. Default: <code>"sofr"</code>.</div>
7785
</div>
7886
<div class="param">
7987
<div class="param-header"><code>rate_value</code><span class="param-type">float</span><span class="param-badge optional">optional</span></div>
80-
<div class="param-desc">Override interest rate value</div>
88+
<div class="param-desc">Override the risk-free rate (as a percent). When set, takes precedence over <code>rate_type</code> for that call.</div>
8189
</div>
8290
<div class="param">
8391
<div class="param-header"><code>version</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
84-
<div class="param-desc">Greeks calculation version</div>
92+
<div class="param-desc">Greeks methodology selector. Allowed values: <code>latest</code> (use real time-to-expiry), <code>1</code> (fix 0DTE to 0.15 days). Default: <code>"latest"</code>.</div>
8593
</div>
8694
<div class="param">
8795
<div class="param-header"><code>strike_range</code><span class="param-type">int</span><span class="param-badge optional">optional</span></div>
88-
<div class="param-desc">Strike range filter</div>
96+
<div class="param-desc">Returns <code>n</code> strikes above and below spot price plus one ATM strike (up to <code>2n + 1</code> strikes).</div>
97+
</div>
98+
<div class="param">
99+
<div class="param-header"><code>start_date</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
100+
<div class="param-desc">Start date in <code>YYYYMMDD</code> format. Use with <code>end_date</code> for multi-day requests. The <code>date</code> argument overrides <code>start_date</code>/<code>end_date</code> when present.</div>
101+
</div>
102+
<div class="param">
103+
<div class="param-header"><code>end_date</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
104+
<div class="param-desc">End date in <code>YYYYMMDD</code> format.</div>
89105
</div>
90106
</div>
91107

@@ -194,4 +210,5 @@ for (const auto& t : data) {
194210
195211
## Notes
196212

213+
- Multi-day requests are limited to one calendar month.
197214
- If you only need a subset of Greeks, use [greeks-first-order](./greeks-first-order), [greeks-second-order](./greeks-second-order), or [greeks-third-order](./greeks-third-order) to reduce payload size.

docs-site/docs/historical/option/history/greeks-eod.md

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,55 @@ for (const auto& t : data) {
7070
</div>
7171
<div class="param">
7272
<div class="param-header"><code>expiration</code><span class="param-type">string</span><span class="param-badge required">required</span></div>
73+
<div class="param-desc">Expiration date in <code>YYYYMMDD</code> or <code>YYYY-MM-DD</code> format, or <code>"*"</code> for all expirations</div>
74+
</div>
75+
<div class="param">
76+
<div class="param-header"><code>start_date</code><span class="param-type">string</span><span class="param-badge required">required</span></div>
77+
<div class="param-desc">Start date in <code>YYYYMMDD</code> format (inclusive)</div>
78+
</div>
79+
<div class="param">
80+
<div class="param-header"><code>end_date</code><span class="param-type">string</span><span class="param-badge required">required</span></div>
81+
<div class="param-desc">End date in <code>YYYYMMDD</code> format (inclusive)</div>
82+
</div>
83+
<div class="param">
84+
<div class="param-header"><code>strike</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
85+
<div class="param-desc">Strike price in dollars (e.g. <code>"550"</code> or <code>"17.5"</code>), or <code>"*"</code> for all strikes. Default: <code>"*"</code>.</div>
86+
</div>
87+
<div class="param">
88+
<div class="param-header"><code>right</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
89+
<div class="param-desc">Option side: <code>"call"</code>, <code>"put"</code>, or <code>"both"</code>. SDK also accepts <code>"C"</code>/<code>"P"</code>. Default: <code>"both"</code>.</div>
90+
</div>
91+
<div class="param">
92+
<div class="param-header"><code>annual_dividend</code><span class="param-type">float</span><span class="param-badge optional">optional</span></div>
93+
<div class="param-desc">Annualized expected dividend amount used in the Greeks calculation.</div>
94+
</div>
95+
<div class="param">
96+
<div class="param-header"><code>rate_type</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
97+
<div class="param-desc">Risk-free rate curve. Allowed values: <code>sofr</code>, <code>treasury_m1</code>, <code>treasury_m3</code>, <code>treasury_m6</code>, <code>treasury_y1</code>, <code>treasury_y2</code>, <code>treasury_y3</code>, <code>treasury_y5</code>, <code>treasury_y7</code>, <code>treasury_y10</code>, <code>treasury_y20</code>, <code>treasury_y30</code>. Default: <code>"sofr"</code>.</div>
98+
</div>
99+
<div class="param">
100+
<div class="param-header"><code>rate_value</code><span class="param-type">float</span><span class="param-badge optional">optional</span></div>
101+
<div class="param-desc">Override the risk-free rate (as a percent). When set, takes precedence over <code>rate_type</code> for that call.</div>
102+
</div>
103+
<div class="param">
104+
<div class="param-header"><code>version</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
105+
<div class="param-desc">Greeks methodology selector. Allowed values: <code>latest</code> (use real time-to-expiry), <code>1</code> (fix 0DTE to 0.15 days). Default: <code>"latest"</code>.</div>
106+
</div>
107+
<div class="param">
108+
<div class="param-header"><code>underlyer_use_nbbo</code><span class="param-type">bool</span><span class="param-badge optional">optional</span></div>
109+
<div class="param-desc">When <code>true</code>, use the NBBO midpoint as the underlying price input; otherwise use the last trade. Default: <code>false</code>.</div>
110+
</div>
111+
<div class="param">
112+
<div class="param-header"><code>max_dte</code><span class="param-type">int</span><span class="param-badge optional">optional</span></div>
113+
<div class="param-desc">Maximum days to expiration. Filters contracts returned when <code>expiration="*"</code>.</div>
114+
</div>
115+
<div class="param">
116+
<div class="param-header"><code>strike_range</code><span class="param-type">int</span><span class="param-badge optional">optional</span></div>
117+
<div class="param-desc">Returns <code>n</code> strikes above and below spot price plus one ATM strike. Narrows a wildcard bulk query; it does not expand a pinned strike into neighbors.</div>
118+
</div>
119+
</div>
120+
<div class="param">
121+
<div class="param-header"><code>expiration</code><span class="param-type">string</span><span class="param-badge required">required</span></div>
73122
<div class="param-desc">Expiration date in <code>YYYYMMDD</code> format</div>
74123
</div>
75124
<div class="param">

docs-site/docs/historical/option/history/greeks-first-order.md

Lines changed: 30 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -51,43 +51,59 @@ Parameters are identical to [option_history_greeks_all](./greeks-all#parameters)
5151
</div>
5252
<div class="param">
5353
<div class="param-header"><code>expiration</code><span class="param-type">string</span><span class="param-badge required">required</span></div>
54-
<div class="param-desc">Expiration date in <code>YYYYMMDD</code> format</div>
54+
<div class="param-desc">Expiration date in <code>YYYYMMDD</code> or <code>YYYY-MM-DD</code> format, or <code>"*"</code> for all expirations</div>
5555
</div>
5656
<div class="param">
57-
<div class="param-header"><code>strike</code><span class="param-type">string</span><span class="param-badge required">required</span></div>
58-
<div class="param-desc">Strike price in dollars as a string</div>
57+
<div class="param-header"><code>date</code><span class="param-type">string</span><span class="param-badge required">required</span></div>
58+
<div class="param-desc">Date in <code>YYYYMMDD</code> format</div>
5959
</div>
6060
<div class="param">
61-
<div class="param-header"><code>right</code><span class="param-type">string</span><span class="param-badge required">required</span></div>
62-
<div class="param-desc"><code>"C"</code> for call, <code>"P"</code> for put</div>
61+
<div class="param-header"><code>strike</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
62+
<div class="param-desc">Strike price in dollars (e.g. <code>"550"</code> or <code>"17.5"</code>), or <code>"*"</code> for all strikes. Default: <code>"*"</code>.</div>
6363
</div>
6464
<div class="param">
65-
<div class="param-header"><code>date</code><span class="param-type">string</span><span class="param-badge required">required</span></div>
66-
<div class="param-desc">Date in <code>YYYYMMDD</code> format</div>
65+
<div class="param-header"><code>right</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
66+
<div class="param-desc">Option side: <code>"call"</code>, <code>"put"</code>, or <code>"both"</code>. SDK also accepts <code>"C"</code>/<code>"P"</code>. Default: <code>"both"</code>.</div>
67+
</div>
68+
<div class="param">
69+
<div class="param-header"><code>interval</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
70+
<div class="param-desc">Sampling interval. Allowed values: <code>tick</code>, <code>10ms</code>, <code>100ms</code>, <code>500ms</code>, <code>1s</code>, <code>5s</code>, <code>10s</code>, <code>15s</code>, <code>30s</code>, <code>1m</code>, <code>5m</code>, <code>10m</code>, <code>15m</code>, <code>30m</code>, <code>1h</code>. Millisecond strings (e.g. <code>"60000"</code>) are accepted and snapped to the nearest preset. Default: <code>"1s"</code>. Sub-minute intervals are available only for single-day requests.</div>
6771
</div>
6872
<div class="param">
69-
<div class="param-header"><code>interval</code><span class="param-type">string</span><span class="param-badge required">required</span></div>
70-
<div class="param-desc">Accepts milliseconds (<code>"60000"</code>) or shorthand (<code>"1m"</code>). Valid presets: <code>100ms</code>, <code>500ms</code>, <code>1s</code>, <code>5s</code>, <code>10s</code>, <code>15s</code>, <code>30s</code>, <code>1m</code>, <code>5m</code>, <code>10m</code>, <code>15m</code>, <code>30m</code>, <code>1h</code>.</div>
73+
<div class="param-header"><code>start_time</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
74+
<div class="param-desc">Start time (inclusive) in <code>HH:MM:SS.SSS</code> ET wall-clock format. Default: <code>"09:30:00"</code>. Legacy millisecond strings are also accepted.</div>
75+
</div>
76+
<div class="param">
77+
<div class="param-header"><code>end_time</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
78+
<div class="param-desc">End time (inclusive) in <code>HH:MM:SS.SSS</code> ET wall-clock format. Default: <code>"16:00:00"</code>.</div>
7179
</div>
7280
<div class="param">
7381
<div class="param-header"><code>annual_dividend</code><span class="param-type">float</span><span class="param-badge optional">optional</span></div>
74-
<div class="param-desc">Override annual dividend</div>
82+
<div class="param-desc">Annualized expected dividend amount used in the Greeks calculation.</div>
7583
</div>
7684
<div class="param">
7785
<div class="param-header"><code>rate_type</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
78-
<div class="param-desc">Interest rate type</div>
86+
<div class="param-desc">Risk-free rate curve. Allowed values: <code>sofr</code>, <code>treasury_m1</code>, <code>treasury_m3</code>, <code>treasury_m6</code>, <code>treasury_y1</code>, <code>treasury_y2</code>, <code>treasury_y3</code>, <code>treasury_y5</code>, <code>treasury_y7</code>, <code>treasury_y10</code>, <code>treasury_y20</code>, <code>treasury_y30</code>. Default: <code>"sofr"</code>.</div>
7987
</div>
8088
<div class="param">
8189
<div class="param-header"><code>rate_value</code><span class="param-type">float</span><span class="param-badge optional">optional</span></div>
82-
<div class="param-desc">Override interest rate value</div>
90+
<div class="param-desc">Override the risk-free rate (as a percent). When set, takes precedence over <code>rate_type</code> for that call.</div>
8391
</div>
8492
<div class="param">
8593
<div class="param-header"><code>version</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
86-
<div class="param-desc">Greeks calculation version</div>
94+
<div class="param-desc">Greeks methodology selector. Allowed values: <code>latest</code> (use real time-to-expiry), <code>1</code> (fix 0DTE to 0.15 days). Default: <code>"latest"</code>.</div>
8795
</div>
8896
<div class="param">
8997
<div class="param-header"><code>strike_range</code><span class="param-type">int</span><span class="param-badge optional">optional</span></div>
90-
<div class="param-desc">Strike range filter</div>
98+
<div class="param-desc">Returns <code>n</code> strikes above and below spot price plus one ATM strike (up to <code>2n + 1</code> strikes).</div>
99+
</div>
100+
<div class="param">
101+
<div class="param-header"><code>start_date</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
102+
<div class="param-desc">Start date in <code>YYYYMMDD</code> format. Use with <code>end_date</code> for multi-day requests. The <code>date</code> argument overrides <code>start_date</code>/<code>end_date</code> when present.</div>
103+
</div>
104+
<div class="param">
105+
<div class="param-header"><code>end_date</code><span class="param-type">string</span><span class="param-badge optional">optional</span></div>
106+
<div class="param-desc">End date in <code>YYYYMMDD</code> format.</div>
91107
</div>
92108
</div>
93109

0 commit comments

Comments
 (0)