algofi¶
- algofi
- v1
- client
AlgofiMainnetClientAlgofiTestnetClientClientClient.get_active_asset_ids()Client.get_active_assets()Client.get_active_bank_asset_ids()Client.get_active_market_addresses()Client.get_active_market_app_ids()Client.get_active_markets()Client.get_active_oracle_app_ids()Client.get_active_ordered_symbols()Client.get_asset()Client.get_default_params()Client.get_manager()Client.get_market()Client.get_max_atomic_opt_in_market_app_ids()Client.get_prices()Client.get_raw_prices()Client.get_staking_contract()Client.get_staking_contracts()Client.get_storage_accounts()Client.get_storage_state()Client.get_user_balance()Client.get_user_balances()Client.get_user_info()Client.get_user_staking_contract_state()Client.get_user_state()Client.is_opted_into_app()Client.is_opted_into_asset()Client.prepare_add_collateral_transactions()Client.prepare_borrow_transactions()Client.prepare_burn_transactions()Client.prepare_claim_rewards_transactions()Client.prepare_claim_staking_rewards_transactions()Client.prepare_liquidate_transactions()Client.prepare_mint_to_collateral_transactions()Client.prepare_mint_transactions()Client.prepare_optin_transactions()Client.prepare_remove_algos_from_vault_transactions()Client.prepare_remove_collateral_transactions()Client.prepare_remove_collateral_underlying_transactions()Client.prepare_repay_borrow_transactions()Client.prepare_send_governance_commitment_transactions()Client.prepare_send_governance_vote_transactions()Client.prepare_send_keyreg_offline_transactions()Client.prepare_send_keyreg_online_transactions()Client.prepare_stake_transactions()Client.prepare_staking_contract_optin_transactions()Client.prepare_supply_algos_to_vault_transactions()Client.prepare_sync_vault_transactions()Client.prepare_unstake_transactions()Client.submit()
- manager
ManagerManager.get_manager_address()Manager.get_manager_app_id()Manager.get_rewards_program()Manager.get_storage_address()Manager.get_storage_state()Manager.get_storage_unrealized_rewards()Manager.get_supported_market_count()Manager.get_user_address()Manager.get_user_state()Manager.get_user_unrealized_rewards()Manager.update_global_state()
- market
MarketMarket.get_active_collateral()Market.get_asset()Market.get_bank_circulation()Market.get_bank_to_underlying_exchange()Market.get_collateral_factor()Market.get_liquidation_incentive()Market.get_market_address()Market.get_market_app_id()Market.get_market_counter()Market.get_outstanding_borrow_shares()Market.get_storage_state()Market.get_total_borrow_interest_rate()Market.get_underlying_borrowed()Market.get_underlying_cash()Market.get_underlying_reserves()Market.get_underlying_supplied()Market.update_global_state()
- staking_contract
StakingContractStakingContract.get_asset()StakingContract.get_manager()StakingContract.get_manager_address()StakingContract.get_manager_app_id()StakingContract.get_market()StakingContract.get_market_address()StakingContract.get_market_app_id()StakingContract.get_oracle_app_id()StakingContract.get_rewards_program()StakingContract.get_staked()StakingContract.get_storage_address()StakingContract.get_storage_state()StakingContract.get_user_state()StakingContract.update_global_state()
- asset
AssetAsset.get_bank_asset_id()Asset.get_bank_asset_info()Asset.get_decimal_amount()Asset.get_oracle_app_id()Asset.get_oracle_price_field()Asset.get_oracle_price_scale_factor()Asset.get_price()Asset.get_raw_price()Asset.get_scaled_amount()Asset.get_underlying_asset_id()Asset.get_underlying_asset_info()Asset.get_underlying_decimals()Asset.to_usd()
- rewards_program
RewardsProgramRewardsProgram.get_latest_rewards_time()RewardsProgram.get_rewards_amount()RewardsProgram.get_rewards_asset_id()RewardsProgram.get_rewards_asset_ids()RewardsProgram.get_rewards_per_second()RewardsProgram.get_rewards_program_number()RewardsProgram.get_rewards_secondary_asset_id()RewardsProgram.get_rewards_secondary_ratio()RewardsProgram.get_storage_unrealized_rewards()
- client
- utils
TransactionGroupTransactionsTransactions.ADD_COLLATERALTransactions.BORROWTransactions.BURNTransactions.CLAIM_REWARDSTransactions.LIQUIDATETransactions.MINTTransactions.MINT_TO_COLLATERALTransactions.REMOVE_ALGOS_FROM_VAULTTransactions.REMOVE_COLLATERALTransactions.REMOVE_COLLATERAL_UNDERLYINGTransactions.REPAY_BORROWTransactions.SEND_GOVERNANCE_TXNTransactions.SEND_KEYREG_OFFLINE_TXNTransactions.SEND_KEYREG_ONLINE_TXNTransactions.SUPPLY_ALGOS_TO_VAULTTransactions.SYNC_VAULT
encode_value()encode_varint()format_state()get_accounts_opted_into_app()get_global_state_field()get_init_round()get_manager_app_id()get_market_app_id()get_new_account()get_ordered_symbols()get_program()get_staking_contracts()get_state_bytes()get_state_int()int_to_bytes()prepare_payment_transaction()read_global_state()read_local_state()sign_and_submit_transactions()wait_for_confirmation()
- v1
algofi-py-sdk¶
The official Algofi V1 Python SDK. In the process of being deprecated and replaced by the Algofi V2 Python SDK.
Documentation¶
Design Goal¶
This SDK is useful for developers who want to programatically interact with the Algofi lending protocol.
Status¶
This SDK is currently under active early development and should not be considered stable.
Installation¶
algofi-py-sdk is not yet released on PYPI. It can be installed directly from this repository with pip:
pip install git+https://github.com/Algofiorg/algofi-py-sdk
To run examples:
create an examples/.env file mnemonic=[25 char mnemonic] storage_mnemonic=”” (leave empty string, examples/setup.py will set)
Fund the account for mnemonic with 20 test ALGO
Run python3 examples/setup.py
Run examples e.g. examples/add_collateral.py
Examples¶
Add liquidity (mint)¶
This example shows how to add liquidity to the platform
Burn asset (burn)¶
This example shows how to burn bank assets to redeem for underlying liquidity
Add collateral (add_collateral)¶
This example shows how to add minted bank assets to collateral
Add liquidity to collateral (mint_to_collateral)¶
This example shows how to add liquidity to the platform collateral
Remove collateral (remove_collateral)¶
This example shows how to remove bank asset collateral from platform
Remove collateral to underlying (remove_collateral_underlying)¶
remove_collateral_underlying.py
This example shows how to remove bank asset collateral from platform to underlying asset
Borrow (borrow)¶
This example shows how to borrow an underlying asset against provided collateral
Repay Borrow (repay_borrow)¶
This example shows how to repay borrowed assets
Staking (stake & unstake)¶
This example shows how to stake and unstake in a staking contract
License¶
algofi-py-sdk is licensed under a MIT license except for the exceptions listed below. See the LICENSE file for details.