marginpy.bank module

class Bank(data: BankData)

Bases: object

Bank struct mirroring on-chain data.

Contains the state of the marginfi group.

scaling_factor_c: float
fixed_fee: float
interest_fee: float
deposit_accumulator: float
borrow_accumulator: float
last_update: datetime
total_deposits_record: float
total_borrows_record: float
mint: PublicKey
vault: PublicKey
vault_authority_pda_bump: int
insurance_vault: PublicKey
insurance_vault_authority_pda_bump: int
fee_vault: PublicKey
fee_vault_authority_pda_bump: int
init_margin_ratio: float
maint_margin_ratio: float
account_deposit_limit: float
lp_deposit_limit: float
compute_native_amount(record_amount: float, side: LendingSide) float

Converts the provided record amount to its native amount respective to current accumulator.

Raises

Exception – unknown side

compute_record_amount(native_amount: float, side: LendingSide) float

Converts the provided native amount to its record amount respective to current accumulator.

Raises

Exception – unknown side

compute_margin_ratio(mreq_type: MarginRequirement) float