2 releases

0.1.2 Apr 23, 2022
0.1.1 Apr 22, 2022
0.1.0 Apr 22, 2022

#7 in #trade

Custom license

17KB
281 lines

dukascopy-rs

github crates-io docs-rs

Stream historical tick data straight from Dukascopy

use dukascopy_rs::DukascopyService;
use futures::TryStreamExt;
use time::macros::datetime;

#[tokio::main]
async fn main() {
    DukascopyService::default()
        .download_ticks(
            String::from("EURGBP"),
            // only full hours are supported for now
            datetime!(2020-03-12 13:00),
            datetime!(2020-03-12 15:00),
        )
        .try_for_each(|e| async move {
            println!("{}", e);
            Ok(())
        })
        .await
        .unwrap_or(());
}

source: example/main.rs

For details on what are the possible inputs/outputs, please have a look on download_ticks method documentation.

Optional cargo features

  • serde - enables serialization support for Tick struct

TODO

  • support for any date and time (not only full hours)
  • DataSupplier that retries requests upon failure

Dependencies

~7–20MB
~299K SLoC