10 个版本
新 0.2.5 | 2024 年 8 月 15 日 |
---|---|
0.2.4 | 2024 年 8 月 8 日 |
0.2.3 | 2024 年 7 月 29 日 |
0.2.1 | 2024 年 6 月 13 日 |
0.1.2 | 2024 年 1 月 23 日 |
#199 in 魔法豆
每月 351 次下载
2.5MB
39K SLoC
Vertex Protocol Rust SDK
这是 Vertex Protocol API 的 Rust SDK。
快速入门
在您想要交互的链上实例化一个客户端。例如,使用 ClientMode::Prod
使用 Arbitrum,使用 ClientMode::BlastProd
使用 Blast。执行时需要签名者(私钥)。查询不需要签名者。对于具有许多参数的请求,使用客户端构建和发送请求。对于简单的查询(1-2 个参数),如 get_market_price
,可以直接从客户端调用。
请参阅 basic_usage.rs
以获取包括将资金存入 Vertex 的端到端示例。
use vertex_sdk::prelude::*;
async fn main() {
let client = VertexClient::new(ClientMode::Prod)
.with_signer(private_key())
.await
.unwrap();
const BTC_PERP: u32 = 2;
// query market data
let market_price = client.get_market_price(BTC_PERP).await.unwrap();
// place orders
let place_order_response = client
.place_order_builder()
.product_id(BTC_PERP)
.amount(to_i128_x18(1))
.price_x18(market_price.ask_x18)
.execute()
.await
.unwrap();
let digest = place_order_response.unwrap().digest;
// cancel orders
client
.cancellation_builder()
.digests(vec![digest])
.product_ids(vec![BTC_PERP])
.execute()
.await
.unwrap();
}
安装
将以下行添加到您的 Cargo.toml 文件中
[dependencies]
vertex_sdk = "0.2.5"
使用方法
本地运行
运行 sanity 检查
cargo run -- --execute-sanity
:运行执行时的 sanity 检查。cargo run -- --query-sanity
:运行引擎查询的 sanity 检查。cargo run -- --indexer-sanity
:运行索引查询的健壮性检查。
依赖项
~28–44MB
~830K SLoC