Contract b1d514ac5b3f141bd06c7b2f4f84e3e27ed4b0d8c57f552e63691a07e6d50a45

← Back to Index 📥 Download WASM

Meta

cliver 27.0.0#5a7c5fe76530bf4248477ac812fc757146b98cc4
rssdkver 27.0.0#e5cb4b52c3da8e56fc48adfd7b85d85976c1a059
rsver 1.93.0

Instances

  • CANC5N2SOS57GWO7YM6M67F6WDEHC4PZ3J622AORHLWAWS6IZTDIT66O
  • CBJLBVPSFBWRTJTG26X7HLZ3P74JEZLYUFBLYRRFK2OKFUTANU2CEQAN

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) ▶