coindesk

package
v0.0.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 30, 2024 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Asset

type Asset string

Asset is a cryptocurrency, like Bitcoin, Ethereum, etc.

const (
	BTC      Asset = "BTC"
	ETH      Asset = "ETH"
	XRP      Asset = "XRP"
	BCH      Asset = "BCH"
	EOS      Asset = "EOS"
	XLM      Asset = "XLM"
	LTC      Asset = "LTC"
	ADA      Asset = "ADA"
	XMR      Asset = "XMR"
	DASH     Asset = "DASH"
	IOTA     Asset = "IOTA"
	TRX      Asset = "TRX"
	NEO      Asset = "NEO"
	ETC      Asset = "ETC"
	XEM      Asset = "XEM"
	ZEC      Asset = "ZEC"
	BTG      Asset = "BTG"
	LSK      Asset = "LSK"
	QTUM     Asset = "QTUM"
	BSV      Asset = "BSV"
	DOGE     Asset = "DOGE"
	DCR      Asset = "DCR"
	USDT     Asset = "USDT"
	USDC     Asset = "USDC"
	LINK     Asset = "LINK"
	XTZ      Asset = "XTZ"
	ZRX      Asset = "ZRX"
	DAI      Asset = "DAI"
	BAT      Asset = "BAT"
	OXT      Asset = "OXT"
	ALGO     Asset = "ALGO"
	ATOM     Asset = "ATOM"
	KNC      Asset = "KNC"
	OMG      Asset = "OMG"
	ANT      Asset = "ANT"
	REP      Asset = "REP"
	BAND     Asset = "BAND"
	BTT      Asset = "BTT"
	MANA     Asset = "MANA"
	FET      Asset = "FET"
	ICX      Asset = "ICX"
	KAVA     Asset = "KAVA"
	LRC      Asset = "LRC"
	MKR      Asset = "MKR"
	MLN      Asset = "MLN"
	NANO     Asset = "NANO"
	NMR      Asset = "NMR"
	PAXG     Asset = "PAXG"
	USDP     Asset = "USDP"
	SC       Asset = "SC"
	STORJ    Asset = "STORJ"
	WAVES    Asset = "WAVES"
	FIL      Asset = "FIL"
	CVC      Asset = "CVC"
	DNT      Asset = "DNT"
	REN      Asset = "REN"
	BNT      Asset = "BNT"
	WBTC     Asset = "WBTC"
	GRT      Asset = "GRT"
	UNI      Asset = "UNI"
	DOT      Asset = "DOT"
	YFI      Asset = "YFI"
	AAVE     Asset = "AAVE"
	MATIC    Asset = "MATIC"
	AMP      Asset = "AMP"
	CELO     Asset = "CELO"
	COMP     Asset = "COMP"
	CRV      Asset = "CRV"
	RLC      Asset = "RLC"
	KSM      Asset = "KSM"
	NKN      Asset = "NKN"
	SHIB     Asset = "SHIB"
	SKL      Asset = "SKL"
	SNX      Asset = "SNX"
	LUNC     Asset = "LUNC"
	UMA      Asset = "UMA"
	ICP      Asset = "ICP"
	SOL      Asset = "SOL"
	AVAX     Asset = "AVAX"
	UST      Asset = "UST"
	ENJ      Asset = "ENJ"
	IOTX     Asset = "IOTX"
	AXS      Asset = "AXS"
	XYO      Asset = "XYO"
	SUSHI    Asset = "SUSHI"
	ANKR     Asset = "ANKR"
	CHZ      Asset = "CHZ"
	LPT      Asset = "LPT"
	COTI     Asset = "COTI"
	KEEP     Asset = "KEEP"
	SAND     Asset = "SAND"
	GALA     Asset = "GALA"
	APE      Asset = "APE"
	CRO      Asset = "CRO"
	ACHP     Asset = "ACHP"
	JASMY    Asset = "JASMY"
	REQ      Asset = "REQ"
	SLP      Asset = "SLP"
	NEAR     Asset = "NEAR"
	MBOX     Asset = "MBOX"
	POLIS    Asset = "POLIS"
	MOVR     Asset = "MOVR"
	POLS     Asset = "POLS"
	QUICK    Asset = "QUICK"
	MINA     Asset = "MINA"
	IMX      Asset = "IMX"
	XEC      Asset = "XEC"
	NEXO     Asset = "NEXO"
	RUNE     Asset = "RUNE"
	QNT      Asset = "QNT"
	VET      Asset = "VET"
	CAKE     Asset = "CAKE"
	BNB      Asset = "BNB"
	THETA    Asset = "THETA"
	HBAR     Asset = "HBAR"
	FTM      Asset = "FTM"
	RVN      Asset = "RVN"
	ZIL      Asset = "ZIL"
	DGB      Asset = "DGB"
	FTT      Asset = "FTT"
	ENS      Asset = "ENS"
	WRX      Asset = "WRX"
	WAXP     Asset = "WAXP"
	EGLD     Asset = "EGLD"
	BUSD     Asset = "BUSD"
	CEL      Asset = "CEL"
	OP       Asset = "OP"
	LUNA     Asset = "LUNA"
	RAY      Asset = "RAY"
	FLOW     Asset = "FLOW"
	AUDIO    Asset = "AUDIO"
	CKB      Asset = "CKB"
	VGX      Asset = "VGX"
	YGG      Asset = "YGG"
	CHR      Asset = "CHR"
	STMX     Asset = "STMX"
	SXP      Asset = "SXP"
	INJ      Asset = "INJ"
	JOE      Asset = "JOE"
	POLY     Asset = "POLY"
	STX      Asset = "STX"
	SFP      Asset = "SFP"
	FARM     Asset = "FARM"
	XVG      Asset = "XVG"
	CLV      Asset = "CLV"
	WOO      Asset = "WOO"
	GLMR     Asset = "GLMR"
	STEEM    Asset = "STEEM"
	RARE     Asset = "RARE"
	IDEX     Asset = "IDEX"
	SRM      Asset = "SRM"
	PYR      Asset = "PYR"
	MIR      Asset = "MIR"
	SYS      Asset = "SYS"
	ALPACA   Asset = "ALPACA"
	QSP      Asset = "QSP"
	SCRT     Asset = "SCRT"
	SUN      Asset = "SUN"
	APT      Asset = "APT"
	MASK     Asset = "MASK"
	DYDX     Asset = "DYDX"
	CVX      Asset = "CVX"
	GMT      Asset = "GMT"
	CTSI     Asset = "CTSI"
	METIS    Asset = "METIS"
	FORTH    Asset = "FORTH"
	RBN      Asset = "RBN"
	SAMO     Asset = "SAMO"
	SPELL    Asset = "SPELL"
	LDO      Asset = "LDO"
	ARB      Asset = "ARB"
	BLUR     Asset = "BLUR"
	GAS      Asset = "GAS"
	RACA     Asset = "RACA"
	BABYDOGE Asset = "BABYDOGE"
	FLOKI    Asset = "FLOKI"
	HOT      Asset = "HOT"
	BFC      Asset = "BFC"
	KISHU    Asset = "KISHU"
	ELON     Asset = "ELON"
	SAITAMA  Asset = "SAITAMA"
	REEF     Asset = "REEF"
	CEEK     Asset = "CEEK"
	ATLAS    Asset = "ATLAS"
	LOOKS    Asset = "LOOKS"
	WIN      Asset = "WIN"
	ONE      Asset = "ONE"
	DENT     Asset = "DENT"
	GST      Asset = "GST"
	TWT      Asset = "TWT"
	HNT      Asset = "HNT"
	AGLD     Asset = "AGLD"
	BTRST    Asset = "BTRST"
	ETHW     Asset = "ETHW"
	ILV      Asset = "ILV"
	RARI     Asset = "RARI"
	STG      Asset = "STG"
	SYN      Asset = "SYN"
	TOKE     Asset = "TOKE"
	BLZ      Asset = "BLZ"
	FLR      Asset = "FLR"
	FIS      Asset = "FIS"
	GNS      Asset = "GNS"
	ID       Asset = "ID"
	PEPE     Asset = "PEPE"
	DIA      Asset = "DIA"
	TLM      Asset = "TLM"
	XCN      Asset = "XCN"
	BIT      Asset = "BIT"
	RPL      Asset = "RPL"
	RNDR     Asset = "RNDR"
	ONEINCH  Asset = "1INCH"
	BAL      Asset = "BAL"
	T        Asset = "T"
	GNO      Asset = "GNO"
	ASTR     Asset = "ASTR"
	GLM      Asset = "GLM"
	OCEAN    Asset = "OCEAN"
	BICO     Asset = "BICO"
	CELR     Asset = "CELR"
	LQTY     Asset = "LQTY"
	TRAC     Asset = "TRAC"
	ZEN      Asset = "ZEN"
	API3     Asset = "API3"
	PLA      Asset = "PLA"
	AXL      Asset = "AXL"
	HFT      Asset = "HFT"
	MC       Asset = "MC"
	C98      Asset = "C98"
	GAL      Asset = "GAL"
	GTC      Asset = "GTC"
	RAD      Asset = "RAD"
	POWR     Asset = "POWR"
	POND     Asset = "POND"
	ALICE    Asset = "ALICE"
	TRU      Asset = "TRU"
	OGN      Asset = "OGN"
	DAR      Asset = "DAR"
	BADGER   Asset = "BADGER"
	GHST     Asset = "GHST"
	LCX      Asset = "LCX"
	ARPA     Asset = "ARPA"
	MXC      Asset = "MXC"
	PERP     Asset = "PERP"
	LOKA     Asset = "LOKA"
	BOBA     Asset = "BOBA"
	BOND     Asset = "BOND"
	ALCX     Asset = "ALCX"
	KP3R     Asset = "KP3R"
	TON      Asset = "TON"
	AR       Asset = "AR"
	AVA      Asset = "AVA"
	BONE     Asset = "BONE"
	BONK     Asset = "BONK"
	CORE     Asset = "CORE"
	CSPR     Asset = "CSPR"
	DG       Asset = "DG"
	ERN      Asset = "ERN"
	FXS      Asset = "FXS"
	GMX      Asset = "GMX"
	GT       Asset = "GT"
	GUSD     Asset = "GUSD"
	HMT      Asset = "HMT"
	HT       Asset = "HT"
	KCS      Asset = "KCS"
	KLAY     Asset = "KLAY"
	LEO      Asset = "LEO"
	MPL      Asset = "MPL"
	OKB      Asset = "OKB"
	PIT      Asset = "PIT"
	OSMO     Asset = "OSMO"
	RLY      Asset = "RLY"
	SANTOS   Asset = "SANTOS"
	SUI      Asset = "SUI"
	SWEAT    Asset = "SWEAT"
	TUSD     Asset = "TUSD"
	TVK      Asset = "TVK"
	UNFI     Asset = "UNFI"
	USDD     Asset = "USDD"
	VLX      Asset = "VLX"
	WEMIX    Asset = "WEMIX"
	XDC      Asset = "XDC"
	XRD      Asset = "XRD"
	FB       Asset = "FB"
	BRISE    Asset = "BRISE"
	KAS      Asset = "KAS"
	XEN      Asset = "XEN"
	HAM      Asset = "HAM"
	TAMA     Asset = "TAMA"
	KDA      Asset = "KDA"
	CFX      Asset = "CFX"
	VRA      Asset = "VRA"
	BDX      Asset = "BDX"
	RDNT     Asset = "RDNT"
	WLD      Asset = "WLD"
	AGIX     Asset = "AGIX"
	PYUSD    Asset = "PYUSD"
	MOON     Asset = "MOON"
	SEI      Asset = "SEI"
	AKT      Asset = "AKT"
	MAGIC    Asset = "MAGIC"
	SNT      Asset = "SNT"
	ALPHA    Asset = "ALPHA"
	ALI      Asset = "ALI"
	CQT      Asset = "CQT"
	HIGH     Asset = "HIGH"
	AERGO    Asset = "AERGO"
	GODS     Asset = "GODS"
	ZBC      Asset = "ZBC"
	ACA      Asset = "ACA"
	MDT      Asset = "MDT"
	LIT      Asset = "LIT"
	QI       Asset = "QI"
	AURORA   Asset = "AURORA"
	TOMI     Asset = "TOMI"
	XCH      Asset = "XCH"
	MANTA    Asset = "MANTA"
	PYTH     Asset = "PYTH"
	STRK     Asset = "STRK"
	ETHFI    Asset = "ETHFI"
	TIA      Asset = "TIA"
	EETH     Asset = "EETH"
)

