Versions in this module Expand all Collapse all v0 v0.0.2 Jul 30, 2022 Changes in this version + const OrderStatusParamActive + const OrderStatusParamAll + const OrderStatusParamDone + const OrderStatusParamOpen + const OrderStatusParamPending + const OrderStatusParamReceived + const OrderStatusParamSettled + func Capture(capture *error, deferred error) + func NewCoinbasePro(config *qsx.Config) (qsx.IExchange, error) + type Account struct + Available float64 + Balance float64 + Currency CurrencyName + Hold float64 + ID string + ProfileID string + TradingEnabled bool + type AccountType string + const CoinbaseAccountTypeFiat + const CoinbaseAccountTypeWallet + type AddressInfo struct + Address string + DestinationTag string + type AggregatedBookEntry struct + NumOrders int + Price string + Size string + func (a *AggregatedBookEntry) UnmarshalJSON(b []byte) error + type AggregatedOrderBook struct + Asks []AggregatedBookEntry + Bids []AggregatedBookEntry + Sequence int + type AmountOfCurrency struct + Amount float64 + Currency CurrencyName + type BookEntry struct + OrderID string + Price string + Size string + func (b *BookEntry) UnmarshalJSON(raw []byte) error + type BookLevel int + const BookLevelBest + const BookLevelFull + const BookLevelTop50 + const BookLevelUndefined + func (p BookLevel) Params() []string + type CancelOrderSpec struct + ClientOrderID string + OrderID string + ProductID ProductID + func (c CancelOrderSpec) Params() []string + func (c CancelOrderSpec) Validate() error + type Candle struct + Close float64 + High float64 + Low float64 + Open float64 + Time Time + Volume float64 + func (c *Candle) UnmarshalJSON(b []byte) error + type ChangeMessage struct + NewSize string + OldSize string + OrderId string + Price string + ProductId string + Sequence int + Side string + Time time.Time + Type string + type Channel struct + Name ChannelName + ProductIDs []ProductID + type ChannelName string + const ChannelNameFull + const ChannelNameHeartbeat + const ChannelNameLevel2 + const ChannelNameMatches + const ChannelNameStatus + const ChannelNameTicker + const ChannelNameUser + type CoinbaseAccount struct + Active bool + Balance float64 + Currency CurrencyName + ID string + Name string + Primary bool + SEPADepositInformation SEPADepositInformation + Type AccountType + WireDepositInformation WireDepositInformation + type CoinbaseAccountDeposit struct + Amount float64 + CoinbaseAccountID string + Currency CurrencyName + type CoinbaseAccountWithdrawalSpec struct + Amount float64 + CoinbaseAccountID string + Currency CurrencyName + type CoinbasePro struct + Conn *websocket.Conn + func (c *CoinbasePro) CancelOrder(ctx context.Context, spec CancelOrderSpec) (map[string]interface{}, error) + func (c *CoinbasePro) CreateCoinbaseAccountDeposit(ctx context.Context, coinbaseAccountDeposit CoinbaseAccountDeposit) (Deposit, error) + func (c *CoinbasePro) CreateCoinbaseAccountWithdrawal(ctx context.Context, coinbaseAccountWithdrawal CoinbaseAccountWithdrawalSpec) (Withdrawal, error) + func (c *CoinbasePro) CreateCryptoAddressWithdrawal(ctx context.Context, cryptoAddressWithdrawal CryptoAddressWithdrawalSpec) (Withdrawal, error) + func (c *CoinbasePro) CreateCryptoDepositAddress(ctx context.Context, coinbaseAccountID string) (CryptoDepositAddress, error) + func (c *CoinbasePro) CreateLimitOrder(ctx context.Context, limitOrder LimitOrder) (Order, error) + func (c *CoinbasePro) CreateMarketOrder(ctx context.Context, marketOrder MarketOrder) (Order, error) + func (c *CoinbasePro) CreatePaymentMethodDeposit(ctx context.Context, paymentMethodDeposit PaymentMethodDepositSpec) (Deposit, error) + func (c *CoinbasePro) CreatePaymentMethodWithdrawal(ctx context.Context, paymentMethodWithdrawal PaymentMethodWithdrawalSpec) (Withdrawal, error) + func (c *CoinbasePro) CreateProfileTransfer(ctx context.Context, transferSpec ProfileTransferSpec) (ProfileTransfer, error) + func (c *CoinbasePro) CreateReport(ctx context.Context, createReportSpec ReportSpec) (Report, error) + func (c *CoinbasePro) CreateStablecoinConversion(ctx context.Context, stablecoinConversionSpec StablecoinConversionSpec) (StablecoinConversion, error) + func (c *CoinbasePro) GetAccount(ctx context.Context, accountID string) (Account, error) + func (c *CoinbasePro) GetAggregatedOrderBook(ctx context.Context, productID ProductID, level BookLevel) (AggregatedOrderBook, error) + func (c *CoinbasePro) GetClientOrder(ctx context.Context, clientID string) (Order, error) + func (c *CoinbasePro) GetCurrency(ctx context.Context, currencyName CurrencyName) (Currency, error) + func (c *CoinbasePro) GetDeposit(ctx context.Context, depositID string) (Deposit, error) + func (c *CoinbasePro) GetDeposits(ctx context.Context, filter DepositFilter, pagination PaginationParams) (Deposits, error) + func (c *CoinbasePro) GetFees(ctx context.Context) (Fees, error) + func (c *CoinbasePro) GetFills(ctx context.Context, filter FillFilter, pagination PaginationParams) (Fills, error) + func (c *CoinbasePro) GetHistoricRates(ctx context.Context, productID string, filter HistoricRateFilter) (HistoricRates, error) + func (c *CoinbasePro) GetHistoricalCandles(ctx context.Context, productID string, granularity string) ([]qsx.Candle, error) + func (c *CoinbasePro) GetHolds(ctx context.Context, accountID string, pagination PaginationParams) (Holds, error) + func (c *CoinbasePro) GetLedger(ctx context.Context, accountID string, pagination PaginationParams) (Ledger, error) + func (c *CoinbasePro) GetLimits(ctx context.Context) (Limits, error) + func (c *CoinbasePro) GetOrder(ctx context.Context, orderID string) (Order, error) + func (c *CoinbasePro) GetOrderBook(ctx context.Context, productID ProductID) (OrderBook, error) + func (c *CoinbasePro) GetOrders(ctx context.Context, filter OrderFilter, pagination PaginationParams) (Orders, error) + func (c *CoinbasePro) GetProduct(ctx context.Context, productID ProductID) (Product, error) + func (c *CoinbasePro) GetProductStats(ctx context.Context, productID ProductID) (ProductStats, error) + func (c *CoinbasePro) GetProductTicker(ctx context.Context, productID ProductID) (ProductTicker, error) + func (c *CoinbasePro) GetProductTrades(ctx context.Context, productID ProductID, pagination PaginationParams) (ProductTrades, error) + func (c *CoinbasePro) GetProfile(ctx context.Context, profileID string) (Profile, error) + func (c *CoinbasePro) GetReport(ctx context.Context, reportID string) (Report, error) + func (c *CoinbasePro) GetServerTime(ctx context.Context) (ServerTime, error) + func (c *CoinbasePro) GetWithdrawal(ctx context.Context, withdrawalID string) (Withdrawal, error) + func (c *CoinbasePro) GetWithdrawalFeeEstimate(ctx context.Context, cryptoAddress CryptoAddress) (WithdrawalFeeEstimate, error) + func (c *CoinbasePro) GetWithdrawals(ctx context.Context, filter WithdrawalFilter, pagination PaginationParams) (Withdrawals, error) + func (c *CoinbasePro) ListAccounts(ctx context.Context) ([]Account, error) + func (c *CoinbasePro) ListCoinbaseAccounts(ctx context.Context) ([]CoinbaseAccount, error) + func (c *CoinbasePro) ListCoinbaseProducts(ctx context.Context) ([]Product, error) + func (c *CoinbasePro) ListCurrencies(ctx context.Context) ([]Currency, error) + func (c *CoinbasePro) ListPaymentMethods(ctx context.Context) ([]PaymentMethod, error) + func (c *CoinbasePro) ListProducts(ctx context.Context) ([]qsx.Product, error) + func (c *CoinbasePro) ListProfiles(ctx context.Context, filter ProfileFilter) ([]Profile, error) + func (c *CoinbasePro) Watch(shutdown chan struct{}, wg *sync.WaitGroup, ...) (*orderbook.Orderbook, error) + func (c *CoinbasePro) WatchFeed(shutdown chan struct{}, wg *sync.WaitGroup, product string, feed interface{}) (*orderbook.Orderbook, error) + type Country struct + Code string + Name string + type CryptoAddress struct + CryptoAddress string + Currency CurrencyName + func (c CryptoAddress) Params() []string + type CryptoAddressWithdrawalSpec struct + AddNetworkFeeToTotal bool + Amount float64 + CryptoAddress string + Currency CurrencyName + DestinationTag string + NoDestinationTag bool + type CryptoDepositAddress struct + Address string + AddressInfo AddressInfo + CreatedAt Time + DepositURI string + DestinationTag string + ExchangeDepositAddress bool + ID string + Network string + Resource string + UpdatedAt Time + type CryptoWithdrawal struct + Amount float64 + Currency CurrencyName + Fee float64 + ID string + Subtotal float64 + type Currency struct + ConvertibleTo []CurrencyName + Details CurrencyDetails + ID string + MaxPrecision float64 + Message string + MinSize float64 + Name string + Status string + type CurrencyDetails map[string]interface + type CurrencyLimit map[CurrencyName]Limit + type CurrencyName string + type Deposit struct + AccountID string + Amount float64 + CanceledAt *Time + CompletedAt *Time + CreatedAt Time + Currency CurrencyName + Details DepositDetails + ID string + ProcessedAt *Time + Type DepositType + UserID string + UserNonce string + type DepositDetails map[string]interface + type DepositFilter struct + ProfileID string + Type DepositType + func (d *DepositFilter) Params() []string + type DepositType string + const DepositTypeDeposit + const DepositTypeInternal + func (d DepositType) Valid() error + type Deposits struct + Deposits []*Deposit + Page *Pagination + type Error struct + Message string + StatusCode int + func (e Error) Error() string + type Feed struct + Heartbeat chan HeartbeatMessage + Level2 chan L2UpdateMessage + Level2Snap chan L2SnapshotMessage + Matches chan MatchMessage + Messages chan []byte + Status chan StatusMessage + Subscriptions chan SubscriptionRequest + Ticker chan TickerMessage + TickerBatch chan TickerMessage + func NewFeed() *Feed + type Fees struct + MakerFeeRate float64 + TakerFeeRate float64 + USDVolume float64 + type Fill struct + CreatedAt Time + Fee float64 + Liquidity LiquidityType + OrderID string + Price float64 + ProductID ProductID + Settled bool + Side Side + Size float64 + TradeID int64 + type FillFilter struct + OrderID string + ProductID ProductID + func (f FillFilter) Params() []string + type Fills struct + Fills []*Fill + Page *Pagination + type HeartbeatMessage struct + LastTradeId int + ProductId string + Sequence int + Time time.Time + Type string + type HistoricRateFilter struct + End Time + Granularity TimePeriod + Start Time + func (h *HistoricRateFilter) Params() []string + type HistoricRates struct + Candles []*Candle + func (h *HistoricRates) UnmarshalJSON(b []byte) error + type Hold struct + AccountID string + Amount float64 + CreatedAt Time + Ref string + Type HoldType + UpdatedAt Time + type HoldType string + const HoldTypeOpenOrders + const HoldTypeWithdrawal + type Holds struct + Holds []*Hold + Page *Pagination + type L2SnapshotMessage struct + Asks [][]string + Bids [][]string + ProductId string + Type string + type L2UpdateMessage struct + Changes [][]string + ProductId string + Time time.Time + Type string + type Ledger struct + Entries []*LedgerEntry + Page *Pagination + type LedgerDetails struct + OrderID string + ProductID string + TradeID string + type LedgerEntry struct + Amount float64 + Balance float64 + CreatedAt Time + Details LedgerDetails + ID string + Type LedgerEntryType + type LedgerEntryType string + const LedgerEntryTypeConversion + const LedgerEntryTypeFee + const LedgerEntryTypeMatch + const LedgerEntryTypeRebate + type Limit struct + Max float64 + PeriodInDays int + Remaining float64 + type LimitOrder struct + CancelAfter string + ClientOrderID string + PostOnly bool + Price float64 + ProductID ProductID + SelfTradePrevention SelfTrade + Side Side + Size float64 + Stop Stop + StopPrice *float64 + TimeInForce TimeInForce + Type OrderType + func (l *LimitOrder) Validate() error + type LimitOrderSpecific struct + CancelAfter string + PostOnly bool + Price float64 + Size float64 + TimeInForce TimeInForce + type Limits struct + LimitCurrency CurrencyName + TransferLimits map[string]CurrencyLimit + type LiquidityType string + const LiquidityTypeMaker + const LiquidityTypeTaker + type MarketOrder struct + ClientOrderID string + Funds *float64 + ProductID ProductID + SelfTradePrevention SelfTrade + Side Side + Size *float64 + Stop Stop + StopPrice *float64 + Type OrderType + func (m *MarketOrder) Validate() error + type MarketOrderSpecific struct + Funds float64 + Size float64 + type MatchMessage struct + MakerOrderId string + Price string + ProductId string + Sequence int + Side string + Size string + TakerOrderId string + Time time.Time + TradeId int + Type string + type MessageType string + const MessageTypeActivate + const MessageTypeAuction + const MessageTypeChange + const MessageTypeDone + const MessageTypeError + const MessageTypeHeartbeat + const MessageTypeL2Update + const MessageTypeMatch + const MessageTypeOpen + const MessageTypeReceived + const MessageTypeSnapshot + const MessageTypeStatus + const MessageTypeSubscribe + const MessageTypeSubscriptions + const MessageTypeTicker + const MessageTypeUnsubscribe + type Order struct + CreatedAt Time + DoneAt Time + DoneReason string + ExecutedValue *float64 + FillFees *float64 + FilledSize *float64 + Funds *float64 + ID string + PostOnly bool + ProductID ProductID + SelfTradePrevention SelfTrade + Settled bool + Side Side + Size float64 + SpecifiedFunds *float64 + Status OrderStatus + Type OrderType + type OrderBook struct + Asks []BookEntry + Bids []BookEntry + Sequence int + type OrderFilter struct + ProductID ProductID + Status []OrderStatusParam + func (o OrderFilter) Params() []string + func (o OrderFilter) Validate() error + type OrderStatus string + const OrderStatusActive + const OrderStatusDone + const OrderStatusOpen + const OrderStatusPending + const OrderStatusReceived + const OrderStatusSettled + type OrderStatusParam OrderStatus + func (o OrderStatusParam) Validate() error + type OrderType string + const OrderTypeLimit + const OrderTypeMarket + type Orders struct + Orders []*Order + Page *Pagination + type Pagination struct + After string + Before string + func (p *Pagination) NotEmpty() bool + type PaginationParams struct + After string + Before string + Limit int + func (p PaginationParams) Params() []string + func (p PaginationParams) Validate() error + type PaymentMethod struct + AllowBuy bool + AllowDeposit bool + AllowSell bool + Currency CurrencyName + ID string + Limits PaymentMethodLimits + Name string + PrimaryBuy bool + PrimarySell bool + Type string + type PaymentMethodDeposit struct + Amount float64 + Currency CurrencyName + ID string + type PaymentMethodDepositSpec struct + Amount float64 + Currency CurrencyName + PaymentMethodID string + type PaymentMethodLimit struct + PeriodInDays int + Remaining AmountOfCurrency + Total AmountOfCurrency + type PaymentMethodLimits struct + Buy []PaymentMethodLimit + Deposit []PaymentMethodLimit + InstantBuy []PaymentMethodLimit + Sell []PaymentMethodLimit + type PaymentMethodWithdrawalSpec struct + Amount float64 + Currency CurrencyName + PaymentMethodID string + type Product struct + AuctionMode bool + BaseCurrency CurrencyName + BaseIncrement string + BaseMaxSize string + BaseMinSize string + CancelOnly bool + DisplayName string + ID string + LimitOnly bool + MarginEnabled bool + MaxMarketFunds string + MinMarketFunds string + PostOnly bool + QuoteCurrency CurrencyName + QuoteIncrement string + Status ProductStatus + StatusMessage string + type ProductID string + type ProductStats struct + High float64 + Last float64 + Low float64 + Open float64 + Volume float64 + Volume30Day float64 + type ProductStatus string + type ProductTicker struct + Ask float64 + Bid float64 + Price float64 + Size float64 + Time Time + TradeID int + Volume float64 + type ProductTrade struct + Price float64 + Side Side + Size float64 + Time Time + TradeID int + type ProductTrades struct + Page *Pagination + Trades []*ProductTrade + func (p *ProductTrades) UnmarshalJSON(b []byte) error + type Profile struct + Active bool + CreatedAt Time + ID string + IsDefault bool + Name string + UserID string + type ProfileFilter struct + Active bool + func (p ProfileFilter) Params() []string + type ProfileTransfer struct + Amount float64 + Currency CurrencyName + From string + To string + type ProfileTransferSpec struct + Amount float64 + Currency CurrencyName + From string + To string + type Report struct + CompletedAt Time + CreatedAt Time + ExpiresAt Time + FileURL string + ID string + Params ReportDateRange + Status ReportStatus + Type ReportType + type ReportDateRange struct + EndDate Time + StartDate Time + type ReportFormat string + const ReportFormatCSV + const ReportFormatPDF + type ReportSpec struct + AccountID string + Email string + EndDate Time + Format ReportFormat + ProductID ProductID + StartDate Time + Type ReportType + func (c *ReportSpec) Validate() error + type ReportStatus string + const ReportStatusCreating + const ReportStatusPending + const ReportStatusReady + type ReportType string + const ReportTypeAccount + const ReportTypeFills + type SEPADepositInformation struct + AccountAddress string + AccountName string + BankAddress string + BankCountryName string + BankName string + IBAN string + Reference string + Swift string + type SelfTrade string + const SelfTradeCancelBoth + const SelfTradeCancelNewest + const SelfTradeCancelOldest + const SelfTradeDecrementAndCancel + func (s SelfTrade) Validate() error + type ServerTime struct + Epoch float64 + ISO time.Time + type Side string + const SideBuy + const SideSell + func (s Side) Validate() error + type StablecoinConversion struct + Amount float64 + From CurrencyName + FromAccountID string + ID string + To CurrencyName + ToAccountID string + type StablecoinConversionSpec struct + Amount float64 + From CurrencyName + To CurrencyName + func (s *StablecoinConversionSpec) UnmarshalJSON(b []byte) error + type StatusMessage struct + Currencies []struct{ ... } + Products []struct{ ... } + Type string + type Stop string + const StopEntry + const StopLoss + const StopNone + func (s Stop) Validate() error + func (s Stop) ValidatePrice(price *float64) error + type SubscriptionRequest struct + Channels []interface{} + ProductIDs []ProductID + Type MessageType + func NewSubscriptionRequest(productIDs []ProductID, channelNames []ChannelName, productChannels []Channel) SubscriptionRequest + type SubscriptionResponse struct + Channels []Channel + Type MessageType + type TickerMessage struct + BestAsk string + BestBid string + High24H string + LastSize string + Low24H string + Open24H string + Price string + ProductId string + Sequence int + Side string + Time time.Time + TradeId int + Type string + Volume24H string + Volume30D string + type Time time.Time + func (t *Time) Time() time.Time + func (t *Time) UnmarshalJSON(data []byte) error + type TimeInForce string + const TimeInForceFillOrKill + const TimeInForceGoodTillCanceled + const TimeInForceGoodTillTime + const TimeInForceImmediateOrCancel + func (t TimeInForce) Validate() error + func (t TimeInForce) ValidateCancelAfter(cancelAfter string) error + type TimePeriod int + const TimePeriod15Minutes + const TimePeriod1Day + const TimePeriod1Hour + const TimePeriod1Minute + const TimePeriod5Minutes + const TimePeriod6Hours + func (t TimePeriod) Valid() error + type TimePeriodParam time.Duration + func (t *TimePeriodParam) UnmarshalJSON(b []byte) error + func (t TimePeriodParam) TimePeriod() TimePeriod + func (t TimePeriodParam) Validate() error + type UnsubscriptionRequest struct + Channels []interface{} + ProductIDs []ProductID + Type MessageType + func NewUnsubscriptionRequest(productIDs []ProductID, channelNames []ChannelName, productChannels []Channel) UnsubscriptionRequest + type WireDepositInformation struct + AccountAddress string + AccountName string + AccountNumber string + BankAddress string + BankCountry Country + Code string + Name string + Reference string + RoutingNumber string + type Withdrawal struct + AccountID string + Amount float64 + CanceledAt *Time + CompletedAt *Time + CreatedAt Time + Currency CurrencyName + Details WithdrawalDetails + ID string + ProcessedAt *Time + Type WithdrawalType + UserID string + UserNonce string + type WithdrawalCancelCode int + const WithdrawalCancelCodeAccountDoesNotSupportCurrency + const WithdrawalCancelCodeAccountNotAllowed + const WithdrawalCancelCodeAmountExceedsAccountFunds + const WithdrawalCancelCodeAmountExceedsCurrencyMaxSendAmount + const WithdrawalCancelCodeAmountExceedsCurrencyMaxWithdrawalAmount + const WithdrawalCancelCodeAmountExceedsMaximumAccountBalance + const WithdrawalCancelCodeAmountExceedsSendLimits + const WithdrawalCancelCodeAmountMustBeAtLeastOne + const WithdrawalCancelCodeAmountTooSmall + const WithdrawalCancelCodeCurrencyAndPaymentMethodNotAllowed + const WithdrawalCancelCodeCurrencyDoesNotMatchAccountCurrency + const WithdrawalCancelCodeCurrencyRequiresTagName + const WithdrawalCancelCodeCurrencyTemporarilyDisabled + const WithdrawalCancelCodeDefaultError + const WithdrawalCancelCodeInvalidAmount + const WithdrawalCancelCodeInvalidEmailOrNetworkAddress + const WithdrawalCancelCodeMaxExceeded + const WithdrawalCancelCodeMaxSendsExceeded + const WithdrawalCancelCodeNegativeAmount + const WithdrawalCancelCodeNoRecurringTransfersWithPaymentMethod + const WithdrawalCancelCodeNoTagNameProvided + const WithdrawalCancelCodePaymentMethodNotAllowed + const WithdrawalCancelCodePaymentMethodUnsupported + const WithdrawalCancelCodePaymentRequestExpired + const WithdrawalCancelCodeRecipientAddressNotWhitelisted + const WithdrawalCancelCodeRecipientAddressWhitelistPending + const WithdrawalCancelCodeSendAmountTooSmallForOnBlockchain + const WithdrawalCancelCodeSendFromAccountNotAllowed + const WithdrawalCancelCodeSendFromFiatAccountsTemporarilyDisabled + const WithdrawalCancelCodeSendRateExceeded + const WithdrawalCancelCodeTwoStepVerificationCodeRequired + const WithdrawalCancelCodeUnableToSendToAddress + const WithdrawalCancelCodeUnableToSendToSelf + const WithdrawalCancelCodeUnableToSendToUser + const WithdrawalCancelCodeWithdrawalRateLimitExceeded + const WithdrawalCancelCodeZeroAmount + func (w WithdrawalCancelCode) String() string + type WithdrawalDetails map[string]interface + type WithdrawalFeeEstimate struct + Fee float64 + type WithdrawalFilter struct + ProfileID string + Type WithdrawalType + func (d WithdrawalFilter) Params() []string + type WithdrawalType string + const WithdrawalTypeInternal + const WithdrawalTypeWithdraw + type Withdrawals struct + Page *Pagination + Withdrawals []*Withdrawal