polygon

package
v0.5.0 Latest Latest
Warning

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

Go to latest
Published: Apr 29, 2022 License: MIT Imports: 5 Imported by: 120

Documentation

Overview

Package polygon defines a REST client for the Polygon API.

Index

Constants

View Source
const (
	GetAggsPath              = "/v2/aggs/ticker/{ticker}/range/{multiplier}/{resolution}/{from}/{to}"
	GetGroupedDailyAggsPath  = "/v2/aggs/grouped/locale/{locale}/market/{marketType}/{date}"
	GetDailyOpenCloseAggPath = "/v1/open-close/{ticker}/{date}"
	GetPreviousCloseAggPath  = "/v2/aggs/ticker/{ticker}/prev"
)
View Source
const (
	ListQuotesPath                    = "/v3/quotes/{ticker}"
	GetLastQuotePath                  = "/v2/last/nbbo/{ticker}"
	GetLastForexQuotePath             = "/v1/last_quote/currencies/{from}/{to}"
	GetRealTimeCurrencyConversionPath = "/v1/conversion/{from}/{to}"
)
View Source
const (
	ListTickersPath      = "/v3/reference/tickers"
	GetTickerDetailsPath = "/v3/reference/tickers/{ticker}"
	ListTickerNewsPath   = "/v2/reference/news"
	GetTickerTypesPath   = "/v3/reference/tickers/types"

	GetMarketHolidaysPath = "/v1/marketstatus/upcoming"
	GetMarketStatusPath   = "/v1/marketstatus/now"

	ListSplitsPath = "/v3/reference/splits"

	ListDividendsPath = "/v3/reference/dividends"

	ListConditionsPath = "/v3/reference/conditions"

	GetExchangesPath = "/v3/reference/exchanges"
)
View Source
const (
	GetAllTickersSnapshotPath     = "/v2/snapshot/locale/{locale}/markets/{marketType}/tickers"
	GetTickerSnapshotPath         = "/v2/snapshot/locale/{locale}/markets/{marketType}/tickers/{ticker}"
	GetGainersLosersSnapshotPath  = "/v2/snapshot/locale/{locale}/markets/{marketType}/{direction}"
	GetOptionContractSnapshotPath = "/v3/snapshot/options/{underlyingAsset}/{optionContract}"
	GetCryptoFullBookSnapshotPath = "/v2/snapshot/locale/global/markets/crypto/tickers/{ticker}/book"
)
View Source
const (
	ListTradesPath         = "/v3/trades/{ticker}"
	GetLastTradePath       = "/v2/last/trade/{ticker}"
	GetLastCryptoTradePath = "/v1/last/crypto/{from}/{to}"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type AggsClient

type AggsClient struct {
	client.Client
}

AggsClient defines a REST client for the Polygon aggs API.

func (*AggsClient) GetAggs

GetAggs retrieves aggregate bars for a specified ticker over a given date range in custom time window sizes. For example, if timespan = ‘minute’ and multiplier = ‘5’ then 5-minute bars will be returned. For more details see https://polygon.io/docs/stocks/get_v2_aggs_ticker__stocksticker__range__multiplier___timespan___from___to.

func (*AggsClient) GetDailyOpenCloseAgg

GetDailyOpenCloseAgg retrieves the open, close and afterhours prices of a specific symbol on a certain date. For more details see https://polygon.io/docs/stocks/get_v1_open-close__stocksticker___date.

func (*AggsClient) GetGroupedDailyAggs

GetGroupedDailyAggs retrieves the daily open, high, low, and close (OHLC) for the specified market type. For more details see https://polygon.io/docs/stocks/get_v2_aggs_grouped_locale_us_market_stocks__date.

func (*AggsClient) GetPreviousCloseAgg

GetPreviousCloseAgg retrieves the previous day's open, high, low, and close (OHLC) for the specified ticker. For more details see https://polygon.io/docs/stocks/get_v2_aggs_ticker__stocksticker__prev.

type Client added in v0.4.0

Client defines a client to the Polygon REST API.

func New

func New(apiKey string) *Client

New creates a client for the Polygon REST API.

type QuotesClient

type QuotesClient struct {
	client.Client
}

QuotesClient defines a REST client for the Polygon quotes API.

func (*QuotesClient) GetLastForexQuote

GetLastForexQuote retrieves the last quote (BBO) for a forex currency pair. For more details see https://polygon.io/docs/forex/get_v1_last_quote_currencies__from___to.

func (*QuotesClient) GetLastQuote

GetLastQuote retrieves the last quote (NBBO) for a specified ticker. For more details see https://polygon.io/docs/stocks/get_v2_last_nbbo__stocksticker.

func (*QuotesClient) GetRealTimeCurrencyConversion added in v0.5.0

GetRealTimeCurrencyConversion retrieves retrieves currency conversion using the latest market conversion rates. Note that you can convert in both directions. For more details see https://polygon.io/docs/forex/get_v1_conversion__from___to.

func (*QuotesClient) ListQuotes

func (c *QuotesClient) ListQuotes(ctx context.Context, params *models.ListQuotesParams, options ...models.RequestOption) *iter.Iter[models.Quote]

ListQuotes retrieves quotes for a specified ticker. For more details see https://polygon.io/docs/stocks/get_v3_quotes__stockticker. This method returns an iterator that should be used to access the results via this pattern:

iter, err := c.ListQuotes(context.TODO(), params, opts...)
for iter.Next() {
    log.Print(iter.Item()) // do something with the current value
}
if iter.Err() != nil {
    return err
}

type ReferenceClient

type ReferenceClient struct {
	client.Client
}

ReferenceClient defines a REST client for the Polygon reference API.

func (*ReferenceClient) GetExchanges

GetExchanges lists all exchanges that Polygon knows about.

func (*ReferenceClient) GetMarketHolidays

func (c *ReferenceClient) GetMarketHolidays(ctx context.Context, options ...models.RequestOption) (*models.GetMarketHolidaysResponse, error)

GetMarketHolidays retrieves upcoming market holidays and their open/close times. For more details see https://polygon.io/docs/stocks/get_v1_marketstatus_upcoming.

func (*ReferenceClient) GetMarketStatus

func (c *ReferenceClient) GetMarketStatus(ctx context.Context, options ...models.RequestOption) (*models.GetMarketStatusResponse, error)

GetMarketStatus retrieves the current trading status of the exchanges and overall financial markets. For more details see https://polygon.io/docs/stocks/get_v1_marketstatus_now.

func (*ReferenceClient) GetTickerDetails

GetTickerDetails retrieves details for a specified ticker. For more details see https://polygon.io/docs/stocks/get_v3_reference_tickers__ticker.

func (*ReferenceClient) GetTickerTypes

GetTickerTypes retrieves all the possible ticker types that can be queried. For more details see https://polygon.io/docs/stocks/get_v3_reference_tickers_types.

func (*ReferenceClient) ListConditions

func (c *ReferenceClient) ListConditions(ctx context.Context, params *models.ListConditionsParams, options ...models.RequestOption) *iter.Iter[models.Condition]

ListConditions retrieves reference conditions. For more details see https://polygon.io/docs/stocks/get_v3_reference_conditions. This method returns an iterator that should be used to access the results via this pattern:

iter, err := c.ListConditions(context.TODO(), params, opts...)
for iter.Next() {
    log.Print(iter.Item()) // do something with the current value
}
if iter.Err() != nil {
    return err
}

func (*ReferenceClient) ListDividends

func (c *ReferenceClient) ListDividends(ctx context.Context, params *models.ListDividendsParams, options ...models.RequestOption) *iter.Iter[models.Dividend]

ListDividends retrieves reference dividends. For more details see https://polygon.io/docs/stocks/get_v3_reference_dividends. This method returns an iterator that should be used to access the results via this pattern:

iter, err := c.ListDividends(context.TODO(), params, opts...)
for iter.Next() {
    log.Print(iter.Item()) // do something with the current value
}
if iter.Err() != nil {
    return err
}

func (*ReferenceClient) ListSplits

func (c *ReferenceClient) ListSplits(ctx context.Context, params *models.ListSplitsParams, options ...models.RequestOption) *iter.Iter[models.Split]

ListSplits retrieves reference splits. For more details see https://polygon.io/docs/stocks/get_v3_reference_splits. This method returns an iterator that should be used to access the results via this pattern:

iter, err := c.ListSplits(context.TODO(), params, opts...)
for iter.Next() {
    log.Print(iter.Item()) // do something with the current value
}
if iter.Err() != nil {
    return err
}

func (*ReferenceClient) ListTickerNews added in v0.4.0

ListTickerNews retrieves news articles for a specified ticker. For more details see https://polygon.io/docs/stocks/get_v2_reference_news.

func (*ReferenceClient) ListTickers

func (c *ReferenceClient) ListTickers(ctx context.Context, params *models.ListTickersParams, options ...models.RequestOption) *iter.Iter[models.Ticker]

ListTickers retrieves reference tickers. For more details see https://polygon.io/docs/stocks/get_v3_reference_tickers__ticker. This method returns an iterator that should be used to access the results via this pattern:

iter, err := c.ListTickers(context.TODO(), params, opts...)
for iter.Next() {
    log.Print(iter.Item()) // do something with the current value
}
if iter.Err() != nil {
    return err
}

type SnapshotClient

type SnapshotClient struct {
	client.Client
}

SnapshotClient defines a REST client for the Polygon snapshot API.

func (*SnapshotClient) GetAllTickersSnapshot

GetAllTickersSnapshot gets the current minute, day, and previous day’s aggregate, as well as the last trade and quote for all symbols of a specified market type. For more details see https://polygon.io/docs/stocks/get_v2_snapshot_locale_us_markets_stocks_tickers.

func (*SnapshotClient) GetCryptoFullBookSnapshot

GetCryptoFullBookSnapshot gets the current level 2 book of a single cryptocurrency ticker. This is the combined book from all of the exchanges. For more details see https://polygon.io/docs/crypto/get_v2_snapshot_locale_global_markets_crypto_tickers__ticker__book.

func (*SnapshotClient) GetGainersLosersSnapshot

GetGainersLosersSnapshot gets the current top 20 gainers or losers of the day in a specific market type. For more details see https://polygon.io/docs/stocks/get_v2_snapshot_locale_us_markets_stocks__direction.

func (*SnapshotClient) GetOptionContractSnapshot

GetOptionContractSnapshot gets the snapshot of an option contract for a stock equity. For more details see https://polygon.io/docs/options/get_v3_snapshot_options__underlyingasset___optioncontract.

func (*SnapshotClient) GetTickerSnapshot

GetTickerSnapshot gets the current minute, day, and previous day’s aggregate, as well as the last trade and quote for a single traded symbol of a specified market type. For more details see https://polygon.io/docs/stocks/get_v2_snapshot_locale_us_markets_stocks_tickers__stocksticker.

type TradesClient

type TradesClient struct {
	client.Client
}

TradesClient defines a REST client for the Polygon trades API.

func (*TradesClient) GetLastCryptoTrade

GetLastCryptoTrade retrieves the last trade for a crypto pair. For more details see https://polygon.io/docs/crypto/get_v1_last_crypto__from___to.

func (*TradesClient) GetLastTrade

GetLastTrade retrieves the last trade for a specified ticker. For more details see https://polygon.io/docs/stocks/get_v2_last_trade__stocksticker.

func (*TradesClient) ListTrades

func (c *TradesClient) ListTrades(ctx context.Context, params *models.ListTradesParams, options ...models.RequestOption) *iter.Iter[models.Trade]

ListTrades retrieves trades for a specified ticker. For more details see https://polygon.io/docs/stocks/get_v3_trades__stockticker. This method returns an iterator that should be used to access the results via this pattern:

iter, err := c.ListTrades(context.TODO(), params, opts...)
for iter.Next() {
    log.Print(iter.Item()) // do something with the current value
}
if iter.Err() != nil {
    return err
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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