DODO Docs
Search
K

PMMRangeOrder

PMMRangeOrder

This contract determines the price curve.

querySellTokens

function querySellTokens(
Types.RangeOrderState roState,
address fromToken,
address toToken,
uint256 fromTokenAmount
) public view returns (uint256 fromAmount,
uint256 receiveToToken,
uint256 vusdAmount)

queryBuyTokens

function queryBuyTokens(
Types.RangeOrderState roState,
address fromToken,
address toToken,
uint256 toTokenAmount
) public view returns (uint256 payFromToken,
uint256 toAmount,
uint256 vusdAmount)

_contructTokenState

function _contructTokenState(
Types.RangeOrderState roState,
bool fromTokenOrNot,
bool askOrNot
) internal pure returns (PMMPricing.PMMState tokenState)

_calB0WithPriceLimit

function _calB0WithPriceLimit(
uint256 priceUp,
uint256 k,
uint256 i,
uint256 amount
) internal pure returns (uint256 baseTarget)

_calSlotAmountInfo

function _calSlotAmountInfo(
uint64 amountSet,
bool askOrNot
) internal pure returns (uint256 amountWithDecimal)

_calSlotPriceInfo

function _calSlotPriceInfo(
uint96 priceSet,
bool askOrNot
) internal pure returns (uint256,
uint256)