1个不稳定版本
0.0.1 | 2019年11月7日 |
---|
#161 在 #trading
被 blpapi 使用
5KB
75 代码行
blpapi
Bloomberg blpapi的Rust封装。
这是一个正在进行中的项目,我不打算与C++ API达到兼容。另一方面,我非常欢迎任何贡献!
仅在Windows上测试(DesktopApi)。在Linux上可编译。测试版本:3.12.3.1
安装
- 安装C/C++ BLPAPI。 (从 https://www.bloomberg.com/professional/support/api-library/ 下载并提取文件)
- 设置
BLPAPI_LIB
环境变量。在Windows上:\lib,在Linux上:/Linux
示例
# Cargo.toml
[dependencies]
blpapi = { version = "0.0.1", features = [ "derive", "dates" ] }
参考数据
use blpapi::{RefData, session::SessionSync};
// use the derive feature to automatically convert field names into bloomberg fields
#[derive(Default, RefData)]
struct EquityData {
ticker: String,
crncy: String,
market_status: Option<String>,
}
let mut session = SessionSync::new().unwrap();
let securities: &[&str] = &[ /* list of security tickers */ ];
let maybe_equities = session.ref_data::<_, EquityData>(securities);
历史数据
use blpapi::{RefData, session::{SessionSync, HistOptions}};
// use the **derive** feature to automatically convert field names into bloomberg fields
#[derive(Default, RefData)]
struct Price {
px_last: f64,
}
let mut session = SessionSync::new().unwrap();
let securities: &[&str] = &[ /* list of security tickers */ ];
let options = HistOptions::new("20190101", "20191231");
let prices = session.hist_data::<_, Price>(securities, options);
依赖项
~1.5MB
~35K SLoC