#yahoo #stock

yahoo-finance

从雅虎获取财经数据的API

4个版本 (2个重大更新)

0.3.0 2020年9月9日
0.2.0 2020年4月4日
0.1.1 2020年3月28日
0.1.0 2020年3月28日

#165 in 财经

每月下载量 33
用于 2 crates

MIT 许可证

83KB
1.5K SLoC

Yahoo Finance for Rust

一个Rust库,用于从Yahoo!获取财经信息

Package Documentation Build Status

  • 历史OHLCV定价信息
use yahoo_finance::history;

fn main() {
   // retrieve 6 months worth of data for Apple
   let data = history::retrieve("AAPL").unwrap();

   // print the date and closing price for each day we have data
   for bar in &data {
      println!("On {} Apple closed at ${:.2}", bar.timestamp.format("%b %e %Y"), bar.close)
   }
}
  • 实时定价信息
use futures::{ future, StreamExt };
use yahoo_finance::Streamer;

#[tokio::main]
async fn main() {
   let mut streamer = Streamer::new(vec!["AAPL", "^DJI", "^IXIC"]);

   streamer.stream().await
      .for_each(|quote| {
         println!("At {}, {} is trading for ${} [{}]", quote.timestamp, quote.symbol, quote.price, quote.volume);

         future::ready(())
      })
      .await;
}
  • 符号配置信息
use futures::{ future, StreamExt };
use yahoo_finance::Streamer;

#[tokio::main]
async fn main() {
   let mut streamer = Streamer::new(vec!["AAPL", "^DJI", "^IXIC"]);

   streamer.stream().await
      .for_each(|quote| {
         println!("At {}, {} is trading for ${} [{}]", quote.timestamp, quote.symbol, quote.price, quote.volume);

         future::ready(())
      })
      .await;
}

用法

将此添加到您的 Cargo.toml

yahoo-finance = "0.3"

依赖项

~11–24MB
~389K SLoC