rust client: Fix slippage arg for jupiter
This commit is contained in:
parent
d0260e071c
commit
2ca430eaa7
|
@ -77,7 +77,7 @@ struct JupiterSwap {
|
|||
amount: u64,
|
||||
|
||||
#[clap(short, long)]
|
||||
slippage: f64,
|
||||
slippage_bps: u64,
|
||||
|
||||
#[clap(flatten)]
|
||||
rpc: Rpc,
|
||||
|
@ -178,7 +178,7 @@ async fn main() -> Result<(), anyhow::Error> {
|
|||
input_mint,
|
||||
output_mint,
|
||||
cmd.amount,
|
||||
cmd.slippage,
|
||||
cmd.slippage_bps,
|
||||
client::JupiterSwapMode::ExactIn,
|
||||
)
|
||||
.await?;
|
||||
|
|
|
@ -1136,7 +1136,7 @@ impl MangoClient {
|
|||
input_mint: Pubkey,
|
||||
output_mint: Pubkey,
|
||||
amount: u64,
|
||||
slippage: f64,
|
||||
slippage: u64,
|
||||
swap_mode: JupiterSwapMode,
|
||||
) -> anyhow::Result<jupiter::QueryRoute> {
|
||||
let quote = self
|
||||
|
@ -1191,7 +1191,7 @@ impl MangoClient {
|
|||
input_mint: Pubkey,
|
||||
output_mint: Pubkey,
|
||||
amount: u64,
|
||||
slippage: f64,
|
||||
slippage: u64,
|
||||
swap_mode: JupiterSwapMode,
|
||||
) -> anyhow::Result<Signature> {
|
||||
let source_token = self.context.token_by_mint(&input_mint)?;
|
||||
|
|
|
@ -33,7 +33,7 @@ pub async fn jupiter_market_can_buy(
|
|||
// TODO: configurable
|
||||
// TODO: cache this, no need to recheck often
|
||||
let quote_amount = 10_000_000u64;
|
||||
let slippage = 1.0;
|
||||
let slippage = 100;
|
||||
mango_client
|
||||
.jupiter_route(
|
||||
quote_token_mint,
|
||||
|
@ -61,7 +61,7 @@ pub async fn jupiter_market_can_sell(
|
|||
// TODO: configurable
|
||||
// TODO: cache this, no need to recheck often
|
||||
let quote_amount = 10_000_000u64;
|
||||
let slippage = 1.0;
|
||||
let slippage = 100;
|
||||
mango_client
|
||||
.jupiter_route(
|
||||
token_mint,
|
||||
|
|
|
@ -80,8 +80,8 @@ struct Cli {
|
|||
#[clap(long, env, default_value = "50")]
|
||||
min_health_ratio: f64,
|
||||
|
||||
#[clap(long, env, default_value = "1")]
|
||||
rebalance_slippage: f64,
|
||||
#[clap(long, env, default_value = "100")]
|
||||
rebalance_slippage_bps: u64,
|
||||
|
||||
/// prioritize each transaction with this many microlamports/cu
|
||||
#[clap(long, env, default_value = "0")]
|
||||
|
@ -232,7 +232,7 @@ async fn main() -> anyhow::Result<()> {
|
|||
|
||||
let mut rebalance_interval = tokio::time::interval(Duration::from_secs(5));
|
||||
let rebalance_config = rebalance::Config {
|
||||
slippage: cli.rebalance_slippage,
|
||||
slippage_bps: cli.rebalance_slippage_bps,
|
||||
// TODO: config
|
||||
borrow_settle_excess: 1.05,
|
||||
refresh_timeout: Duration::from_secs(30),
|
||||
|
|
|
@ -15,7 +15,7 @@ use std::{collections::HashMap, time::Duration};
|
|||
#[derive(Clone)]
|
||||
pub struct Config {
|
||||
/// Maximum slippage allowed in Jupiter
|
||||
pub slippage: f64,
|
||||
pub slippage_bps: u64,
|
||||
/// When closing borrows, the rebalancer can't close token positions exactly.
|
||||
/// Instead it purchases too much and then gets rid of the excess in a second step.
|
||||
/// If this is 1.05, then it'll swap borrow_value * 1.05 quote token into borrow token.
|
||||
|
@ -160,7 +160,7 @@ impl<'a> Rebalancer<'a> {
|
|||
quote_mint,
|
||||
token_mint,
|
||||
input_amount.to_num::<u64>(),
|
||||
self.config.slippage,
|
||||
self.config.slippage_bps,
|
||||
client::JupiterSwapMode::ExactIn,
|
||||
)
|
||||
.await?;
|
||||
|
@ -192,7 +192,7 @@ impl<'a> Rebalancer<'a> {
|
|||
token_mint,
|
||||
quote_mint,
|
||||
amount.to_num::<u64>(),
|
||||
self.config.slippage,
|
||||
self.config.slippage_bps,
|
||||
client::JupiterSwapMode::ExactIn,
|
||||
)
|
||||
.await?;
|
||||
|
|
Loading…
Reference in New Issue