Skip to content

stock_history_trade

Retrieve every trade execution for a stock on a given date. Returns tick-level data with price, size, exchange, and condition codes.

FreeValueStandardPro

Code Example

rust
let trades: Vec<TradeTick> = tdx.stock_history_trade("AAPL", "20240315").await?;
println!("{} trades", trades.len());

// Stream variant for large responses
tdx.stock_history_trade_stream("AAPL", "20240315", |chunk| {
    println!("Got {} trades in this chunk", chunk.len());
    Ok(())
}).await?;
python
trades = tdx.stock_history_trade("AAPL", "20240315")
print(f"{len(trades)} trades")
go
trades, err := client.StockHistoryTrade("AAPL", "20240315")
if err != nil {
    log.Fatal(err)
}
fmt.Printf("%d trades\n", len(trades))
cpp
auto trades = client.stock_history_trade("AAPL", "20240315");
std::cout << trades.size() << " trades" << std::endl;

Parameters

symbolstringrequired
Ticker symbol
datestringrequired
Date in YYYYMMDD format
start_timestringoptional
Start time as milliseconds from midnight ET
end_timestringoptional
End time as milliseconds from midnight ET
venuestringoptional
Data venue filter

Response Fields (TradeTick)

ms_of_dayi32
Milliseconds since midnight ET
sequencei32
Sequence number
ext_condition1 through ext_condition4i32
Extended trade condition codes
conditioni32
Trade condition code (encodes SIP condition flags such as regular sale, odd lot, intermarket sweep)
sizei32
Trade size in shares
exchangei32
Exchange code
pricei32
Fixed-point price. Use get_price() for decoded f64.
condition_flagsi32
Condition flags bitmap
price_flagsi32
Price flags bitmap
volume_typei32
0 = incremental volume, 1 = cumulative volume
records_backi32
Records back count
price_typei32
Decimal type for price decoding
datei32
Date as YYYYMMDD integer

Helper methods: get_price(), is_cancelled(), regular_trading_hours(), is_seller(), is_incremental_volume()

Notes

  • A single day of AAPL trades can exceed 100,000 rows. Use the Rust _stream variant for large responses to avoid holding everything in memory.
  • Use start_time and end_time to limit to regular trading hours (9:30 AM = 34200000, 4:00 PM = 57600000).
  • The condition and condition_flags fields encode SIP trade condition codes (e.g., regular sale, odd lot, intermarket sweep).

Released under the GPL-3.0-or-later License.