type AssetTicker

type AssetTicker struct {
	ISO    Asset  `json:"iso"`
	Name   string `json:"name"`
	Slug   string `json:"slug"`
	Change struct {
		Percent float64 `json:"percent"`
		Value   float64 `json:"value"`
	} `json:"change"`
	OHLC struct {
		Opening Price `json:"o"`
		High    Price `json:"h"`
		Low     Price `json:"l"`
		Closing Price `json:"c"`
	} `json:"ohlc"`
	CirculatingSupply float64   `json:"circulatingSupply"`
	MarketCap         Price     `json:"marketCap"`
	Timestamp         Timestamp `json:"ts"`
}

AssetTicker is a snapshot of pricing data for an asset.

type AssetTickers

type AssetTickers map[Asset]AssetTicker

AssetTickers is a map from an asset to its ticker data.

type Date

type Date time.Time

Date represents a date-only string which has been converted into a Golang time.Time object.

func (*Date) UnmarshalJSON

func (d *Date) UnmarshalJSON(b []byte) error

type Price

type Price float64

Price represents the USD price of an asset.

type PriceValues

type PriceValues struct {
	ISO            Asset            `json:"iso"`
	Name           string           `json:"name"`
	Slug           string           `json:"slug"`
	IngestionStart Date             `json:"ingestionStart"`
	Entries        []TimestampPrice `json:"entries"`
}

