#market #finance #quote #historical #serde

paft-market

Market data models and requests for paft

12 releases (6 breaking)

Uses new Rust 2024

0.7.1 Oct 31, 2025
0.7.0 Oct 28, 2025
0.6.0 Oct 21, 2025
0.5.2 Oct 19, 2025
0.1.0 Sep 15, 2025

#2530 in Data structures

Download history 232/week @ 2025-10-21 185/week @ 2025-10-28 23/week @ 2025-11-04 20/week @ 2025-11-11 29/week @ 2025-11-18 35/week @ 2025-11-25 13/week @ 2025-12-02 25/week @ 2025-12-09 83/week @ 2025-12-16 100/week @ 2025-12-23 92/week @ 2025-12-30 66/week @ 2026-01-06 56/week @ 2026-01-13 60/week @ 2026-01-20 102/week @ 2026-01-27 293/week @ 2026-02-03

527 downloads per month
Used in 9 crates (2 directly)

MIT license

205KB
3.5K SLoC

paft-market

Market data models and request builders for the paft ecosystem.

Crates.io Docs.rs

  • Unified market models: Quote, Candle, HistoryResponse, OptionChain, NewsArticle
  • Validated builders: HistoryRequest, SearchRequest
  • Canonical, serde-stable string forms; optional DataFrame export
  • Integrates with paft-domain and paft-money

Install

Prefer the facade crate for most applications:

[dependencies]
paft = "0.7.1"

Advanced (direct dependency, minimal):

[dependencies]
paft-market = { version = "0.7.1", default-features = false }

Alternate decimal backend:

[dependencies]
paft-market = { version = "0.7.1", default-features = false, features = ["bigdecimal"] }

With DataFrame integration:

[dependencies]
paft-market = { version = "0.7.1", default-features = false, features = ["dataframe"] }

Features

  • bigdecimal: change money backend from rust_decimal to bigdecimal via paft-money
  • dataframe: Polars integration (ToDataFrame/ToDataFrameVec)

Quickstart

use paft_market::{HistoryRequest, Interval, Range, SearchRequest};

// 1 month of daily candles
let req = HistoryRequest::try_from_range(Range::M1, Interval::D1).unwrap();
assert_eq!(req.interval(), Interval::D1);

// Validated instrument search
let search = SearchRequest::new("AAPL").unwrap();
assert_eq!(search.query(), "AAPL");

Dependencies

~11–34MB
~437K SLoC