Crates.io | marketstore |
lib.rs | marketstore |
version | 0.2.0 |
source | src |
created_at | 2023-01-20 01:50:02.72819 |
updated_at | 2023-09-16 18:38:14.656416 |
description | Marketstore rust driver |
homepage | https://github.com/ananthartha/rsmarketstore |
repository | https://github.com/ananthartha/rsmarketstore |
max_upload_size | |
id | 763064 |
size | 107,848 |
Rust driver for MarketStore
rsmarketstore can query and [write TBD
] financial timeseries data from MarketStore
cargo add rsmarketstore
// 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;
Source can be found in examples/ohlcv
# Run
cargo run --example ohlcv --features=serde
Source can be found in examples/stream
# Run
cargo run --example stream --features=stream