3 个版本
0.1.0 |
|
---|---|
0.1.0-alpha.2 | 2022 年 12 月 30 日 |
#127 在 #交易
150KB
4K SLoC
Les.rs - Rust 加密货币交易所库
这是一个开源的 Rust 高性能加密货币交易 API,支持多个交易所和语言包装器。使用 rust(🦀) 编写,并充满爱意。这个库提供了一个简单的接口,用于从 Rust 与加密货币交易所交互。它支持广泛的交易所,使得访问它们的 API 并执行常见任务(如获取账户余额和下订单)变得简单。
安装
要安装库,请将以下内容添加到您的 Cargo.toml 文件中
复制代码
[dependencies]
les = "0.1
然后您可以在 Rust 代码中使用该库,将以下内容添加到您的 main.rs 或 lib.rs 文件中
复制代码
extern crate les;
支持的交易所
以下交易所目前由该库支持
交易所 | 可用 |
---|---|
币安 | ✅ |
Coinbase | ⬜️ |
Bitfinex | ⬜️ |
Kraken | ⬜️ |
未来更新中将添加更多交易所。
使用方法
要使用该库,您需要创建一个 Exchange 结构体实例,传入您想使用的交易所名称作为字符串。您还需要提供 API 密钥和密钥,您可以从交易所获得。
复制代码
let client = Binance::new(BinanceParameters {
credentials: Some(BinanceCredentials {
api_key: env::var("BINANCE_API_KEY").expect("Couldn't get environment variable"),
api_secret: env::var("BINANCE_API_SECRET").expect("Couldn't get environment variable"),
}),
..Default::default()
})
.await
.expect("Failed to create Client")
然后您可以使用 exchange 对象调用各种方法来访问交易所的 API。例如,要获取您账户的当前余额
复制代码
let params = TradeHistoryReq {
paginator: None,
symbol: String::from("BNBBTC"),
};
let binance_cli = client.inner_client().expect("Couldn't get inner time.");
let args = KlineParams{
symbol: "BNBBTC".to_string(),
interval: "1m".to_string(),
paginator: None,
};
let response = binance_cli.get_klines(&args).await.expect("Couldn't trade history.");
请参阅文档以获取可用方法及其使用的完整列表。
文档
该库的完整文档可在 此处 找到。
贡献
我们欢迎对该库的贡献!如果您想做出贡献,请按照以下步骤操作
- 分支仓库。
- 为您的更改创建一个新的分支。
- 对您的更改进行修改并将它们提交到您的分支。
- 将您的分支推送到您在 GitHub 上的分支。
- 向 crabby-ai/les 仓库的 main 分支提交一个拉取请求。
请确保遵循代码库中使用的编码风格和约定,并在提交拉取请求之前彻底测试您的更改。
许可证
该库在 MIT 许可证下发布。有关详细信息,请参阅 LICENSE 文件。
致谢
我要感谢以下个人和组织对该项目的贡献
- Rust 社区为他们提供的支持和指导。
- 各个加密货币交易所的开发者为我们提供了访问他们平台的 API。
依赖关系
~11–27MB
~424K SLoC