深入瞭解阿凡達泰山眾籌商城系統開發詳情版及原始碼功能
拆分後的交易計算
交易是否能夠結束的關鍵計算在SwapMath.computeSwapStep中完成,函式部分程式碼進行分析(這裡僅摘取exactIn時的程式碼):
function computeSwapStep(
uint160 sqrtRatioCurrentX96,
uint160 sqrtRatioTargetX96,
uint128 liquidity,
int256 amountRemaining,
uint24 feePips
)
internal
pure
returns(
uint160 sqrtRatioNextX96,
uint256 amountIn,
uint256 amountOut,
uint256 feeAmount
)
{案例及需求:StPv888
//判斷交易的方向,即價格降低或升高
bool zeroForOne=sqrtRatioCurrentX96>=sqrtRatioTargetX96;
//判斷是否指定了精確的tokenIn數量
bool exactIn=amountRemaining>=0;
...
if(exactIn){
//先將tokenIn的餘額扣除掉最大所需的手續費
uint256 amountRemainingLessFee=FullMath.mulDiv(uint256(amountRemaining),1e6-feePips,1e6);
//透過公式計算出到達目標價所需要的tokenIn數量,這裡對x token和y token計算的公式是不一樣的
amountIn=zeroForOne
?SqrtPriceMath.getAmount0Delta(sqrtRatioTargetX96,sqrtRatioCurrentX96,liquidity,true)
:SqrtPriceMath.getAmount1Delta(sqrtRatioCurrentX96,sqrtRatioTargetX96,liquidity,true);方案及原始碼:yy625019
//判斷餘額是否充足,如果充足,那麼這次交易可以到達目標交易價格,否則需要計算出當前tokenIn能到達的目標交易價
if(amountRemainingLessFee>=amountIn)sqrtRatioNextX96=sqrtRatioTargetX96;
else
//當餘額不充足的時候計算能夠到達的目標交易價
sqrtRatioNextX96=SqrtPriceMath.getNextSqrtPriceFromInput(
sqrtRatioCurrentX96,
liquidity,
amountRemainingLessFee,
zeroForOne
);
}else{
...
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70016646/viewspace-2937648/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 阿凡達泰山眾籌開發系統丨阿凡達泰山眾籌系統開發(詳情版)丨阿凡達泰山眾籌原始碼開發原始碼
- 泰山眾籌(阿凡達)系統開發成熟及方案丨泰山眾籌阿凡達開發原始碼功能原始碼
- Avatar阿凡達泰山眾籌商城開發上線版丨Avatar阿凡達泰山眾籌商城系統開發(開發原始碼)原始碼
- 阿凡達(泰山眾籌)開發案例版丨阿凡達(泰山眾籌)系統開發(規則及原始碼)原始碼
- 泰山眾籌阿凡達avatar開發功能丨泰山眾籌阿凡達avatar系統開發流程及原始碼分析原始碼
- 泰山眾籌(阿凡達4.0)系統開發流程及分析丨泰山眾籌(阿凡達4.0)開發原始碼功能原始碼
- 泰山眾籌阿凡達(avatar)開發詳細丨泰山眾籌阿凡達(avatar)系統開發(開發及原始碼)原始碼
- 阿凡達泰山眾籌商城開發(系統)丨阿凡達泰山眾籌系統開發(開發穩定版)
- 阿凡達泰山眾籌開發(功能)丨阿凡達泰山眾籌系統開發(成熟方案及案例)
- 阿凡達泰山眾籌開發原理丨阿凡達泰山眾籌系統開發(方案及詳細)
- Avatar阿凡達(泰山眾籌)系統開發技術詳情及方案原始碼原始碼
- 泰山眾籌(阿凡達)開發邏輯丨泰山眾籌(阿凡達)系統開發成熟案例及原始碼分析原始碼
- 泰山眾籌4.0阿凡達開發原理丨泰山眾籌4.0阿凡達系統開發詳細技術及原始碼分析原始碼
- 深入分析阿凡達(泰山眾籌4.0)系統開發技術詳情及邏輯原始碼原始碼
- 阿凡達泰山眾籌開發正式版丨阿凡達泰山眾籌系統開發流程及原始碼(web3.0技術開發)原始碼Web
- 深入分析阿凡達Avatar泰山眾籌系統開發詳細方案及案例原始碼原始碼
- Avatar阿凡達泰山眾籌開發案例版丨Avatar阿凡達泰山眾籌系統開發(開發邏輯及方案)
- 阿凡達(Avatar)泰山眾籌商城系統開發技術詳細及案例
- 深入分析:Avatar阿凡達泰山眾籌系統開發
- 什麼是阿凡達泰山眾籌系統開發丨阿凡達泰山眾籌系統開發(dapp開發技術)APP
- 泰山眾籌商城系統開發(實現方案)丨泰山眾籌商城開發原始碼及功能原始碼
- 阿凡達泰山眾籌系統開發Avata模式模式
- 阿凡達Sun4眾籌開發系統搭建|泰山眾籌模式系統原始碼部署模式原始碼
- 泰山眾籌4.0商城開發詳情丨泰山眾籌4.0商城系統開發實現技術案例及原始碼原始碼
- 泰山眾籌阿凡達系統開發模式邏輯模式
- Avatar阿凡達泰山眾籌開發|眾籌系統DAPP開發技術APP
- AVATAR阿凡達合約系統?區塊鏈阿凡達泰山眾籌專案邏輯系統開發功能及原始碼區塊鏈原始碼
- 阿凡達(泰山眾籌)智慧合約DAPP系統開發詳情 | DAPP智慧合約眾籌系統原始碼邏輯規則APP原始碼
- 關於泰山眾籌4.0/阿凡達眾籌系統/技術開發
- 泰山眾籌商城開發、泰山眾籌DAPP系統開發、泰山眾籌原始碼部署開發APP原始碼
- sun4.0泰山眾籌系統開發(模式案例)|阿凡達泰山眾籌sun開發方案模式
- 區塊鏈泰山眾籌商城開發原始碼版丨區塊鏈泰山眾籌系統開發(方案及功能)區塊鏈原始碼
- 阿凡達Avata泰山眾籌系統開發技術搭建
- Avatar阿凡達泰山眾籌系統開發(模式)|Avatar阿凡達需求方案部署模式
- 眾籌app商城開發詳細,眾籌app商城系統開發(原始碼部署),眾籌商城系統原始碼功能APP原始碼
- 泰山眾籌系統丨及泰山眾籌系統開發原始碼部署(技術開發流程)泰山眾籌原始碼
- 泰山&眾籌互助區塊鏈商城dapp系統開發功能詳情區塊鏈APP
- 拼團眾籌商城開發運營版丨拼團眾籌商城系統開發(詳情及案例原始碼)原始碼