CompliFi
Search…
ABIs

Pool Factory

[
{
"inputs": [
{
"internalType": "uint256",
"name": "_index",
"type": "uint256"
}
],
"name": "getPool",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function",
"constant": true
},
{
"inputs": [],
"name": "getLastPoolIndex",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function",
"constant": true
},
{
"inputs": [],
"name": "getAllPools",
"outputs": [
{
"internalType": "address[]",
"name": "",
"type": "address[]"
}
],
"stateMutability": "view",
"type": "function",
"constant": true
}
]

Pool

[
{
"inputs": [],
"name": "version",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [],
"name": "getPoolSharePrice",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_derivativeIndex",
"type": "uint256"
}
],
"name": "getDerivativePrice",
"outputs": [
{
"components": [
{
"internalType": "int256",
"name": "primary",
"type": "int256"
},
{
"internalType": "int256",
"name": "complement",
"type": "int256"
}
],
"internalType": "struct IPoolTypes.PricePair",
"name": "",
"type": "tuple"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "user",
"type": "address"
}
],
"name": "getPortfolioBy",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "user",
"type": "address"
}
],
"name": "checkPortfolioOf",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_portfolioId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_derivativeIndex",
"type": "uint256"
}
],
"name": "derivativeBalanceOf",
"outputs": [
{
"components": [
{
"internalType": "uint256",
"name": "primary",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "complement",
"type": "uint256"
}
],
"internalType": "struct IPoolTypes.Pair",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_portfolioId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_derivativeIndex",
"type": "uint256"
}
],
"name": "derivativeVintageIndexOf",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_owner",
"type": "address"
}
],
"name": "releasedLiquidityOf",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getDerivatives",
"outputs": [
{
"components": [
{
"components": [
{
"internalType": "contract IDerivativeSpecification",
"name": "specification",
"type": "address"
},
{
"internalType": "address[]",
"name": "underlyingOracles",
"type": "address[]"
},
{
"internalType": "address[]",
"name": "underlyingOracleIterators",
"type": "address[]"
},
{
"internalType": "address",
"name": "collateralToken",
"type": "address"
},
{
"internalType": "contract ICollateralSplit",
"name": "collateralSplit",
"type": "address"
}
],
"internalType": "struct IPoolTypes.DerivativeConfig",
"name": "config",
"type": "tuple"
},
{
"internalType": "address",
"name": "terms",
"type": "address"
},
{
"components": [
{
"internalType": "enum IPoolTypes.Mode",
"name": "mode",
"type": "uint8"
},
{
"internalType": "enum IPoolTypes.Side",
"name": "side",
"type": "uint8"
},
{
"internalType": "uint256",
"name": "settlementDelta",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "strikePosition",
"type": "uint256"
}
],
"internalType": "struct IPoolTypes.Sequence",
"name": "sequence",
"type": "tuple"
},
{
"components": [
{
"internalType": "uint256",
"name": "priceReference",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "settlement",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "denomination",
"type": "uint256"
}
],
"internalType": "struct IPoolTypes.DerivativeParams",
"name": "params",
"type": "tuple"
}
],
"internalType": "struct IPoolTypes.Derivative[]",
"name": "",
"type": "tuple[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_derivativeIndex",
"type": "uint256"
}
],
"name": "getDerivativeVintages",
"outputs": [
{
"components": [
{
"components": [
{
"internalType": "uint256",
"name": "primary",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "complement",
"type": "uint256"
}
],
"internalType": "struct IPoolTypes.Pair",
"name": "rollRate",
"type": "tuple"
},
{
"components": [
{
"internalType": "uint256",
"name": "primary",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "complement",
"type": "uint256"
}
],
"internalType": "struct IPoolTypes.Pair",
"name": "releaseRate",
"type": "tuple"
},
{
"internalType": "uint256",
"name": "priceReference",
"type": "uint256"
}
],
"internalType": "struct IPoolTypes.Vintage[]",
"name": "",
"type": "tuple[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getConfig",
"outputs": [
{
"components": [
{
"internalType": "uint256",
"name": "minExitAmount",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "protocolFee",
"type": "uint256"
},
{
"internalType": "address",
"name": "feeWallet",
"type": "address"
},
{
"internalType": "contract IERC20",
"name": "collateralToken",
"type": "address"
},
{
"internalType": "address",
"name": "collateralOracle",
"type": "address"
},
{
"internalType": "contract IOracleIterator",
"name": "collateralOracleIterator",
"type": "address"
},
{
"internalType": "contract IVolatilityEvolution",
"name": "volatilityEvolution",
"type": "address"
},
{
"internalType": "contract IUnderlyingLiquidityValuer",
"name": "underlyingLiquidityValuer",
"type": "address"
},
{
"internalType": "contract IExposure",
"name": "exposure",
"type": "address"
},
{
"internalType": "contract IERC20MintedBurnable",
"name": "poolShare",
"type": "address"
},
{
"internalType": "contract ITraderPortfolio",
"name": "traderPortfolio",
"type": "address"
},
{
"internalType": "uint8",
"name": "collateralDecimals",
"type": "uint8"
}
],
"internalType": "struct IPoolConfigTypes.PoolConfig",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_collateralAmount",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_minPoolShareAmountOut",
"type": "uint256"
},
{
"components": [
{
"internalType": "uint256",
"name": "derivativeIndex",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "collateralRoundHint",
"type": "uint256"
},
{
"internalType": "uint256[]",
"name": "underlyingRoundHintsIndexed",
"type": "uint256[]"
},
{
"internalType": "uint256",
"name": "volatilityRoundHint",
"type": "uint256"
}
],
"internalType": "struct IPoolTypes.RolloverHints[]",
"name": "_rolloverHintsList",
"type": "tuple[]"
}
],
"name": "join",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_collateralAmount",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_minPoolShareAmountOut",
"type": "uint256"
}
],
"name": "joinSimple",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_poolShareAmountIn",
"type": "uint256"
},
{
"components": [
{
"internalType": "uint256",
"name": "derivativeIndex",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "collateralRoundHint",
"type": "uint256"
},
{
"internalType": "uint256[]",
"name": "underlyingRoundHintsIndexed",
"type": "uint256[]"
},
{
"internalType": "uint256",
"name": "volatilityRoundHint",
"type": "uint256"
}
],
"internalType": "struct IPoolTypes.RolloverHints[]",
"name": "_rolloverHintsList",
"type": "tuple[]"
}
],
"name": "exit",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_poolShareAmountIn",
"type": "uint256"
}
],
"name": "exitSimple",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_collateralAmount",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_derivativeIndex",
"type": "uint256"
},
{
"internalType": "enum IPoolTypes.Side",
"name": "_side",
"type": "uint8"
},
{
"internalType": "uint256",
"name": "_minDerivativeAmount",
"type": "uint256"
},
{
"internalType": "bool",
"name": "redeemable",
"type": "bool"
},
{
"components": [
{
"internalType": "uint256",
"name": "derivativeIndex",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "collateralRoundHint",
"type": "uint256"
},
{
"internalType": "uint256[]",
"name": "underlyingRoundHintsIndexed",
"type": "uint256[]"
},
{
"internalType": "uint256",
"name": "volatilityRoundHint",
"type": "uint256"
}
],
"internalType": "struct IPoolTypes.RolloverHints[]",
"name": "_rolloverHintsList",
"type": "tuple[]"
}
],
"name": "buy",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_derivativeAmount",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_derivativeIndex",
"type": "uint256"
},
{
"internalType": "enum IPoolTypes.Side",
"name": "_side",
"type": "uint8"
},
{
"internalType": "uint256",
"name": "_minCollateralAmount",
"type": "uint256"
},
{
"internalType": "bool",
"name": "redeemable",
"type": "bool"
},
{
"components": [
{
"internalType": "uint256",
"name": "derivativeIndex",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "collateralRoundHint",
"type": "uint256"
},
{
"internalType": "uint256[]",
"name": "underlyingRoundHintsIndexed",
"type": "uint256[]"
},
{
"internalType": "uint256",
"name": "volatilityRoundHint",
"type": "uint256"
}
],
"internalType": "struct IPoolTypes.RolloverHints[]",
"name": "_rolloverHintsList",
"type": "tuple[]"
}
],
"name": "sell",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_pointInTime",
"type": "uint256"
}
],
"name": "getOldestDerivativeForRollover",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_pointInTime",
"type": "uint256"
},
{
"components": [
{
"internalType": "uint256",
"name": "derivativeIndex",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "collateralRoundHint",
"type": "uint256"
},
{
"internalType": "uint256[]",
"name": "underlyingRoundHintsIndexed",
"type": "uint256[]"
},
{
"internalType": "uint256",
"name": "volatilityRoundHint",
"type": "uint256"
}
],
"internalType": "struct IPoolTypes.RolloverHints[]",
"name": "_rolloverHintsList",
"type": "tuple[]"
}
],
"name": "rolloverOldestDerivativeBatch",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_collateralAmount",
"type": "uint256"
}
],
"name": "withdrawReleasedLiquidity",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_recipient",
"type": "address"
},
{
"internalType": "uint256",
"name": "_amount",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_derivativeIndex",
"type": "uint256"
},
{
"internalType": "enum IPoolTypes.Side",
"name": "_side",
"type": "uint8"
},
{
"components": [
{
"internalType": "uint256",
"name": "derivativeIndex",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "collateralRoundHint",
"type": "uint256"
},
{
"internalType": "uint256[]",
"name": "underlyingRoundHintsIndexed",
"type": "uint256[]"
},
{
"internalType": "uint256",
"name": "volatilityRoundHint",
"type": "uint256"
}
],
"internalType": "struct IPoolTypes.RolloverHints[]",
"name": "_rolloverHintsList",
"type": "tuple[]"
}
],
"name": "moveDerivative",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
]
Copy link
On this page
Pool Factory
Pool