Documentation ¶
Index ¶
- type IService
- type Service
- func (s *Service) FormatAccount(id *big.Int) (*models.Account, error)
- func (s *Service) FormatAccounts() ([]*models.Account, error)
- func (s *Service) FormatAccountsLimit(limit uint64) ([]*models.Account, error)
- func (s *Service) GetAccountLastInteraction(accountId *big.Int) (*big.Int, error)
- func (s *Service) GetAccountOwner(accountId *big.Int) (string, error)
- func (s *Service) GetAvailableMargin(accountId *big.Int) (*big.Int, error)
- func (s *Service) GetCollateralAmount(accountId *big.Int, marketId *big.Int) (*big.Int, error)
- func (s *Service) GetCollateralPrice(blockNumber *big.Int, collateralType common.Address) (*models.CollateralPrice, error)
- func (s *Service) GetFoundingRate(marketId *big.Int) (*big.Int, error)
- func (s *Service) GetFundingParameters(marketId *big.Int) (*models.FundingParameters, error)
- func (s *Service) GetLiquidationParameters(marketId *big.Int) (*models.LiquidationParameters, error)
- func (s *Service) GetMarketIDs() ([]*big.Int, error)
- func (s *Service) GetMarketMetadata(marketID *big.Int) (*models.MarketMetadata, error)
- func (s *Service) GetMarketSummary(marketID *big.Int) (*models.MarketSummary, error)
- func (s *Service) GetPoolConfiguration(poolID *big.Int) (*models.PoolConfiguration, error)
- func (s *Service) GetPoolName(poolID *big.Int) (string, error)
- func (s *Service) GetPosition(accountID *big.Int, marketID *big.Int) (*models.Position, error)
- func (s *Service) GetRequiredMaintenanceMargin(accountId *big.Int) (*big.Int, error)
- func (s *Service) GetVaultCollateral(poolID *big.Int, collateralType common.Address) (amount *big.Int, value *big.Int, err error)
- func (s *Service) GetVaultDebt(poolID *big.Int, collateralType common.Address) (*big.Int, error)
- func (s *Service) RetrieveAccountLiquidationsLimit(limit uint64) ([]*models.AccountLiquidated, error)
- func (s *Service) RetrieveCollateralDepositedLimit(limit uint64) ([]*models.CollateralDeposited, error)
- func (s *Service) RetrieveCollateralWithdrawnLimit(limit uint64) ([]*models.CollateralWithdrawn, error)
- func (s *Service) RetrieveDelegationUpdatedLimit(limit uint64) ([]*models.DelegationUpdated, error)
- func (s *Service) RetrieveLiquidations(fromBlock uint64, toBLock *uint64) ([]*models.Liquidation, error)
- func (s *Service) RetrieveLiquidationsLimit(limit uint64) ([]*models.Liquidation, error)
- func (s *Service) RetrieveMarketRegistered(limit uint64) ([]*models.MarketRegistered, error)
- func (s *Service) RetrieveMarketUSDDepositedLimit(limit uint64) ([]*models.MarketUSDDeposited, error)
- func (s *Service) RetrieveMarketUSDWithdrawnLimit(limit uint64) ([]*models.MarketUSDWithdrawn, error)
- func (s *Service) RetrieveMarketUpdates(fromBlock uint64, toBLock *uint64) ([]*models.MarketUpdate, error)
- func (s *Service) RetrieveMarketUpdatesBig(fromBlock uint64, toBLock *uint64) ([]*models.MarketUpdateBig, error)
- func (s *Service) RetrieveMarketUpdatesBigLimit(limit uint64) ([]*models.MarketUpdateBig, error)
- func (s *Service) RetrieveMarketUpdatesLimit(limit uint64) ([]*models.MarketUpdate, error)
- func (s *Service) RetrieveOrders(fromBlock uint64, toBLock *uint64) ([]*models.Order, error)
- func (s *Service) RetrieveOrdersLimit(limit uint64) ([]*models.Order, error)
- func (s *Service) RetrievePoolCreated(limit uint64) ([]*models.PoolCreated, error)
- func (s *Service) RetrieveRewardClaimedLimit(limit uint64) ([]*models.RewardClaimed, error)
- func (s *Service) RetrieveRewardDistributedLimit(limit uint64) ([]*models.RewardDistributed, error)
- func (s *Service) RetrieveTrades(fromBlock uint64, toBLock *uint64) ([]*models.Trade, error)
- func (s *Service) RetrieveTradesLimit(limit uint64) ([]*models.Trade, error)
- func (s *Service) RetrieveUSDBurnedLimit(limit uint64) ([]*models.USDBurned, error)
- func (s *Service) RetrieveUSDMintedLimit(limit uint64) ([]*models.USDMinted, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type IService ¶
type IService interface { // RetrieveTrades is used to get logs from the "OrderSettled" event preps market contract within given block range RetrieveTrades(fromBlock uint64, toBLock *uint64) ([]*models.Trade, error) // RetrieveTradesLimit is used to get all trades and their additional data from the contract with given block search // limit. For most public RPC providers the value for limit is 20 000 blocks RetrieveTradesLimit(limit uint64) ([]*models.Trade, error) // RetrieveOrders is used to get logs from the "OrderCommitted" event preps market contract within given block range RetrieveOrders(fromBlock uint64, toBLock *uint64) ([]*models.Order, error) // RetrieveOrdersLimit is used to get all orders and their additional data from the contract with given block search // limit. For most public RPC providers the value for limit is 20 000 blocks RetrieveOrdersLimit(limit uint64) ([]*models.Order, error) // RetrieveMarketUpdates is used to get logs from the "MarketUpdated" event preps market contract within given block // range RetrieveMarketUpdates(fromBlock uint64, toBLock *uint64) ([]*models.MarketUpdate, error) // RetrieveMarketUpdatesBig is used to get logs from the "MarketUpdated" event preps market contract within given block // range and return model with big.Int values RetrieveMarketUpdatesBig(fromBlock uint64, toBLock *uint64) ([]*models.MarketUpdateBig, error) // RetrieveMarketUpdatesLimit is used to get all market updates and their additional data from the contract with given block search // limit. For most public RPC providers the value for limit is 20 000 blocks RetrieveMarketUpdatesLimit(limit uint64) ([]*models.MarketUpdate, error) // RetrieveMarketUpdatesBigLimit is used to get logs from the "MarketUpdated" event preps market contract within given block // range and return the model with big.Int values RetrieveMarketUpdatesBigLimit(limit uint64) ([]*models.MarketUpdateBig, error) // RetrieveLiquidations is used to get logs from the "PositionLiquidated" event preps market contract within given block // range RetrieveLiquidations(fromBlock uint64, toBLock *uint64) ([]*models.Liquidation, error) // RetrieveLiquidationsLimit is used to get all liquidations and their additional data from the contract with given block search // limit. For most public RPC providers the value for limit is 20 000 blocks RetrieveLiquidationsLimit(limit uint64) ([]*models.Liquidation, error) // RetrieveAccountLiquidationsLimit is used to get all account liquidated events from the contract with given block search // limit. For most public RPC providers the value for limit is 20 000 blocks RetrieveAccountLiquidationsLimit(limit uint64) ([]*models.AccountLiquidated, error) // RetrieveUSDMintedLimit is used to get all `usdMinted` events from the Core contract with given block search // limit. For most public RPC providers the value for limit is 20 000 blocks RetrieveUSDMintedLimit(limit uint64) ([]*models.USDMinted, error) // RetrieveUSDBurnedLimit is used to get all `usdBurned` events from the Core contract with given block search // limit. For most public RPC providers the value for limit is 20 000 blocks RetrieveUSDBurnedLimit(limit uint64) ([]*models.USDBurned, error) // RetrieveDelegationUpdatedLimit is used to get all `DelegationUpdated` events from the Core contract with given block search // limit. For most public RPC providers the value for limit is 20 000 blocks RetrieveDelegationUpdatedLimit(limit uint64) ([]*models.DelegationUpdated, error) // RetrieveCollateralWithdrawnLimit is used to get all `Withdrawn` events from the Core contract with given block search // limit. For most public RPC providers the value for limit is 20 000 blocks RetrieveCollateralWithdrawnLimit(limit uint64) ([]*models.CollateralWithdrawn, error) // RetrieveCollateralDepositedLimit is used to get all `Deposited` events from the Core contract with given block search // limit. For most public RPC providers the value for limit is 20 000 blocks RetrieveCollateralDepositedLimit(limit uint64) ([]*models.CollateralDeposited, error) // RetrieveRewardClaimedLimit is used to get all `RewardClaimed` events from the Core contract with given block search // limit. For most public RPC providers the value for limit is 20 000 blocks RetrieveRewardClaimedLimit(limit uint64) ([]*models.RewardClaimed, error) // RetrieveRewardDistributedLimit is used to get all `RewardDistributed` events from the Core contract with given block search // limit. For most public RPC providers the value for limit is 20 000 blocks RetrieveRewardDistributedLimit(limit uint64) ([]*models.RewardDistributed, error) // RetrieveMarketUSDDepositedLimit is used to get all `MarketUSDDeposited` events from the Core contract with given block search // limit. For most public RPC providers the value for limit is 20 000 blocks RetrieveMarketUSDDepositedLimit(limit uint64) ([]*models.MarketUSDDeposited, error) // RetrieveMarketUSDWithdrawnLimit is used to get all `MarketUSDWithdrawn` events from the Core contract with given block search // limit. For most public RPC providers the value for limit is 20 000 blocks RetrieveMarketUSDWithdrawnLimit(limit uint64) ([]*models.MarketUSDWithdrawn, error) // RetrieveMarketRegistered is used to get all `MarketRegistered` events from the Core contract with given block search // limit. For most public RPC providers the value for limit is 20 000 blocks RetrieveMarketRegistered(limit uint64) ([]*models.MarketRegistered, error) // RetrievePoolCreated is used to get all `PoolCreated` events from the Core contract with given block search // limit. For most public RPC providers the value for limit is 20 000 blocks RetrievePoolCreated(limit uint64) ([]*models.PoolCreated, error) // GetPosition is used to get "Position" data struct from the latest block from the perps market with given data GetPosition(accountID *big.Int, marketID *big.Int) (*models.Position, error) // GetMarketMetadata is used to get market metadata by given market ID GetMarketMetadata(marketID *big.Int) (*models.MarketMetadata, error) // GetMarketSummary is used to get market summary by given market ID GetMarketSummary(marketID *big.Int) (*models.MarketSummary, error) // GetMarketIDs is used to get market IDs from the smart contract GetMarketIDs() ([]*big.Int, error) // GetFoundingRate is used to get current founding rate by given market ID GetFoundingRate(marketId *big.Int) (*big.Int, error) // GetAvailableMargin is used to get available margin for given account ID GetAvailableMargin(accountId *big.Int) (*big.Int, error) // GetLiquidationParameters is used to get liquidation params for given market ID GetLiquidationParameters(marketId *big.Int) (*models.LiquidationParameters, error) // GetFundingParameters is used to get funding params for given market ID GetFundingParameters(marketId *big.Int) (*models.FundingParameters, error) // GetAccountLastInteraction is used to get accounts last interaction for given account ID GetAccountLastInteraction(accountId *big.Int) (*big.Int, error) // GetAccountOwner is used to get accounts owner address for given account ID GetAccountOwner(accountId *big.Int) (string, error) // GetCollateralAmount is used to get accounts collateral amount for given market ID GetCollateralAmount(accountId *big.Int, marketId *big.Int) (*big.Int, error) // GetRequiredMaintenanceMargin is used to get required maintenance margin for given account ID GetRequiredMaintenanceMargin(accountId *big.Int) (*big.Int, error) // GetCollateralPrice is used to get collateral price for given block number and collateralType GetCollateralPrice(blockNumber *big.Int, collateralType common.Address) (*models.CollateralPrice, error) // GetVaultDebt is used to get vault debt for given pool ID and collateralType GetVaultDebt(poolID *big.Int, collateralType common.Address) (*big.Int, error) // GetVaultCollateral is used to get vault collateral for given pool ID and collateralType GetVaultCollateral(poolID *big.Int, collateralType common.Address) (amount *big.Int, value *big.Int, err error) // GetPoolConfiguration is used to get MarketConfigurations array GetPoolConfiguration(poolID *big.Int) (*models.PoolConfiguration, error) // GetPoolName is used to get pool name from given PoolID GetPoolName(poolID *big.Int) (string, error) // FormatAccount is used to get account, and it's additional data from the contract by given account id FormatAccount(id *big.Int) (*models.Account, error) // FormatAccounts is used to get all accounts and their additional data from the contract FormatAccounts() ([]*models.Account, error) // FormatAccountsLimit is used to get all accounts and their additional data from the contract with given block search // limit. For most public RPC providers the value for limit is 20 000 blocks FormatAccountsLimit(limit uint64) ([]*models.Account, error) }
IService is a service layer interface
func NewService ¶
func NewService( rpc *ethclient.Client, conf *config.PerpsvConfig, core *core.Core, perps *perpsMarket.PerpsMarket, ) (IService, error)
NewService is used to get instance of Service
type Service ¶
type Service struct {
// contains filtered or unexported fields
}
Service is an implementation of IService interface
func (*Service) FormatAccount ¶ added in v0.1.2
func (*Service) FormatAccounts ¶ added in v0.1.2
func (*Service) FormatAccountsLimit ¶ added in v0.1.2
func (*Service) GetAccountLastInteraction ¶ added in v0.1.21
func (*Service) GetAccountOwner ¶ added in v0.1.21
func (*Service) GetAvailableMargin ¶ added in v0.1.15
func (*Service) GetCollateralAmount ¶ added in v0.3.0
func (*Service) GetCollateralPrice ¶ added in v0.3.10
func (*Service) GetFoundingRate ¶ added in v0.1.12
func (*Service) GetFundingParameters ¶ added in v0.1.17
func (*Service) GetLiquidationParameters ¶ added in v0.1.16
func (*Service) GetMarketMetadata ¶ added in v0.1.6
func (*Service) GetMarketSummary ¶ added in v0.1.7
func (*Service) GetPoolConfiguration ¶ added in v0.7.0
func (*Service) GetPoolName ¶ added in v0.9.0
func (*Service) GetPosition ¶ added in v0.0.2
func (*Service) GetRequiredMaintenanceMargin ¶ added in v0.1.24
func (*Service) GetVaultCollateral ¶ added in v0.6.0
func (*Service) GetVaultDebt ¶ added in v0.6.0
func (*Service) RetrieveAccountLiquidationsLimit ¶ added in v0.1.19
func (s *Service) RetrieveAccountLiquidationsLimit(limit uint64) ([]*models.AccountLiquidated, error)
func (*Service) RetrieveCollateralDepositedLimit ¶ added in v0.3.9
func (s *Service) RetrieveCollateralDepositedLimit(limit uint64) ([]*models.CollateralDeposited, error)
func (*Service) RetrieveCollateralWithdrawnLimit ¶ added in v0.3.9
func (s *Service) RetrieveCollateralWithdrawnLimit(limit uint64) ([]*models.CollateralWithdrawn, error)
func (*Service) RetrieveDelegationUpdatedLimit ¶ added in v0.3.8
func (s *Service) RetrieveDelegationUpdatedLimit(limit uint64) ([]*models.DelegationUpdated, error)
func (*Service) RetrieveLiquidations ¶ added in v0.1.3
func (*Service) RetrieveLiquidationsLimit ¶ added in v0.1.3
func (s *Service) RetrieveLiquidationsLimit(limit uint64) ([]*models.Liquidation, error)
func (*Service) RetrieveMarketRegistered ¶ added in v0.8.0
func (s *Service) RetrieveMarketRegistered(limit uint64) ([]*models.MarketRegistered, error)
func (*Service) RetrieveMarketUSDDepositedLimit ¶ added in v0.6.0
func (s *Service) RetrieveMarketUSDDepositedLimit(limit uint64) ([]*models.MarketUSDDeposited, error)
func (*Service) RetrieveMarketUSDWithdrawnLimit ¶ added in v0.6.0
func (s *Service) RetrieveMarketUSDWithdrawnLimit(limit uint64) ([]*models.MarketUSDWithdrawn, error)
func (*Service) RetrieveMarketUpdates ¶ added in v0.1.1
func (*Service) RetrieveMarketUpdatesBig ¶ added in v0.1.8
func (*Service) RetrieveMarketUpdatesBigLimit ¶ added in v0.1.8
func (s *Service) RetrieveMarketUpdatesBigLimit(limit uint64) ([]*models.MarketUpdateBig, error)
func (*Service) RetrieveMarketUpdatesLimit ¶ added in v0.1.4
func (s *Service) RetrieveMarketUpdatesLimit(limit uint64) ([]*models.MarketUpdate, error)
func (*Service) RetrieveOrders ¶ added in v0.1.0
func (*Service) RetrieveOrdersLimit ¶ added in v0.1.4
func (*Service) RetrievePoolCreated ¶ added in v0.9.0
func (s *Service) RetrievePoolCreated(limit uint64) ([]*models.PoolCreated, error)
func (*Service) RetrieveRewardClaimedLimit ¶ added in v0.4.0
func (s *Service) RetrieveRewardClaimedLimit(limit uint64) ([]*models.RewardClaimed, error)
func (*Service) RetrieveRewardDistributedLimit ¶ added in v0.4.0
func (s *Service) RetrieveRewardDistributedLimit(limit uint64) ([]*models.RewardDistributed, error)
func (*Service) RetrieveTrades ¶
func (*Service) RetrieveTradesLimit ¶ added in v0.1.4
func (*Service) RetrieveUSDBurnedLimit ¶ added in v0.3.8
Click to show internal directories.
Click to hide internal directories.