Contract 1ec028841a758c58be0ec7303c106dcabd50d2a54867911e632a9b6fb01a89ac

← Back to Index 📥 Download WASM

Meta

cliver 27.0.0#5a7c5fe76530bf4248477ac812fc757146b98cc4
rssdkver 27.0.0#e5cb4b52c3da8e56fc48adfd7b85d85976c1a059
rsver 1.93.0

Instances

  • CAOWK7MHBJSUHXMMHBVXTUSSMUO5GVGDO4RIZ5GVVZOIUND76UAITNF4
  • CDRXNXHNZ26NYOCQ3XAFAPWEDKTG5WTFYGLGLNNHRHENJV3ZOAIIDSUU

Interface

在庫型: コントラクト保有残高でサイクルを回し、利益はコントラクトに残す。 事前にオーナーが plan.token を amount_in 以上コントラクトへ入金しておくこと。戻り値=実現利益。

fn run(env: soroban_sdk::Env, plan: Plan) -> i128

FL型(controllerインスタンスで呼ぶ): executor に plan を staging → Blend flash_loan。 返済は Blend が Repay リクエスト(amount+margin、超過返金)で from=trader の allowance から回収。

fn run_fl(
    env: soroban_sdk::Env,
    trader: soroban_sdk::Address,
    pool: soroban_sdk::Address,
    executor: soroban_sdk::Address,
    asset: soroban_sdk::Address,
    amount: i128,
    plan: Plan,
)

moderc3156 receiver(Blend が FL 実行中に呼ぶ)。借入 amount は既にコントラクトへ着金済み。 コントラクト保有のまま動的サイクルを回し、返済分を from(=caller)へ渡す。利益はコントラクトに残留。

fn exec_op(
    env: soroban_sdk::Env,
    caller: soroban_sdk::Address,
    token_id: soroban_sdk::Address,
    amount: i128,
    fee: i128,
)

executor インスタンスのみ: controller が同一Tx内で plan を staging(TEMPORARY storage)。

fn set_plan(env: soroban_sdk::Env, setter: soroban_sdk::Address, plan: Plan)

admin のみ: コントラクト残留資金の回収。amount=None で全額。

fn withdraw(
    env: soroban_sdk::Env,
    token_id: soroban_sdk::Address,
    to: soroban_sdk::Address,
    amount: Option,
)
fn get_admin(env: soroban_sdk::Env) -> soroban_sdk::Address

デプロイ時に一度だけ実行(未初期化フロントラン不可)。 controller インスタンス: controller=None / executor インスタンス: controller=Some(controllerアドレス)

fn __constructor(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    controller: Option,
)

Imports

WebAssembly Text (WAT) ▶