Contract 01a8304d5e0f518980de0a1d4efd47c41b6b23230234ee64c72283805342a2de

← Back to Index 📥 Download WASM

Meta

cliver 26.0.0#60f7458e7ecffddf2f2d91dc6d0d2db4fab03ecc
rssdkver 25.3.1#e50d95af029c83196dd122f0154bac3f1302394b
rsver 1.92.0

Interface

fn owner(env: soroban_sdk::Env) -> soroban_sdk::Address

Transfer any dust / stranded intermediate tokens out of the contract. Pass amount = 0 to sweep the full balance.

fn sweep(
    env: soroban_sdk::Env,
    owner: soroban_sdk::Address,
    asset: soroban_sdk::Address,
    to: soroban_sdk::Address,
    amount: i128,
) -> Result

Execute an arbitrage route atomically.

  • caller: submitter account (must be in the allowlist). Pays the tx inclusion fee.
  • trader: capital provider. Seeds the route with amount_in of asset_in and receives the final base_asset balance at the end.
  • asset_in / amount_in: tokens pulled from trader into the contract before step 0.
  • base_asset: token measured at the end for the profit check.
  • min_final_balance: revert if the contract's base_asset balance is below this after the last step runs. This is the on-chain backstop against stale quotes.
  • route: ordered list of opaque sub-calls. The contract invokes each as-is.

Returns the final base_asset balance returned to the trader.

fn execute(
    env: soroban_sdk::Env,
    caller: soroban_sdk::Address,
    trader: soroban_sdk::Address,
    asset_in: soroban_sdk::Address,
    amount_in: i128,
    base_asset: soroban_sdk::Address,
    min_final_balance: i128,
    route: soroban_sdk::Vec,
) -> Result
fn upgrade(
    env: soroban_sdk::Env,
    owner: soroban_sdk::Address,
    new_wasm_hash: soroban_sdk::BytesN<32>,
) -> Result<(), ArbError>
fn version(env: soroban_sdk::Env) -> u32
fn add_caller(
    env: soroban_sdk::Env,
    owner: soroban_sdk::Address,
    caller: soroban_sdk::Address,
) -> Result<(), ArbError>
fn is_allowed(env: soroban_sdk::Env, addr: soroban_sdk::Address) -> bool
fn update_owner(
    env: soroban_sdk::Env,
    owner: soroban_sdk::Address,
    new_owner: soroban_sdk::Address,
) -> Result<(), ArbError>
fn __constructor(
    env: soroban_sdk::Env,
    owner: soroban_sdk::Address,
    initial_callers: soroban_sdk::Vec,
)
fn remove_caller(
    env: soroban_sdk::Env,
    owner: soroban_sdk::Address,
    caller: soroban_sdk::Address,
) -> Result<(), ArbError>

Imports

WebAssembly Text (WAT) ▶