ITCH parser library for Rust. Implements the NASDAQ 5.0 spec which can be found here.
It is zero-allocation (thanks nom!) pretty fast, parsing around 20M messages/second on my XPS 9370.
Add this to your Cargo.toml
:
[dependencies]
itchy = "0.2"
Simple usage example:
let stream = itchy::MessageStream::from_file("/path/to/file.itch").unwrap();
for msg in stream {
println!("{:?}", msg.unwrap())
}
See the API docs for more information.