refactor: Update GasFeeStrategy to instance-based API and update docs

This commit is contained in:
ysq
2025-10-07 23:12:37 +08:00
parent e13c891cc9
commit 85154f6c01
28 changed files with 269 additions and 120 deletions
+31 -12
View File
@@ -13,12 +13,20 @@
每个 (SwqosType, TradeType) 的组合仅可配置一个策略。后续配置的策略会覆盖之前的策略。
### 2. 设置全局策略(也可以不设置,单独去配置单个策略)
### 2. 创建 GasFeeStrategy 实例
```rust
use sol_trade_sdk::common::GasFeeStrategy;
// 创建一个新的 GasFeeStrategy 实例
let gas_fee_strategy = GasFeeStrategy::new();
```
### 3. 设置全局策略(也可以不设置,单独去配置单个策略)
```rust
use sol_trade_sdk::common::{gas_fee_strategy::GasFeeStrategy};
// 设置全局策略(normal 策略)
GasFeeStrategy::set_global_fee_strategy(
gas_fee_strategy.set_global_fee_strategy(
150000, // cu_limit
500000, // cu_price
0.001, // buy tip
@@ -26,11 +34,11 @@ GasFeeStrategy::set_global_fee_strategy(
);
```
### 3. 配置单个策略
### 4. 配置单个策略
```rust
// 为 SwqosType::Jito 在 Buy 时配置 normal 策略
GasFeeStrategy::set_normal_fee_strategy(
// 为 SwqosType::Jito 配置 normal 策略
gas_fee_strategy.set_normal_fee_strategy(
SwqosType::Jito,
xxxxx, // cu_limit
xxxx, // cu_price
@@ -39,11 +47,11 @@ GasFeeStrategy::set_normal_fee_strategy(
);
```
### 4. 配置高低费率策略
### 5. 配置高低费率策略
```rust
// 为 SwqosType::Jito 在 Buy 时配置高低费率策略
GasFeeStrategy::set_high_low_fee_strategy(
gas_fee_strategy.set_high_low_fee_strategy(
SwqosType::Jito,
TradeType::Buy,
xxxxx, // cu_limit
@@ -54,15 +62,26 @@ GasFeeStrategy::set_high_low_fee_strategy(
);
```
### 5. 查看和清理
### 6. 在交易参数中使用
```rust
use sol_trade_sdk::TradeBuyParams;
let buy_params = TradeBuyParams {
// ... 其他参数
gas_fee_strategy: gas_fee_strategy.clone(),
};
```
### 7. 查看和清理
```rust
// 移除某个策略
GasFeeStrategy::del(SwqosType::Jito, TradeType::Buy);
gas_fee_strategy.del_all(SwqosType::Jito, TradeType::Buy);
// 查看所有策略
GasFeeStrategy::print_all_strategies();
gas_fee_strategy.print_all_strategies();
// 清空所有策略
GasFeeStrategy::clear();
gas_fee_strategy.clear();
```
## 🔗 相关文档