Inheritance: OpdexLiquidityPool, IOpdexStandardPool
A standard liquidity pool that holds reserves of CRS and a single SRC20 token type used for swapping tokens against.
Each liquidity pool manages its own liquidity pool SRC20 token which are minted or burned as users add or remove liquidity from the pool. LP tokens represent providers share of reserves in the liquidity pool.
Traders swap tokens against the existing pool’s reserves, the higher the amount of reserves, the more stable the price is during swaps.
Standard pools, created within standard markets, may have authorizations in place for pool creators, liquidity providers or traders depending on the market’s configurations that creates the standard pool.
The standard market contract that creates standard liquidity pools also determines the transaction fees of created liquidity pools. The fees can range from 0% to 1% and once set, cannot be changed.
In a standard pool, 100% of the transaction fees are collect by liquidity providers at the time of withdrawing provided liquidity from the pool.
This smart contract is derived from the liquidity pool smart contract where inherited properties, methods, logs, models and references are detailed.
Constructor
public OpdexStandardPool(ISmartContractState state,
Address token,
uint transactionFee,
bool authProviders,
bool authTraders,
bool marketFeeEnabled) : base(state, token, transactionFee)
Parameters
Type | Property | Description |
ISmartContractState | state | Dependency injected smart contract state. Omitted from parameters during deployment. |
Address | token | The SRC token address in the liquidity pool. |
uint | transactionFee | The market transaction fee, 0-10 equal to 0-1%. |
bool | authProviders | Flag to authorize liquidity providers or not. |
bool | authTraders | Flag to authorize traders or not. |
bool | marketFeeEnabled | Flag determining if 1/6 of transaction fees are collected by the market owner. |
Properties
Type | Property | Description |
Address | Market | The address of the market the pool is assigned to. |
bool | AuthProviders | Flag describing whether Mint , Burn , Sync , or Skim transactions are authorized or not. |
bool | AuthTraders | Flag describing whether Swap transactions are authorized or not. |
bool | MarketFeeEnabled | Flag indicating if the market owner collects 1/6 of all transaction fees. |