Skip to content

EOD

FreeValueStandardPro

Fetch end-of-day stock data for a date range. Returns OHLCV + bid/ask per trading day.

Since the equity SIPs only generate a partial EOD report, Theta Data generates a national EOD report at 17:15 ET each day. created represents the datetime the report was generated and last_trade represents the datetime of the last trade. The quote in the response represents the last NBBO reported by CTA or UTP at the time of report generation. You can read more about EOD & OHLC data here. Theta Data plans to avail SIP EOD reports in the near future.

rust
pub fn stock_history_eod(
    &self,
    symbol: &str,
    start_date: &str,
    end_date: &str,
) -> StockHistoryEodBuilder<'_>

Execute with .awaitResult<Vec<EodTick>, Error>, or decode chunk-by-chunk with .stream(handler).

Example

rust
let rows = tdx.stock_history_eod("AAPL", "20250303", "20250306").await?;
for t in &rows {
    println!("date={} open={} close={} volume={}", t.date, t.open, t.close, t.volume);
}

Parameters

NameTypeRequiredDefaultDescription
symbolstringyesTicker symbol (e.g. AAPL)
start_datedateyesStart date YYYYMMDD
end_datedateyesEnd date YYYYMMDD
timeout_msintnoPer-request deadline in milliseconds. 0 means no deadline.

Response

Rows of EodTick:

FieldTypeDescription
created_ms_of_dayi32EOD report creation time (NOT a trade time), milliseconds since midnight ET.
last_trade_ms_of_dayi32Time of the day's last trade, milliseconds since midnight ET. 0 when no trades printed that day.
openf64Opening trade price. 0.0 when no trades printed that day.
highf64Highest traded price. 0.0 when no trades printed that day.
lowf64Lowest traded price. 0.0 when no trades printed that day.
closef64Closing traded price. 0.0 when no trades printed that day.
volumei64Number of contracts or shares traded.
counti64Number of trades.
bid_sizei32Last NBBO bid size.
bid_exchangei32Exchange code of the NBBO bid.
bidf64Last NBBO bid price.
bid_conditioni32Quote condition code on the bid side.
ask_sizei32Last NBBO ask size.
ask_exchangei32Exchange code of the NBBO ask.
askf64Last NBBO ask price.
ask_conditioni32Quote condition code on the ask side.
datei32Trading date as a YYYYMMDD integer.

Example response

created_ms_of_daylast_trade_ms_of_dayopenhighlowclosevolumecountbid_sizebid_exchangebidbid_conditionask_sizeask_exchangeaskask_conditiondate
6227360662271877187.03188.44183.885185.6480680243100358227185.34021185.36020240102
6218988362188586184.2185.88183.43184.255830834565412757184.05021184.1020240103
6222602062222445182183.0872180.88181.9171197269709246860181.76027181.79020240104

Decoded from a captured production response; 3 of 4 rows shown.

Released under the Apache-2.0 License.