LiquidityConversionRates
You are referring to the Legacy
version of KyberSwap docs.
For the most updated information, please refer to:
Classic
contract LiquidityConversionRates
is ConversionRatesInterface, LiquidityFormula, Withdrawable, Utils\ imports ConversionRatesInterface, LiquidityFormula, Withdrawable, Utils
Source: LiquidityConversionRates.sol
The LiquidityConversionRates contract's role is to allow reserve operators to set liquidity parameters to the automated reserve for automated rate adjustment based on trades.
INDEX
<AUTOGENERATED_TABLE_OF_CONTENTS>
REFERENCE
Events
LiquidityParamsSet
LiquidityParamsSet
Event for logging the setting of liquidity parameters.
event LiquidityParamsSet(uint rInFp, uint pMinInFp, uint numFpBits, uint maxCapBuyInFp, uint maxEthCapSellInFp, uint feeInBps, uint formulaPrecision, uint maxQtyInFp, uint maxBuyRateInPrecision, uint minBuyRateInPrecision, uint maxSellRateInPrecision, uint minSellRateInPrecision) | Parameter | Type | Description | | --------- |:----------------------:|:---------------------------:| | uint
| rInFp | price move per 1 ETH inventory change in formula precision | | uint
| pMinInFp | pMin boundary in formula precision | | uint
| numFpBits | formula precision (currently 40 is recommended) | | uint
| maxCapBuyInFp | allowed ETH quantity for a single buy trade in ETH | | uint
| maxEthCapSellInFp | allowed ETH quantity for a single sell trade in ETH | | uint
| feeInBps | fees in base points | | uint
| formulaPrecision | formula precision | | uint
| maxQtyInFp | max quantity in formula precision | | uint
| maxBuyRateInPrecision | maximum buy rate in formula precision | | uint
| minBuyRateInPrecision | minimum buy rate in formula precision | | uint
| maxSellRateInPrecision | maximum sell rate in formula precision | | uint
| minSellRateInPrecision | minimum sell rate in formula precision |
ReserveAddressSet
ReserveAddressSet
Event for logging the setting of the reserve contract address.
event ReserveAddressSet(address reserve) | Parameter | Type | Description | | --------- |:--------:|:---------------------------:| | address
| reserve | reserve's contract address |
CollectedFeesReset
CollectedFeesReset
Event for logging of the resetting of the fees collected.
event CollectedFeesReset(address reserve) | Parameter | Type | Description | | --------- |:----------------:|:---------------------------:| | uint
| resetFeesInTwei | resetted fees in token wei |
Functions
LiquidityConversionRates
LiquidityConversionRates
Contract constructor. Note that constructor methods are called exactly once during contract instantiation and cannot be called again.
function LiquidityConversionRates(address _admin, ERC20 _token) public | Parameter | Type | Description | | ---------- |:-------:|:----------------------------:| | _admin
| address | admin's wallet address | | _token
| ERC20 | ERC20 token contract address |
Web3 Example:
Code snippet reference: broadcastTx()
getRate
getRate
Gets the conversion rate of the token to swap.
function getRate(ERC20 conversionToken, uint currentBlockNumber, bool buy, uint qtyInSrcWei) public view returns(uint) | Parameter | Type | Description | | --------- |:------------------:|:------------------------------------------------------------------:| | ERC20
| conversionToken | source ERC20 token contract address | | uint
| currentBlockNumber | current block number | | bool
| buy | true
to get the buy rate, otherwise false
to get the sell rate | | uint
| qtyInSrcWei | quantity in wei for the source token | Returns:\ Conversion rate of the source token and reserve token
resetCollectedFees
resetCollectedFees
Reset the amount of collected fees. Collected fees can be read through the state variable collectedFeesInTwei
. Only admin can invoke.
function resetCollectedFees() public onlyAdmin Modifiers: onlyAdmin
setLiquidityParams
setLiquidityParams
Sets the liquidity parameters of the automated reserve. Only admin can invoke.
function setLiquidityParams(uint _rInFp, uint _pMinInFp, uint _numFpBits, uint _maxCapBuyInWei, uint _maxCapSellInWei, uint _feeInBps, uint _maxTokenToEthRateInPrecision, uint _minTokenToEthRateInPrecision) public onlyAdmin | Parameter | Type | Description | | --------- |:-----------------------------:|:---------------------------:| | uint
| _rInFp | price move per 1 ETH inventory change in formula precision | | uint
| _pMinInFp | pMin boundary in formula precision | | uint
| _numFpBits | formula precision (currently 40 is recommended) | | uint
| _maxCapBuyInWei | maximum token quantity in wei for a single buy trade | | uint
| _maxCapSellInWei | maximum token quantity in wei for a single sell trade | | uint
| _feeInBps | fees in base points | | uint
| _maxTokenToEthRateInPrecision | maximum allowed token to ETH rate in formula precision | | uint
| _minTokenToEthRateInPrecision | minimum allowed token to ETH rate in formula precision | Modifiers: onlyAdmin
setReserveAddress
setReserveAddress
Sets the reserve contract address. Only admin can invoke.
function setReserveAddress(address reserve) public onlyAdmin | Parameter | Type | Description | | --------- |:-------:|:---------------------------:| | address
| reserve | reserve's contract address | Modifiers: onlyAdmin
Last updated