- Created data/examples/download_ml_training_data.rs using reqwest + Databento HTTP API - Downloaded 90 days × 4 symbols (ES.FUT, NQ.FUT, ZN.FUT, 6E.FUT) - Files saved to test_data/real/databento/ml_training/ - Total: 360 files, 15 MB compressed DBN format - Used existing Rust pattern from download_nq_fut.rs - API key loaded from .env file - 100% success rate (360/360 files) - Ready for ML training benchmarks Next: Create simplified training benchmark for RTX 3050 Ti GPU measurements
135 lines
3.3 KiB
TOML
135 lines
3.3 KiB
TOML
[package]
|
|
name = "data"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
rust-version.workspace = true
|
|
authors.workspace = true
|
|
license.workspace = true
|
|
repository.workspace = true
|
|
homepage.workspace = true
|
|
documentation.workspace = true
|
|
publish.workspace = true
|
|
keywords.workspace = true
|
|
categories.workspace = true
|
|
description = "Market data ingestion and broker integration for high-frequency trading systems"
|
|
|
|
[dependencies]
|
|
# Core async and utilities
|
|
tokio.workspace = true
|
|
tokio-stream.workspace = true
|
|
tokio-util.workspace = true
|
|
futures.workspace = true
|
|
futures-util.workspace = true
|
|
futures-core = "0.3"
|
|
async-trait.workspace = true
|
|
# async-stream.workspace = true # Unused - commented out
|
|
bytes.workspace = true
|
|
|
|
# Serialization and error handling
|
|
serde.workspace = true
|
|
serde_json.workspace = true
|
|
uuid.workspace = true
|
|
anyhow.workspace = true
|
|
thiserror.workspace = true
|
|
chrono.workspace = true
|
|
tracing.workspace = true
|
|
|
|
|
|
# Network and HTTP - USE WORKSPACE DEFAULTS
|
|
reqwest.workspace = true
|
|
tokio-tungstenite = { version = "0.21", features = ["rustls-tls-webpki-roots"] }
|
|
tungstenite = "0.21"
|
|
url.workspace = true
|
|
|
|
# Market data providers - USE WORKSPACE DEFAULTS
|
|
# databento.workspace = true # REMOVED - too heavy, use direct feeds instead
|
|
|
|
# TLS support - USE WORKSPACE DEFAULTS (rustls provided by tokio-tungstenite feature)
|
|
native-tls.workspace = true
|
|
tokio-native-tls.workspace = true
|
|
# rustls = "0.23" # REMOVED - conflicts with workspace versions, use tokio-tungstenite rustls feature
|
|
webpki-roots = "0.26"
|
|
|
|
xml-rs = { workspace = true }
|
|
time = { workspace = true }
|
|
hex = { workspace = true }
|
|
md5 = { workspace = true }
|
|
|
|
|
|
# Financial types - USE WORKSPACE DEFAULTS
|
|
rust_decimal.workspace = true
|
|
rust_decimal_macros.workspace = true
|
|
num-traits = "0.2"
|
|
|
|
# Random number generation for testing
|
|
rand.workspace = true
|
|
|
|
# System information
|
|
num_cpus.workspace = true
|
|
|
|
|
|
# Configuration and utilities - USE WORKSPACE DEFAULTS
|
|
config.workspace = true
|
|
toml.workspace = true
|
|
base64.workspace = true
|
|
regex.workspace = true
|
|
|
|
|
|
# Compression and serialization - USE WORKSPACE DEFAULTS
|
|
flate2.workspace = true
|
|
zstd.workspace = true
|
|
lz4.workspace = true
|
|
bincode.workspace = true
|
|
sha2.workspace = true
|
|
hashbrown.workspace = true
|
|
smallvec.workspace = true
|
|
fastrand.workspace = true
|
|
crossbeam.workspace = true
|
|
crossbeam-channel.workspace = true
|
|
|
|
|
|
# Parquet for market data persistence and backtesting replay
|
|
parquet.workspace = true
|
|
arrow.workspace = true
|
|
|
|
# High-performance data structures - USE WORKSPACE DEFAULTS
|
|
dashmap.workspace = true
|
|
parking_lot.workspace = true
|
|
|
|
# Rate limiting and caching
|
|
governor = "0.6"
|
|
nonzero = "0.2"
|
|
redis = { workspace = true, optional = true }
|
|
|
|
|
|
# Internal workspace crates
|
|
trading_engine.workspace = true
|
|
common = { path = "../common" }
|
|
dbn = "0.42.0"
|
|
|
|
[dev-dependencies]
|
|
tokio-test = { workspace = true }
|
|
# proptest = { workspace = true } # REMOVED from workspace
|
|
criterion = { workspace = true }
|
|
hdrhistogram = "7.5"
|
|
tempfile = { workspace = true }
|
|
# wiremock = { workspace = true } # REMOVED from workspace
|
|
tracing-subscriber = { workspace = true }
|
|
serial_test = "3.2"
|
|
|
|
[features]
|
|
default = ["databento", "benzinga", "icmarkets"] # Re-enabled databento feature for core functionality
|
|
databento = []
|
|
redis-cache = ["redis"]
|
|
benzinga = []
|
|
icmarkets = []
|
|
ib = []
|
|
mock = []
|
|
|
|
[[example]]
|
|
name = "broker_connection"
|
|
path = "examples/broker_connection.rs"
|
|
|
|
[lints]
|
|
workspace = true
|