PriceValues contains a series of timestamped prices for a particular asset.

type Response

type Response[T any] struct {
	StatusCode int    `json:"statusCode"`
	Message    string `json:"message"`
	Data       T      `json:"data"`
}

Response represents the general top-level format of Coindesk API responses.

func GetAssetTickers

func GetAssetTickers(ctx context.Context, assets ...Asset) (resp Response[AssetTickers], err error)

GetAssetTickers gets tickers for a set of assets.

func GetPriceValues

func GetPriceValues(
	ctx context.Context, asset Asset, startDate, endDate time.Time,
) (resp Response[PriceValues], err error)

GetPriceValues gets timestamped prices for a particular asset.

type Timestamp

type Timestamp time.Time

Timestamp represents an integer Unix timestamp expressed in milliseconds which has been converted into a Golang time.Time object.

func (*Timestamp) UnmarshalJSON

func (t *Timestamp) UnmarshalJSON(b []byte) error

type TimestampPrice

type TimestampPrice struct {
	Timestamp Timestamp
	Price     Price
}

TimestampPrice represents a JSON array with two elements: an integer Unix timestamp expressed in milliseconds, and a floating-point USD price.

func (*TimestampPrice) UnmarshalJSON

func (t *TimestampPrice) UnmarshalJSON(b []byte) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL