Documentation ¶
Index ¶
- Constants
- func Exchanges() []string
- func GetSymbolsList(url string) ([]string, error)
- type BlockChain
- type Client
- type ConfigApi
- type ConfigConnector
- type CviDataPoint
- type DefiProtocol
- type DefiProtocolState
- type DefiRate
- type Exchange
- type FilterPoint
- type FiltersBlock
- type FiltersBlockData
- type IndexBlock
- type IndexBlockData
- type IndexElement
- type ItinToken
- type NFT
- type NFTAttributes
- type NFTClass
- type NFTTrade
- type OptionMeta
- type OptionMetaForward
- type OptionMetaIndex
- type OptionOrderbookDatum
- type OptionType
- type Pair
- type Pairs
- type SuppliesBlock
- type SuppliesBlockData
- type Supply
- type Symbols
- type Trade
- type TradesBlock
- type TradesBlockData
- type VerificationMechanism
- type VolatilityRatio
Constants ¶
const ( BalancerExchange = "Balancer" GnosisExchange = "Gnosis" KrakenExchange = "Kraken" BitfinexExchange = "Bitfinex" BinanceExchange = "Binance" FTX = "FTX" Opyn = "OPYN" Premia = "Premia" BitBayExchange = "BitBay" BittrexExchange = "Bittrex" CoinBaseExchange = "CoinBase" HitBTCExchange = "HitBTC" SimexExchange = "Simex" OKExExchange = "OKEx" HuobiExchange = "Huobi" LBankExchange = "LBank" GateIOExchange = "GateIO" ZBExchange = "ZB" QuoineExchange = "Quoine" UnknownExchange = "Unknown" BlockSizeSeconds = 120 FilterKing = "MA120" BancorExchange = "Bancor" UniswapExchange = "Uniswap" UniswapExchangeV3 = "UniswapV3" LoopringExchange = "Loopring" CurveFIExchange = "Curvefi" MakerExchange = "Maker" KuCoinExchange = "KuCoin" SushiSwapExchange = "SushiSwap" PanCakeSwap = "PanCakeSwap" DforceExchange = "Dforce" ZeroxExchange = "0x" KyberExchange = "Kyber" BitMaxExchange = "Bitmax" CREX24Exchange = "CREX24" STEXExchange = "STEX" Deribit = "Deribit" )
const ( Bitcoin = "Bitcoin" Ethereum = "Ethereum" )
const ( Diadata = "diadata.org" PROOF_OF_STAKE VerificationMechanism = "pos" PROOF_OF_WORK VerificationMechanism = "pow" BITCOIN = "Bitcoin" ETHEREUM = "Ethereum" BINANCESMARTCHAIN = "BinanceSmartChain" )
const BaseUrl string = "https://api.diadata.org/"
Variables ¶
This section is empty.
Functions ¶
Types ¶
type BlockChain ¶
type BlockChain struct { Name string GenesisDate time.Time NativeToken string VerificationMechanism VerificationMechanism }
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
func NewClientWithUrl ¶
func (*Client) SendSupply ¶
type ConfigApi ¶
func GetConfigApi ¶
func GetConfigApi() *ConfigApi
type ConfigConnector ¶
type ConfigConnector struct {
Coins []Pair
}
type CviDataPoint ¶
type DefiProtocol ¶
func (*DefiProtocol) MarshalBinary ¶
func (e *DefiProtocol) MarshalBinary() ([]byte, error)
MarshalBinary for DefiProtocol
func (*DefiProtocol) UnmarshalBinary ¶
func (e *DefiProtocol) UnmarshalBinary(data []byte) error
UnmarshalBinary for DefiProtocol
type DefiProtocolState ¶
type DefiProtocolState struct { TotalUSD float64 TotalETH float64 Timestamp time.Time Protocol DefiProtocol }
func (*DefiProtocolState) MarshalBinary ¶
func (e *DefiProtocolState) MarshalBinary() ([]byte, error)
MarshalBinary for DefiProtocolState
func (*DefiProtocolState) UnmarshalBinary ¶
func (e *DefiProtocolState) UnmarshalBinary(data []byte) error
UnmarshalBinary for DefiProtocolState
type DefiRate ¶
type DefiRate struct { Timestamp time.Time LendingRate float64 BorrowingRate float64 Asset string Protocol string }
func (*DefiRate) MarshalBinary ¶
MarshalBinary for DefiRate
func (*DefiRate) UnmarshalBinary ¶
UnmarshalBinary for DefiRate
type FilterPoint ¶
type FiltersBlock ¶
type FiltersBlock struct { BlockHash string FiltersBlockData FiltersBlockData }
func (*FiltersBlock) MarshalBinary ¶
func (e *FiltersBlock) MarshalBinary() ([]byte, error)
MarshalBinary -
func (*FiltersBlock) UnmarshalBinary ¶
func (e *FiltersBlock) UnmarshalBinary(data []byte) error
UnmarshalBinary -
type FiltersBlockData ¶
type IndexBlock ¶
type IndexBlock struct { BlockHash string IndexBlockData IndexBlockData }
func (IndexBlock) Hash ¶
func (ib IndexBlock) Hash() string
func (*IndexBlock) MarshalBinary ¶
func (e *IndexBlock) MarshalBinary() ([]byte, error)
MarshalBinary -
func (*IndexBlock) UnmarshalBinary ¶
func (e *IndexBlock) UnmarshalBinary(data []byte) error
UnmarshalBinary -
type IndexBlockData ¶
type IndexElement ¶
type IndexElement struct { Name string Symbol string Percentage float64 FilteredPoint FilterPoint Supply Supply VolatilityRatio VolatilityRatio }
type ItinToken ¶
type ItinToken struct { Itin string Symbol string Label string Url_website string Coinmarketcap_url string Coinmarketcap_slug string }
func (*ItinToken) MarshalBinary ¶
MarshalBinary -
func (*ItinToken) UnmarshalBinary ¶
UnmarshalBinary -
type NFT ¶
type NFT struct { NFTClass NFTClass TokenID string CreationTime time.Time CreatorAddress common.Address URI string Attributes NFTAttributes }
NFT is the container for a specific NFT defined by the pair (address,tokenID).
func (*NFT) MarshalBinary ¶
MarshalBinary for DefiProtocolState
func (*NFT) UnmarshalBinary ¶
UnmarshalBinary for DefiProtocolState
type NFTAttributes ¶
type NFTAttributes map[string]interface{}
NFTAttributes can be stored as jasonb in postgres: https://www.alexedwards.net/blog/using-postgresql-jsonb
func (*NFTAttributes) Scan ¶
func (a *NFTAttributes) Scan(value interface{}) error
type NFTClass ¶
type NFTClass struct { Address common.Address Symbol string Name string Blockchain string ContractType string Category string }
NFTClass is the container for an nft class defined by a contract (address) on a blockchain.
func (*NFTClass) MarshalBinary ¶
MarshalBinary for DefiProtocolState
func (*NFTClass) UnmarshalBinary ¶
UnmarshalBinary for DefiProtocolState
type NFTTrade ¶
type NFTTrade struct { NFT NFT BlockNumber *big.Int PriceUSD float64 FromAddress common.Address ToAddress common.Address Exchange string }
func (*NFTTrade) MarshalBinary ¶
MarshalBinary for DefiProtocolState
func (*NFTTrade) UnmarshalBinary ¶
UnmarshalBinary for DefiProtocolState
type OptionMeta ¶
type OptionMeta struct { InstrumentName string BaseCurrency string ExpirationTime time.Time StrikePrice float64 OptionType OptionType }
func (*OptionMeta) MarshalBinary ¶
func (e *OptionMeta) MarshalBinary() ([]byte, error)
func (*OptionMeta) UnmarshalBinary ¶
func (e *OptionMeta) UnmarshalBinary(data []byte) error
type OptionMetaForward ¶
type OptionMetaIndex ¶
type OptionMetaIndex struct { OptionMeta OptionOrderbookDatum }
type OptionOrderbookDatum ¶
type OptionType ¶
type OptionType int
const ( CallOption OptionType = iota + 1 PutOption )
signals if the option is call or a put
type SuppliesBlock ¶
type SuppliesBlock struct { BlockHash string BlockData SuppliesBlockData }
func (*SuppliesBlock) MarshalBinary ¶
func (e *SuppliesBlock) MarshalBinary() ([]byte, error)
MarshalBinary -
func (*SuppliesBlock) UnmarshalBinary ¶
func (e *SuppliesBlock) UnmarshalBinary(data []byte) error
UnmarshalBinary -
type SuppliesBlockData ¶
type Supply ¶
type Supply struct { Symbol string Name string Supply float64 CirculatingSupply float64 Source string Time time.Time }
func (*Supply) UnmarshalBinary ¶
UnmarshalBinary -
type Trade ¶
type Trade struct { Symbol string Pair string Price float64 Volume float64 // Quantity of bought/sold units of Quote token. Negative if result of Market order Sell Time time.Time ForeignTradeID string EstimatedUSDPrice float64 // will be filled by the TradeBlock Service Source string }
Trade remark: In a pair A-B, we call A the Quote token and B the Base token
func (*Trade) UnmarshalBinary ¶
UnmarshalBinary -
type TradesBlock ¶
type TradesBlock struct { BlockHash string TradesBlockData TradesBlockData }
func (*TradesBlock) MarshalBinary ¶
func (e *TradesBlock) MarshalBinary() ([]byte, error)
MarshalBinary -
func (*TradesBlock) UnmarshalBinary ¶
func (e *TradesBlock) UnmarshalBinary(data []byte) error
UnmarshalBinary -
type TradesBlockData ¶
type VerificationMechanism ¶
type VerificationMechanism string