marginpy.utp.zo.utils.client.zo module
- class ZoIndexer(d: dict[str, T], m: Callable[[str], str])
- Bases: - Generic[- T]
- class Zo(program, config, state, state_signer, margin, margin_key)
- Bases: - object- dex_markets: dict[str, marginpy.utp.zo.utils.client.dex.Market]
 - cache: Any
 - control: Any
 - state: Any
 - state_signer: PublicKey
 - margin: Any
 - margin_key: PublicKey
 - async static new(conn: AsyncClient, cluster: Literal['devnet', 'mainnet'], payer: Optional[Keypair] = None, url: Optional[str] = None, margin_pk: Optional[PublicKey] = None, tx_opts: TxOpts = TxOpts(skip_confirmation=False, skip_preflight=False, preflight_commitment='processed', max_retries=None, last_valid_block_height=None))
- Create a new client instance. - Parameters
- cluster – Which cluster to connect to. 
- payer – The transaction payer and margin owner. Defaults to the local transaction payer. 
- url – URL for the RPC endpoint. 
- load_margin – Whether to load the associated margin account. If False, any transaction requiring a margin will fail. 
- create_margin – Whether to create the associated margin account if it doesn’t already exist. 
- tx_opts – The transaction options. 
 
 
 - property program: Program
 - property provider: Provider
 - property connection: AsyncClient
 - property wallet: Wallet
 - property collaterals
- List of collaterals and their metadata. 
 - property markets
- List of collaterals and markets metadata. 
 - property orderbook
- Current state of the orderbook. 
 - property balance
- Current account balance. 
 - property position
- Current position. 
 - property orders
- Currently active orders. 
 - async refresh(*, commitment: Commitment = 'processed')
- Refresh the loaded accounts to see updates. 
 - collaterals_map(k: str) str
 - markets_map(k: str) str