16 个版本
0.2.5 | 2021年2月24日 |
---|---|
0.2.4 | 2021年2月23日 |
0.1.9 | 2021年2月21日 |
#19 in #kraken
用于 2 个软件包 (通过 squalo)
97KB
202 行
🐙 最小化、优雅、快速、异步 Kraken 交易所 REST API 客户端 | 用 Rust 编写
描述
polipo
库旨在使您的软件能够快速与 Kraken 交易所 REST API 进行交互。
先决条件
Kraken 交易所允许通过 REST API
与 public
和 private
数据进行交互。
对于 private
数据,您需要向 polipo
库颁发一个 API-Key
和一个 API-Secret
,以便 生成带有签名的请求的认证字符串。
如果您不熟悉,请参阅 API 基础文档 以获取概述,或参阅 生成 API 密钥 文档。
实现
将以下内容添加到您的 Cargo.toml
[dependencies]
polipo = {version = 0.2.5}
然后将其添加到您的 code
use polipo;
方法
polipo::print_crate_info();
描述:打印 crate
信息(名称、描述、版本、作者和存储库)。
polipo::set_kraken_api_credentials(api_key: String, api_secret: String);
描述:为 Kraken API
证书设置用于 private
数据访问。
必需:
- api_key:
String
- api_secret:
String
polipo::get_kraken_api_response(method: String, url_encoded_body: String).await;
描述:根据指定的 method
和 url_encoded_body
数据执行 public
或 private
请求。
必需:
- method:
String
(例如:"public" 或 "private") - url_encoded_body:
字符串
(例如:"pair=ethusd&since=1574067140000000000")
输出:任何响应都以字符串化的 JSON
格式呈现(根据结果形状相应解析)。
示例
以下示例展示了如何从零开始轻松实现 polipo
。
use polipo;
async fn query(method: &str, url_encoded_body: &str) -> String {
polipo::get_kraken_api_response(method.to_string(), url_encoded_body.to_string()).await
}
#[tokio::main]
async fn main() {
// printing crate information
polipo::print_crate_info();
// performing some queries on public data
println!("public/Assets: {}", query("Assets", "").await);
println!("public/Ticker: {}", query("Ticker", "pair=xdgeur").await);
// issuing credentials enables private data requests
polipo::set_kraken_api_credentials(
"YOUR_KRAKEN_API_KEY_HERE".to_string(),
"YOUR_KRAKEN_API_SECRET".to_string(),
);
// performing some queries on private data
println!("private/Balance: {}", query("Balance", "").await);
println!("private/TradeBalance: {}", query("TradeBalance","asset=ada").await);
println!("private/Trades: {}", query("Trades", "pair=ethusd&since=1574067140000000000").await);
}
免责声明
本软件不提供任何形式的担保。
对于与本软件的使用或误用相关的任何损害,本人不承担任何责任。
您是唯一的责任方。
依赖项
约6-18MB
约258K SLoC