ICollateralManager.sol
1 pragma solidity >=0.6.0; 2 pragma experimental ABIEncoderV2; 3 4 import "./IOptionsExchange.sol"; 5 6 interface ICollateralManager { 7 function calcCollateral(IOptionsExchange.OptionData calldata opt, uint volume) external view returns (uint); 8 function calcIntrinsicValue(IOptionsExchange.OptionData calldata opt) external view returns (int value); 9 function calcCollateral(address owner, bool is_regular) external view returns (uint); 10 function calcExpectedPayout(address owner) external view returns (int payout); 11 function calcDelta(IOptionsExchange.OptionData calldata opt, uint volume) external view returns (int256); 12 function calcGamma(IOptionsExchange.OptionData calldata opt, uint volume) external view returns (int256); 13 function borrowTokensByPreference(address to, address pool, uint value, address[] calldata tokensInOrder, uint[] calldata amountsOutInOrder) external; 14 function borrowCreditFromPool(address to, address pool, uint value) external; 15 function liquidateExpired(address _tk, address[] calldata owners) external; 16 function liquidateOptions(address _tk, address owner) external returns (uint value); 17 }