UNPKG

@electra.finance/contracts

Version:
2,246 lines (2,245 loc) 73.9 kB
[ { "inputs": [], "name": "DELEGATION_REQUEST_TYPEHASH", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "DOMAIN_NAME", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "DOMAIN_SALT", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "DOMAIN_SEPARATOR", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "DOMAIN_VERSION", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "EIP712_DOMAIN_TYPEHASH", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "INTERNAL_TRANSFER_TYPEHASH", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "LIQUIDATION_ORDER_TYPEHASH", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "MULTI_LIQUIDATION_ORDER_TYPEHASH", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "ORDER_TYPEHASH", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "PRICE_INFO_TYPEHASH", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "accountsWithOpenPositionLength", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "string[12]", "name": "ticker", "type": "string[12]" }, { "internalType": "uint8", "name": "leverage", "type": "uint8" }, { "internalType": "int256", "name": "dailyFRLong", "type": "int256" }, { "internalType": "int256", "name": "dailyFRShort", "type": "int256" } ], "name": "addInstrument", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "matcher", "type": "address" } ], "name": "allowedMatchers", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint64", "name": "chainId", "type": "uint64" } ], "name": "approveCustomNetwork", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "balances", "outputs": [ { "internalType": "int112", "name": "", "type": "int112" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "derivedAccount", "type": "address" }, { "internalType": "uint64", "name": "derivedAccountSalt", "type": "uint64" }, { "internalType": "uint64", "name": "nonce", "type": "uint64" }, { "internalType": "uint64", "name": "chainId", "type": "uint64" }, { "internalType": "uint64", "name": "signerChainId", "type": "uint64" }, { "internalType": "bytes", "name": "externalAddress", "type": "bytes" }, { "internalType": "bytes", "name": "derivedAccountSignature", "type": "bytes" } ], "internalType": "struct CFDStructs.ExternalAddressBinding", "name": "binding", "type": "tuple" } ], "name": "bindExternalAccount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "derivedAccount", "type": "address" }, { "internalType": "uint64", "name": "derivedAccountSalt", "type": "uint64" }, { "internalType": "uint64", "name": "nonce", "type": "uint64" }, { "internalType": "uint64", "name": "chainId", "type": "uint64" }, { "internalType": "uint64", "name": "signerChainId", "type": "uint64" }, { "internalType": "bytes", "name": "externalAddress", "type": "bytes" }, { "internalType": "bytes", "name": "derivedAccountSignature", "type": "bytes" } ], "internalType": "struct CFDStructs.ExternalAddressBinding", "name": "binding", "type": "tuple" }, { "components": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint112", "name": "amount", "type": "uint112" }, { "internalType": "uint64", "name": "expiration", "type": "uint64" }, { "internalType": "uint64", "name": "nonce", "type": "uint64" }, { "internalType": "uint64", "name": "chainId", "type": "uint64" }, { "internalType": "uint64", "name": "signerChainId", "type": "uint64" }, { "internalType": "bytes32", "name": "uniqueHash", "type": "bytes32" }, { "internalType": "bytes", "name": "externalAddress", "type": "bytes" }, { "internalType": "bytes", "name": "signature", "type": "bytes" } ], "internalType": "struct CFDStructs.InternalTransferV2", "name": "initialDeposit", "type": "tuple" } ], "name": "bindExternalAccountWithDeposit", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "components": [ { "internalType": "uint16", "name": "index", "type": "uint16" }, { "internalType": "uint80", "name": "price", "type": "uint80" } ], "internalType": "struct CFDStructs.PriceInfo[]", "name": "prices", "type": "tuple[]" }, { "internalType": "bool", "name": "checkPrices", "type": "bool" } ], "name": "calculateMarginLevel", "outputs": [ { "internalType": "int112", "name": "marginLevel", "type": "int112" }, { "internalType": "int112", "name": "equity", "type": "int112" }, { "internalType": "int112", "name": "margin", "type": "int112" }, { "internalType": "int112[]", "name": "pnls", "type": "int112[]" }, { "internalType": "int112[]", "name": "frs", "type": "int112[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "trader", "type": "address" }, { "internalType": "bool", "name": "isSetDelegate", "type": "bool" }, { "internalType": "uint88", "name": "deadline", "type": "uint88" }, { "internalType": "address", "name": "delegate", "type": "address" }, { "internalType": "bytes", "name": "signature", "type": "bytes" } ], "internalType": "struct CFDStructs.DelegationRequest", "name": "request", "type": "tuple" } ], "name": "changeDelegateFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "trader", "type": "address" }, { "internalType": "bool", "name": "isSetDelegate", "type": "bool" }, { "internalType": "uint88", "name": "deadline", "type": "uint88" }, { "internalType": "address", "name": "delegate", "type": "address" }, { "internalType": "bytes", "name": "signature", "type": "bytes" } ], "internalType": "struct CFDStructs.DelegationRequest", "name": "request", "type": "tuple" }, { "internalType": "uint64", "name": "chainId", "type": "uint64" } ], "name": "changeDelegateWithChainId", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "index", "type": "uint256" }, { "internalType": "string[12]", "name": "ticker", "type": "string[12]" }, { "internalType": "uint8", "name": "leverage", "type": "uint8" }, { "internalType": "int256", "name": "dailyFRLong", "type": "int256" }, { "internalType": "int256", "name": "dailyFRShort", "type": "int256" } ], "name": "changeInstrument", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "derivedAccount", "type": "address" }, { "internalType": "uint64", "name": "derivedAccountSalt", "type": "uint64" }, { "internalType": "uint64", "name": "nonce", "type": "uint64" }, { "internalType": "uint64", "name": "chainId", "type": "uint64" }, { "internalType": "uint64", "name": "signerChainId", "type": "uint64" }, { "internalType": "bytes", "name": "externalAddress", "type": "bytes" }, { "internalType": "bytes", "name": "derivedAccountSignature", "type": "bytes" } ], "internalType": "struct CFDStructs.ExternalAddressBinding", "name": "binding", "type": "tuple" } ], "name": "checkAddressBindingSignature", "outputs": [ { "internalType": "bytes32", "name": "digest", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "trader", "type": "address" }, { "internalType": "bool", "name": "isSetDelegate", "type": "bool" }, { "internalType": "uint88", "name": "deadline", "type": "uint88" }, { "internalType": "address", "name": "delegate", "type": "address" }, { "internalType": "bytes", "name": "signature", "type": "bytes" } ], "internalType": "struct CFDStructs.DelegationRequest", "name": "delegationRequest", "type": "tuple" } ], "name": "checkDelegationRequest", "outputs": [ { "internalType": "bytes32", "name": "delegationRequestDigest", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "trader", "type": "address" }, { "internalType": "bool", "name": "isSetDelegate", "type": "bool" }, { "internalType": "uint88", "name": "deadline", "type": "uint88" }, { "internalType": "address", "name": "delegate", "type": "address" }, { "internalType": "bytes", "name": "signature", "type": "bytes" } ], "internalType": "struct CFDStructs.DelegationRequest", "name": "delegationRequest", "type": "tuple" }, { "internalType": "uint64", "name": "chainId", "type": "uint64" } ], "name": "checkDelegationRequestWithChainId", "outputs": [ { "internalType": "bytes32", "name": "delegationRequestDigest", "type": "bytes32" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint112", "name": "amount", "type": "uint112" }, { "internalType": "uint64", "name": "expiration", "type": "uint64" }, { "internalType": "uint64", "name": "nonce", "type": "uint64" }, { "internalType": "uint64", "name": "chainId", "type": "uint64" }, { "internalType": "uint192", "name": "reserved", "type": "uint192" }, { "internalType": "bytes", "name": "signature", "type": "bytes" } ], "internalType": "struct CFDStructs.InternalTransfer", "name": "internalTransfer", "type": "tuple" } ], "name": "checkInternalTransfer", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint112", "name": "amount", "type": "uint112" }, { "internalType": "uint64", "name": "expiration", "type": "uint64" }, { "internalType": "uint64", "name": "nonce", "type": "uint64" }, { "internalType": "uint64", "name": "chainId", "type": "uint64" }, { "internalType": "uint64", "name": "signerChainId", "type": "uint64" }, { "internalType": "bytes32", "name": "uniqueHash", "type": "bytes32" }, { "internalType": "bytes", "name": "externalAddress", "type": "bytes" }, { "internalType": "bytes", "name": "signature", "type": "bytes" } ], "internalType": "struct CFDStructs.InternalTransferV2", "name": "internalTransfer", "type": "tuple" } ], "name": "checkInternalTransferV2", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "accountToLiquidate", "type": "address" }, { "internalType": "address", "name": "liquidator", "type": "address" }, { "components": [ { "internalType": "uint16", "name": "index", "type": "uint16" }, { "internalType": "uint80", "name": "price", "type": "uint80" } ], "internalType": "struct CFDStructs.PriceInfo[]", "name": "liquidationPrices", "type": "tuple[]" }, { "components": [ { "internalType": "uint16", "name": "index", "type": "uint16" }, { "internalType": "uint80", "name": "price", "type": "uint80" } ], "internalType": "struct CFDStructs.PriceInfo[]", "name": "prices", "type": "tuple[]" }, { "internalType": "uint64", "name": "liquidationTimestamp", "type": "uint64" }, { "internalType": "uint64", "name": "expiration", "type": "uint64" }, { "internalType": "bytes", "name": "signature", "type": "bytes" } ], "internalType": "struct CFDStructs.MultiLiquidationOrder", "name": "liquidationOrder", "type": "tuple" } ], "name": "checkLiquidationOrder", "outputs": [], "stateMutability": "view", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "accountToLiquidate", "type": "address" }, { "internalType": "address", "name": "liquidator", "type": "address" }, { "internalType": "uint16", "name": "index", "type": "uint16" }, { "components": [ { "internalType": "uint16", "name": "index", "type": "uint16" }, { "internalType": "uint80", "name": "price", "type": "uint80" } ], "internalType": "struct CFDStructs.PriceInfo[]", "name": "prices", "type": "tuple[]" }, { "internalType": "uint64", "name": "liquidationTimestamp", "type": "uint64" }, { "internalType": "uint64", "name": "expiration", "type": "uint64" }, { "internalType": "bytes", "name": "signature", "type": "bytes" } ], "internalType": "struct CFDStructs.LiquidationOrder", "name": "liquidationOrder", "type": "tuple" } ], "name": "checkLiquidationOrder", "outputs": [], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "int112", "name": "marginLevel", "type": "int112" } ], "name": "checkMarginWithOraclePrices", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" }, { "internalType": "int112", "name": "", "type": "int112" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "senderAddress", "type": "address" }, { "internalType": "address", "name": "matcherAddress", "type": "address" }, { "internalType": "uint16", "name": "instrumentIndex", "type": "uint16" }, { "internalType": "uint96", "name": "amount", "type": "uint96" }, { "internalType": "uint80", "name": "price", "type": "uint80" }, { "internalType": "uint64", "name": "matcherFee", "type": "uint64" }, { "internalType": "uint64", "name": "expiration", "type": "uint64" }, { "internalType": "uint8", "name": "buySide", "type": "uint8" }, { "internalType": "bool", "name": "isFromDelegate", "type": "bool" }, { "internalType": "bytes", "name": "signature", "type": "bytes" } ], "internalType": "struct CFDStructs.Order", "name": "buyOrder", "type": "tuple" }, { "components": [ { "internalType": "address", "name": "senderAddress", "type": "address" }, { "internalType": "address", "name": "matcherAddress", "type": "address" }, { "internalType": "uint16", "name": "instrumentIndex", "type": "uint16" }, { "internalType": "uint96", "name": "amount", "type": "uint96" }, { "internalType": "uint80", "name": "price", "type": "uint80" }, { "internalType": "uint64", "name": "matcherFee", "type": "uint64" }, { "internalType": "uint64", "name": "expiration", "type": "uint64" }, { "internalType": "uint8", "name": "buySide", "type": "uint8" }, { "internalType": "bool", "name": "isFromDelegate", "type": "bool" }, { "internalType": "bytes", "name": "signature", "type": "bytes" } ], "internalType": "struct CFDStructs.Order", "name": "sellOrder", "type": "tuple" }, { "internalType": "address", "name": "buyOrderSigner", "type": "address" }, { "internalType": "address", "name": "sellOrderSigner", "type": "address" }, { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "uint256", "name": "filledAmount", "type": "uint256" }, { "internalType": "uint256", "name": "filledPrice", "type": "uint256" }, { "internalType": "uint256", "name": "currentTime", "type": "uint256" }, { "internalType": "address", "name": "allowedMatcher", "type": "address" }, { "internalType": "uint256", "name": "instrumentsLength", "type": "uint256" } ], "name": "checkOrdersInfo", "outputs": [ { "internalType": "bytes32", "name": "buyOrderDigest", "type": "bytes32" }, { "internalType": "bytes32", "name": "sellOrderDigest", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "senderAddress", "type": "address" }, { "internalType": "uint80", "name": "price", "type": "uint80" }, { "internalType": "uint16", "name": "instrumentIndex", "type": "uint16" }, { "internalType": "address", "name": "matcherAddress", "type": "address" }, { "internalType": "uint80", "name": "price2", "type": "uint80" }, { "internalType": "bool", "name": "isFromDelegate", "type": "bool" }, { "internalType": "uint8", "name": "buySide", "type": "uint8" }, { "internalType": "uint96", "name": "amount", "type": "uint96" }, { "internalType": "uint64", "name": "matcherFee", "type": "uint64" }, { "internalType": "uint64", "name": "expiration", "type": "uint64" }, { "internalType": "uint8", "name": "orderType", "type": "uint8" }, { "internalType": "uint64", "name": "signerChainId", "type": "uint64" }, { "internalType": "bytes", "name": "signature", "type": "bytes" } ], "internalType": "struct CFDStructs.OrderV2", "name": "buyOrder", "type": "tuple" }, { "components": [ { "internalType": "address", "name": "senderAddress", "type": "address" }, { "internalType": "uint80", "name": "price", "type": "uint80" }, { "internalType": "uint16", "name": "instrumentIndex", "type": "uint16" }, { "internalType": "address", "name": "matcherAddress", "type": "address" }, { "internalType": "uint80", "name": "price2", "type": "uint80" }, { "internalType": "bool", "name": "isFromDelegate", "type": "bool" }, { "internalType": "uint8", "name": "buySide", "type": "uint8" }, { "internalType": "uint96", "name": "amount", "type": "uint96" }, { "internalType": "uint64", "name": "matcherFee", "type": "uint64" }, { "internalType": "uint64", "name": "expiration", "type": "uint64" }, { "internalType": "uint8", "name": "orderType", "type": "uint8" }, { "internalType": "uint64", "name": "signerChainId", "type": "uint64" }, { "internalType": "bytes", "name": "signature", "type": "bytes" } ], "internalType": "struct CFDStructs.OrderV2", "name": "sellOrder", "type": "tuple" }, { "internalType": "address", "name": "buyOrderSigner", "type": "address" }, { "internalType": "address", "name": "sellOrderSigner", "type": "address" }, { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "uint256", "name": "filledAmount", "type": "uint256" }, { "internalType": "uint256", "name": "filledPrice", "type": "uint256" }, { "internalType": "uint256", "name": "currentTime", "type": "uint256" }, { "internalType": "address", "name": "allowedMatcher", "type": "address" }, { "internalType": "uint256", "name": "instrumentsLength", "type": "uint256" } ], "name": "checkOrdersV2Info", "outputs": [ { "internalType": "bytes32", "name": "buyOrderDigest", "type": "bytes32" }, { "internalType": "bytes32", "name": "sellOrderDigest", "type": "bytes32" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "collateral", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "customStopOutLevel", "outputs": [ { "internalType": "int112", "name": "", "type": "int112" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "trader", "type": "address" } ], "name": "delegateFromTimeout", "outputs": [ { "internalType": "uint88", "name": "timeLeft", "type": "uint88" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "trader", "type": "address" }, { "internalType": "bytes", "name": "call_data", "type": "bytes" } ], "name": "delegatedAction", "outputs": [ { "internalType": "bytes", "name": "", "type": "bytes" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "trader", "type": "address" } ], "name": "delegations", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "deleteInstrument", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint112", "name": "amount", "type": "uint112" } ], "name": "depositAsset", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint112", "name": "amount", "type": "uint112" }, { "internalType": "address", "name": "to", "type": "address" } ], "name": "depositAssetTo", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "facetAddress", "type": "address" }, { "internalType": "enum IDiamondCut.FacetCutAction", "name": "action", "type": "uint8" }, { "internalType": "bytes4[]", "name": "functionSelectors", "type": "bytes4[]" } ], "internalType": "struct IDiamondCut.FacetCut[]", "name": "diamondCut_", "type": "tuple[]" }, { "internalType": "address", "name": "init_", "type": "address" }, { "internalType": "bytes", "name": "calldata_", "type": "bytes" } ], "name": "diamondCut", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes4", "name": "_functionSelector", "type": "bytes4" } ], "name": "facetAddress", "outputs": [ { "internalType": "address", "name": "facetAddress_", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "facetAddresses", "outputs": [ { "internalType": "address[]", "name": "facetAddresses_", "type": "address[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_facet", "type": "address" } ], "name": "facetFunctionSelectors", "outputs": [ { "internalType": "bytes4[]", "name": "facetFunctionSelectors_", "type": "bytes4[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "facets", "outputs": [ { "components": [ { "internalType": "address", "name": "facetAddress", "type": "address" }, { "internalType": "bytes4[]", "name": "functionSelectors", "type": "bytes4[]" } ], "internalType": "struct IDiamondLoupe.Facet[]", "name": "facets_", "type": "tuple[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "senderAddress", "type": "address" }, { "internalType": "address", "name": "matcherAddress", "type": "address" }, { "internalType": "uint16", "name": "instrumentIndex", "type": "uint16" }, { "internalType": "uint96", "name": "amount", "type": "uint96" }, { "internalType": "uint80", "name": "price", "type": "uint80" }, { "internalType": "uint64", "name": "matcherFee", "type": "uint64" }, { "internalType": "uint64", "name": "expiration", "type": "uint64" }, { "internalType": "uint8", "name": "buySide", "type": "uint8" }, { "internalType": "bool", "name": "isFromDelegate", "type": "bool" }, { "internalType": "bytes", "name": "signature", "type": "bytes" } ], "internalType": "struct CFDStructs.Order", "name": "buyOrder", "type": "tuple" }, { "components": [ { "internalType": "address", "name": "senderAddress", "type": "address" }, { "internalType": "address", "name": "matcherAddress", "type": "address" }, { "internalType": "uint16", "name": "instrumentIndex", "type": "uint16" }, { "internalType": "uint96", "name": "amount", "type": "uint96" }, { "internalType": "uint80", "name": "price", "type": "uint80" }, { "internalType": "uint64", "name": "matcherFee", "type": "uint64" }, { "internalType": "uint64", "name": "expiration", "type": "uint64" }, { "internalType": "uint8", "name": "buySide", "type": "uint8" }, { "internalType": "bool", "name": "isFromDelegate", "type": "bool" }, { "internalType": "bytes", "name": "signature", "type": "bytes" } ], "internalType": "struct CFDStructs.Order", "name": "sellOrder", "type": "tuple" }, { "internalType": "uint80", "name": "filledPrice", "type": "uint80" }, { "internalType": "uint96", "name": "filledAmount", "type": "uint96" } ], "name": "fillOrders", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "senderAddress", "type": "address" }, { "internalType": "uint80", "name": "price", "type": "uint80" }, { "internalType": "uint16", "name": "instrumentIndex", "type": "uint16" }, { "internalType": "address", "name": "matcherAddress", "type": "address" }, { "internalType": "uint80", "name": "price2", "type": "uint80" }, { "internalType": "bool", "name": "isFromDelegate", "type": "bool" }, { "internalType": "uint8", "name": "buySide", "type": "uint8" }, { "internalType": "uint96", "name": "amount", "type": "uint96" }, { "internalType": "uint64", "name": "matcherFee", "type": "uint64" }, { "internalType": "uint64", "name": "expiration", "type": "uint64" }, { "internalType": "uint8", "name": "orderType", "type": "uint8" }, { "internalType": "uint64", "name": "signerChainId", "type": "uint64" }, { "internalType": "bytes", "name": "signature", "type": "bytes" } ], "internalType": "struct CFDStructs.OrderV2", "name": "buyOrder", "type": "tuple" }, { "components": [ { "internalType": "address", "name": "senderAddress", "type": "address" }, { "internalType": "uint80", "name": "price", "type": "uint80" }, { "internalType": "uint16", "name": "instrumentIndex", "type": "uint16" }, { "internalType": "address", "name": "matcherAddress", "type": "address" }, { "internalType": "uint80", "name": "price2", "type": "uint80" }, { "internalType": "bool", "name": "isFromDelegate", "type": "bool" }, { "internalType": "uint8", "name": "buySide", "type": "uint8" }, { "internalType": "uint96", "name": "amount", "type": "uint96" }, { "internalType": "uint64", "name": "matcherFee", "type": "uint64" }, { "internalType": "uint64", "name": "expiration", "type": "uint64" }, { "internalType": "uint8", "name": "orderType", "type": "uint8" }, { "internalType": "uint64", "name": "signerChainId", "type": "uint64" }, { "internalType": "bytes", "name": "signature", "type": "bytes" } ], "internalType": "struct CFDStructs.OrderV2", "name": "sellOrder", "type": "tuple" }, { "internalType": "uint80", "name": "filledPrice", "type": "uint80" }, { "internalType": "uint96", "name": "filledAmount", "type": "uint96" } ], "name": "fillOrdersV2", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "orderHash", "type": "bytes32" } ], "name": "filledAmounts", "outputs": [ { "internalType": "uint96", "name": "", "type": "uint96" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "fundingRateAccount", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "index", "type": "uint256" } ], "name": "getAccountFR", "outputs": [ { "internalType": "int112", "name": "fundingRate", "type": "int112" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "offset", "type": "uint256" }, { "internalType": "uint256", "name": "limit", "type": "uint256" } ], "name": "getAccountsWithOpenPositions", "outputs": [ { "internalType": "address[]", "name": "", "type": "address[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "getActiveInstrumentsIndexes", "outputs": [ { "internalType": "uint256[]", "name": "", "type": "uint256[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "getActiveInstrumentsPositions", "outputs": [ { "internalType": "uint256[]", "name": "indexes", "type": "uint256[]" }, { "components": [ { "internalType": "int112", "name": "position", "type": "int112" }, { "internalType": "int112", "name": "frAccumulated", "type": "int112" }, { "internalType": "uint32", "name": "positionLastUpdate", "type": "uint32" }, { "internalType": "uint80", "name": "positionAvgPrice", "type": "uint80" }, { "internalType": "int72", "name": "positionLongFRStored", "type": "int72" }, { "internalType": "int72", "name": "positionShortFRStored", "type": "int72" } ], "internalType": "struct CFDStructs.PositionInfo[]", "name": "positions", "type": "tuple[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "index", "type": "uint256" } ], "name": "getAssetPrice", "outputs": [ { "internalType": "int112", "name": "price", "type": "int112" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "address", "name": "trader", "type": "address" }, { "internalType": "bool", "name": "isSetDelegate", "type": "bool" }, { "internalType": "uint88", "name": "deadline", "type": "uint88" }, { "internalType": "address", "name": "delegate", "type": "address" }, { "internalType": "bytes", "name": "signature", "type": "bytes" } ], "internalType": "struct CFDStructs.DelegationRequest", "name": "delegationRequest", "type": "tuple" } ], "name": "getDelegationRequestTypeValueHash", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "derivedAccount", "type": "address" } ], "name": "getDerivedAccountBinding", "outputs": [ { "internalType": "bytes", "name": "externalAddress", "type": "bytes" }, { "internalType": "uint64", "name": "bindingTimestamp", "type": "uint64" }, { "internalType": "uint64", "name": "derivedAccountSalt", "type": "uint64" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "chainId_", "type": "uint256" } ], "name": "getDomainSeparatorForChainId", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getEIP712DomainData", "outputs": [ { "internalType": "string", "name": "name", "type": "string" }, { "internalType": "string", "name": "version", "type": "string" }, { "internalType": "uint256", "name": "chainId", "type": "uint256" }, { "internalType": "bytes32", "name": "salt", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes", "name": "externalAddress", "type": "bytes" } ], "name": "getExternalAccountBinding", "outputs": [ { "internalType": "address", "name": "derivedAccount", "type": "address" }, { "internalType": "uint64", "name": "bindingTimestamp", "type": "uint64" }, {