4 releases
0.2.0 | Sep 16, 2023 |
---|---|
0.1.2 | Apr 1, 2023 |
0.1.1 | Jan 20, 2023 |
#2464 in Parser implementations
56KB
1.5K
SLoC
rsmarketstore
Rust driver for MarketStore
rsmarketstore can query and [write TBD
] financial timeseries data from MarketStore
How to install
cargo add rsmarketstore
Examples
// Connect
let agent = Agent::connect(
Uri::from_static("http://localhost:5995").into()).await;
// Query
agent
.query(QueryParams {
symbols: vec!["NIFTY 50".to_string()],
timeframe: marketstore::MIN,
attrgroup: "OHLCV".to_string(),
..Default::default()
})
.await?
// timeframes
let FiveMins = 5 * marketstore::MIN;
let FifteenMin = 15 * marketstore::MIN;
let TwoHours = 2 * marketstore::HOUR;
// stream
let (stream, receiver) = stream::connect::<Candle>("ws://localhost:5993/ws")
.await
.unwrap();
stream.subscribe(vec!["NIFTY 50".into()]).await?;
receiver
.for_each(|msg| async move {
println!("{:#?}", msg);
})
.await;
Serde with Protobuf
Source can be found in examples/ohlcv
# Run
cargo run --example ohlcv --features=serde
Stream
Source can be found in examples/stream
# Run
cargo run --example stream --features=stream
Dependencies
~5–14MB
~145K SLoC