LiquidityThresholdAssetManager
This is an abstract implementation of the IAssetManager interface that implements a liquidity strategy based on thresholds.
This strategy manages how much of the funds should remain liquid in the reserve (currency().balanceOf(reserve)
) and how much is invested. For that, it has three liquidity thresholds: minimum, middle, and maximum. On the rebalance operations, if the liquid funds of the reserve are above the maximum, it invests funds, leaving liquidity at the middle level. If the liquid funds are below the minimum, it deinvests enough funds to leave the liquidity again at the middle level.
Inheriting
The contract does not implement the specific investment strategy, that must be implemented by descendant contracts. These contracts must overload at least the functions _invest(amount)
, _deinvest(amount),
deinvestAll()
, and getInvestmentValue()
.
Parameters
External Methods
setLiquidityThresholds
Last updated