fn initialize(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
oracle: soroban_sdk::Address,
vault: soroban_sdk::Address,
settlement_asset: soroban_sdk::Address,
) -> Result<(), CoreError>
fn set_market(
env: soroban_sdk::Env,
config: EngineMarketConfig,
) -> Result<(), CoreError>
fn nominate_admin(
env: soroban_sdk::Env,
next_admin: soroban_sdk::Address,
) -> Result<(), CoreError>
fn accept_admin(env: soroban_sdk::Env) -> Result<(), CoreError>
fn extend_instance_ttl(env: soroban_sdk::Env)
fn set_fee_config(
env: soroban_sdk::Env,
market_id: u32,
config: FeeConfig,
) -> Result<(), CoreError>
fn set_funding_config(
env: soroban_sdk::Env,
market_id: u32,
config: FundingConfig,
) -> Result<(), CoreError>
fn set_fee_collector(
env: soroban_sdk::Env,
collector: soroban_sdk::Address,
) -> Result<(), CoreError>
fn set_order_gateway(
env: soroban_sdk::Env,
gateway: soroban_sdk::Address,
) -> Result<(), CoreError>
fn set_fee_recipient(
env: soroban_sdk::Env,
recipient: soroban_sdk::Address,
) -> Result<(), CoreError>
fn set_liquidation(
env: soroban_sdk::Env,
liquidation: soroban_sdk::Address,
) -> Result<(), CoreError>
fn set_insurance(
env: soroban_sdk::Env,
insurance: soroban_sdk::Address,
) -> Result<(), CoreError>
fn update_funding(
env: soroban_sdk::Env,
market_id: u32,
) -> Result
fn charge_trade_fee(
env: soroban_sdk::Env,
user: soroban_sdk::Address,
market_id: u32,
size: i128,
execution_price: i128,
is_maker: bool,
) -> Result
fn open_position(
env: soroban_sdk::Env,
user: soroban_sdk::Address,
market_id: u32,
size: i128,
is_long: bool,
execution_price: i128,
mode: MarginMode,
) -> Result
fn increase_position(
env: soroban_sdk::Env,
user: soroban_sdk::Address,
position_id: u64,
size_delta: i128,
execution_price: i128,
) -> Result
fn reduce_position(
env: soroban_sdk::Env,
user: soroban_sdk::Address,
position_id: u64,
size_delta: i128,
execution_price: i128,
) -> Result
fn liquidate_reduce(
env: soroban_sdk::Env,
user: soroban_sdk::Address,
position_id: u64,
size_delta: i128,
execution_price: i128,
) -> Result
fn close_position(
env: soroban_sdk::Env,
user: soroban_sdk::Address,
position_id: u64,
execution_price: i128,
) -> Result
fn positions(
env: soroban_sdk::Env,
user: soroban_sdk::Address,
) -> soroban_sdk::Vec
fn open_interest(env: soroban_sdk::Env, market_id: u32) -> i128
fn long_open_interest(env: soroban_sdk::Env, market_id: u32) -> i128
fn short_open_interest(env: soroban_sdk::Env, market_id: u32) -> i128
fn funding_state(env: soroban_sdk::Env, market_id: u32) -> FundingState