polygon

package module
v0.3.1 Latest Latest
Warning

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

Go to latest
Published: Apr 22, 2020 License: MPL-2.0 Imports: 10 Imported by: 0

README

polygon

godoc goreportcard

Installation

go get -u github.com/117/polygon@v0.3.0

Client

There are two ways to interact with the client. The first is using an environment variable with the DefaultClient.

$ export POLYGON_KEY yourKeyGoesHere

The second way is by creating your own client, this has the benefit of using multiple keys.

func main() {
    client, err := polygon.NewClient(&polygon.Credentials{ Key: "yourKeyHere" })

    // an error occurs if they key is unauthorized
    if err != nil {
        panic(err)
    }
}

Streaming

Your API key allows 1 simultaneous connection to each cluster.

Cluster URL Enum
Stocks wss://socket.polygon.io/stocks polygon.Stocks
Forex wss://socket.polygon.io/forex polygon.Forex
Crypto wss://socket.polygon.io/crypto polygon.Crypto

Connecting to these servers is easy.

// this is a blocking method, wrap a for{} loop to reconnect on error
err := polygon.Stream(polygon.Stocks, []string{"Q.SPY"}, func(event polygon.StreamEvent) {
    switch event.String("ev") {
    case "Q":
        fmt.Println(fmt.Sprintf("received quote for %q symbol", event.String("sym")))
    }
})

Methods

These are all the Polygon.io REST API methods supported by the wrapper.

Method Returns Example
polygon.Tickers(*polygon.Parameters) ResponseTickers See Example
polygon.TickerTypes() ResponseTickerTypes See Example
polygon.TickerDetails(*polygon.Parameters) ResponseTickerDetails See Example
polygon.TickerNews() ResponseTickerNews See Example
polygon.Markets() ResponseMarkets See Example
polygon.Locales() ResponseLocales See Example
polygon.StockSplits() ResponseStockSplits See Example
polygon.StockDividends() ResponseStockDividends See Example
polygon.StockFinancials() ResponseStockFinancials See Example
polygon.MarketStatus() ResponseMarketStatus See Example
polygon.MarketHolidays() ResponseMarketHolidays See Example
polygon.Exchanges() ResponseExchanges See Example
polygon.HistoricTrades() ResponseHistoricTrades See Example
polygon.HistoricQuotes() ResponseHistoricQuotes See Example
polygon.LastTradeForATicker() ResponseLastTradeForATicker See Example
polygon.DailyOpenClose() ResponseDailyOpenClose See Example
polygon.ConditionMappings() map[string]string See Example
polygon.SnapshotAllTickers() ResponseSnapshotMultipleTickers See Example
polygon.SnapshotSingleTicker() ResponseSnapshotSingleTicker See Example
polygon.SnapshotGainersLosers() ResponseSnapshotMultipleTickers See Example
polygon.PreviousClose() ResponsePreviousClose See Example
polygon.Aggregates() ResponseAggregates See Example
polygon.GroupedDaily() ResponseAggregates See Example
more coming soon...
Tickers

Query all ticker symbols which are supported by Polygon.io. This API includes Indices, Crypto, FX, and Stocks/Equities.

tickers, err := polygon.Tickers(&polygon.Parameters{
    Market: "stocks",
    // possibly more, check polygon docs or hover in VSC
})
TickerTypes

Get the mapping of ticker types to descriptions / long names.

types, err := polygon.TickerTypes()
TickerDetails

Get the details of the symbol company/entity. These are important details which offer an overview of the entity. Things like name, sector, description, logo and similar companies.

details, err := polygon.TickerDetails(&polygon.Parameters{
    Ticker: "AAPL",
    // possibly more, check polygon docs or hover in VSC
})
TickerNews

Get news articles for this ticker.

news, err := polygon.TickerNews(&polygon.Parameters{
    Ticker: "AAPL",
    // possibly more, check polygon docs or hover in VSC
})
Markets

Get the list of currently supported markets.

markets, err := polygon.Markets()
Locales

Get the list of currently supported locales.

locales, err := polygon.Locales()
StockSplits

Get the historical splits for this symbol.

splits, err := polygon.StockSplits(&polygon.Parameters{
    Ticker: "AAPL",
    // possibly more, check polygon docs or hover in VSC
})
StockDividends

Get the historical divdends for this ticker.

dividends, err := polygon.StockDividends(&polygon.Parameters{
    Ticker: "AAPL",
    // possibly more, check polygon docs or hover in VSC
})
StockFinancials

Get the historical financials for this ticker.

financials, err := polygon.StockFinancials(&polygon.Parameters{
    Ticker: "AAPL",
    // possibly more, check polygon docs or hover in VSC
})
MarketStatus

Current status of each market.

status, err := polygon.MarketStatus()
MarketHolidays

Get upcoming market holidays and their open/close times.

holidays, err := polygon.MarketHolidays()
Exchanges

List of stock exchanges which are supported by Polygon.io.

exchanges, err := polygon.Exchanges()
HistoricTrades

Get historic trades for a ticker.

trades, err := polygon.HistoricTrades(&polygon.Parameters{
    Ticker: "AAPL",
    Date:   "2020-01-01",
    Limit:  100,
    // possibly more, check polygon docs or hover in VSC
})
HistoricQuotes

Get historic NBBO quotes for a ticker.

quotes, err := polygon.HistoricQuotes(&polygon.Parameters{
    Ticker: "AAPL",
    Date:   "2020-01-01",
    Limit:  100,
    // possibly more, check polygon docs or hover in VSC
})
LastTradeForATicker

Get the last trade for a given stock.

trade, err := polygon.LastTradeForATicker(&polygon.Parameters{
    Ticker: "AAPL",
    // possibly more, check polygon docs or hover in VSC
})
LastQuoteForATicker

Get the last quote tick for a given stock.

quote, err := polygon.LastQuoteForATicker(&polygon.Parameters{
    Ticker: "AAPL",
    // possibly more, check polygon docs or hover in VSC
})
DailyOpenClose

Get the open, close and afterhours prices of a symbol on a certain date.

quotes, err := polygon.DailyOpenClose(&polygon.Parameters{
    Ticker: "AAPL",
    Date:   "2020-01-01",
    // possibly more, check polygon docs or hover in VSC
})
ConditionMappings

The mappings for conditions on trades and quotes.

mappings, err := polygon.ConditionMappings(&polygon.Parameters{
    TickType: "trades",
    // possibly more, check polygon docs or hover in VSC
})
SnapshotAllTickers

Snapshot allows you to see all tickers current minute aggregate, daily aggregate and last trade. As well as previous days aggregate and calculated change for today.

snapshots, err := polygon.SnapshotAllTickers()
SnapshotSingleTicker

See the current snapshot of a single ticker.

snapshot, err := polygon.SnapshotSingleTicker(&polygon.Parameters{
    Ticker: "AAPL",
    // possibly more, check polygon docs or hover in VSC
})
SnapshotGainersLosers

See the current snapshot of the top 20 gainers or losers of the day at the moment.

snapshots, err := polygon.SnapshotGainersLosers(&polygon.Parameters{
    Direction: "gainers",
    // possibly more, check polygon docs or hover in VSC
})
PreviousClose

Get the previous day close for the specified ticker.

aggregate, err := polygon.PreviousClose(&polygon.Parameters{
    Ticker: "AAPL",
    // possibly more, check polygon docs or hover in VSC
})
Aggregates

Get the previous day close for the specified ticker.

aggregate, err := polygon.Aggregates(&polygon.Parameters{
    Ticker:     "AAPL",
    Timespan:   "day",
    From:       "2019-01-01",
    To:         "2019-02-01",
    Multiplier: 1,
    // possibly more, check polygon docs or hover in VSC
})
GroupedDaily

Get the daily OHLC for entire markets.

aggregates, err := polygon.GroupedDaily(&polygon.Parameters{
    Locale: "US",
    Market: "stocks",
    Date:   "2019-02-01",
    // possibly more, check polygon docs or hover in VSC
})

Documentation

Index

Constants

View Source
const BaseURL = "https://api.polygon.io"

BaseURL null

Variables

View Source
var (
	Stocks StreamCluster = "wss://socket.polygon.io/stocks"
	Crypto               = "wss://socket.polygon.io/crypto"
	Forex                = "wss://socket.polygon.io/forex"
)
View Source
var DefaultClient = &Client{&Credentials{
	Key: os.Getenv("POLYGON_KEY"),
}}

DefaultClient null

Functions

This section is empty.

Types

type Client added in v0.3.0

type Client struct {
	Credentials *Credentials
}

Client null

func NewClient added in v0.3.0

func NewClient(credentials *Credentials) (*Client, error)

NewClient null

func (*Client) Aggregates added in v0.3.0

func (c *Client) Aggregates(parameters *Parameters) (response ResponseAggregates, _ error)

Aggregates - Get aggregates for a date range, in custom time window sizes.

func (*Client) ConditionMappings added in v0.3.0

func (c *Client) ConditionMappings(parameters *Parameters) (mappings map[string]string, _ error)

ConditionMappings - The mappings for conditions on trades and quotes.

func (*Client) DailyOpenClose added in v0.3.0

func (c *Client) DailyOpenClose(parameters *Parameters) (response ResponseDailyOpenClose, _ error)

DailyOpenClose - Get the open, close and afterhours prices of a symbol on a certain date.

func (*Client) Exchanges added in v0.3.0

func (c *Client) Exchanges() (response ResponseExchanges, _ error)

Exchanges - List of stock exchanges which are supported by Polygon.io.

func (*Client) GroupedDaily added in v0.3.0

func (c *Client) GroupedDaily(parameters *Parameters) (response ResponseAggregates, _ error)

GroupedDaily - Get the daily OHLC for entire markets.

func (*Client) HistoricQuotes added in v0.3.0

func (c *Client) HistoricQuotes(parameters *Parameters) (response ResponseHistoricQuotes, _ error)

HistoricQuotes - Get historic NBBO quotes for a ticker.

func (*Client) HistoricTrades added in v0.3.0

func (c *Client) HistoricTrades(parameters *Parameters) (response ResponseHistoricTrades, _ error)

HistoricTrades - Get historic trades for a ticker.

func (*Client) LastQuoteForASymbol added in v0.3.0

func (c *Client) LastQuoteForASymbol(parameters *Parameters) (response ResponseLastQuoteForASymbol, _ error)

LastQuoteForASymbol - Get the last quote tick for a given stock.

func (*Client) LastTradeForASymbol added in v0.3.0

func (c *Client) LastTradeForASymbol(parameters *Parameters) (response ResponseLastTradeForASymbol, _ error)

LastTradeForASymbol - Get the last trade for a given stock.

func (*Client) Locales added in v0.3.0

func (c *Client) Locales() (response ResponseLocales, _ error)

Locales - Get the list of currently supported locales

func (*Client) MarketHolidays added in v0.3.0

func (c *Client) MarketHolidays() (response ResponseMarketHolidays, _ error)

MarketHolidays - Get upcoming market holidays and their open/close times

func (*Client) MarketStatus added in v0.3.0

func (c *Client) MarketStatus() (response ResponseMarketStatus, _ error)

MarketStatus - Current status of each market.

func (*Client) Markets added in v0.3.0

func (c *Client) Markets() (response ResponseMarkets, _ error)

Markets - Get the list of currently supported markets

func (*Client) PreviousClose added in v0.3.0

func (c *Client) PreviousClose(parameters *Parameters) (response ResponsePreviousClose, _ error)

PreviousClose - Get the previous day close for the specified ticker.

func (*Client) SnapshotAllTickers added in v0.3.0

func (c *Client) SnapshotAllTickers() (response ResponseSnapshotMultipleTickers, _ error)

SnapshotAllTickers - Snapshot allows you to see all tickers current minute aggregate, daily aggregate and last trade. As well as previous days aggregate and calculated change for today.

func (*Client) SnapshotGainersLosers added in v0.3.0

func (c *Client) SnapshotGainersLosers(parameters *Parameters) (response ResponseSnapshotMultipleTickers, _ error)

SnapshotGainersLosers - See the current snapshot of the top 20 gainers or losers of the day at the moment.

func (*Client) SnapshotSingleTicker added in v0.3.0

func (c *Client) SnapshotSingleTicker(parameters *Parameters) (response ResponseSnapshotSingleTicker, _ error)

SnapshotSingleTicker - See the current snapshot of a single ticker.

func (*Client) StockDividends added in v0.3.0

func (c *Client) StockDividends(parameters *Parameters) (response ResponseStockDividends, _ error)

StockDividends - Get the historical divdends for this ticker.

func (*Client) StockFinancials added in v0.3.0

func (c *Client) StockFinancials(parameters *Parameters) (response ResponseStockFinancials, _ error)

StockFinancials - Get the historical financials for this ticker.

func (*Client) StockSplits added in v0.3.0

func (c *Client) StockSplits(parameters *Parameters) (response ResponseStockSplits, _ error)

StockSplits - Get the historical splits for this symbol.

func (*Client) Stream added in v0.3.0

func (c *Client) Stream(cluster StreamCluster, channels []string, handler func(StreamEvent)) error

Stream null

func (*Client) TickerDetails added in v0.3.0

func (c *Client) TickerDetails(parameters *Parameters) (response ResponseTickerDetails, _ error)

TickerDetails - Get the details of the symbol company/entity. These are important details which offer an overview of the entity. Things like name, sector, description, logo and similar companies.

func (*Client) TickerNews added in v0.3.0

func (c *Client) TickerNews(parameters *Parameters) (response ResponseTickerNews, _ error)

TickerNews - Get news articles for this ticker.

func (*Client) TickerTypes added in v0.3.0

func (c *Client) TickerTypes() (response ResponseTypes, _ error)

TickerTypes - Get the mapping of ticker types to descriptions / long names.

func (*Client) Tickers added in v0.3.0

func (c *Client) Tickers(parameters *Parameters) (response ResponseTickers, _ error)

Tickers - Query all ticker symbols which are supported by Polygon.io. This API includes Indices, Crypto, FX, and Stocks/Equities.

type Credentials added in v0.3.0

type Credentials struct {
	Key string
}

Credentials null

type Parameters

type Parameters struct {
	Ticker         string `json:",omitempty" url:",omitempty"`
	Date           string `json:",omitempty" url:",omitempty"`
	Timestamp      int64  `json:",omitempty" url:",omitempty"`
	TimestampLimit int64  `json:",omitempty" url:",omitempty"`
	Reverse        bool   `json:",omitempty" url:",omitempty"`
	Limit          int64  `json:",omitempty" url:",omitempty"`
	TickType       string `json:",omitempty" url:",omitempty"`
	Direction      string `json:",omitempty" url:",omitempty"`
	Unadjusted     bool   `json:",omitempty" url:",omitempty"`
	Multiplier     int64  `json:",omitempty" url:",omitempty"`
	Timespan       string `json:",omitempty" url:",omitempty"`
	From           string `json:",omitempty" url:",omitempty"`
	To             string `json:",omitempty" url:",omitempty"`
	Sort           string `json:",omitempty" url:",omitempty"`
	Type           string `json:",omitempty" url:",omitempty"`
	Market         string `json:",omitempty" url:",omitempty"`
	Locale         string `json:",omitempty" url:",omitempty"`
	Search         string `json:",omitempty" url:",omitempty"`
	PerPage        int64  `json:",omitempty" url:",omitempty"`
	Page           int64  `json:",omitempty" url:",omitempty"`
	Active         bool   `json:",omitempty" url:",omitempty"`
}

Parameters - see method(s)

type ResponseAggregates added in v0.2.1

type ResponseAggregates struct {
	Ticker       string `json:"ticker"`
	Status       string `json:"status"`
	Adjusted     bool   `json:"adjusted"`
	QueryCount   int64  `json:"queryCount"`
	ResultsCount int64  `json:"resultsCount"`
	Results      []struct {
		Ticker     string  `json:"T"`
		Volume     float64 `json:"v"`
		Open       float64 `json:"o"`
		Close      float64 `json:"c"`
		High       float64 `json:"h"`
		Low        float64 `json:"l"`
		Timestamp  int64   `json:"t"`
		Items      int64   `json:"n"`
		Condition1 int64   `json:"c1"`
		Condition2 int64   `json:"c2"`
		Condition3 int64   `json:"c3"`
		Condition4 int64   `json:"c4"`
	}
}

ResponseAggregates - see method(s)

type ResponseDailyOpenClose added in v0.2.1

type ResponseDailyOpenClose struct {
	Status     string  `json:"status"`
	From       string  `json:"from"`
	Symbol     string  `json:"AAPL"`
	Open       float64 `json:"open"`
	High       float64 `json:"high"`
	Low        float64 `json:"low"`
	Close      float64 `json:"close"`
	AfterHours float64 `json:"afterHours"`
	Volume     float64 `json:"volume"`
}

ResponseDailyOpenClose - see method(s)

type ResponseExchanges added in v0.2.1

type ResponseExchanges []struct {
	ID     int64  `json:"id"`
	Type   string `json:"type"`
	Market string `json:"market"`
	Mic    string `json:"mic"`
	Name   string `json:"name"`
	Tape   string `json:"tape"`
}

ResponseExchanges - see method(s)

type ResponseHistoricQuotes added in v0.2.1

type ResponseHistoricQuotes struct {
	ResultsCount int64  `json:"results_count"`
	DbLatency    int64  `json:"db_latency"`
	Success      bool   `json:"success"`
	Ticker       string `json:"ticker"`
	Results      []struct {
		Ticker            string  `json:"T"`
		Timestamp         int64   `json:"t"`
		TimestampExchange int64   `json:"y"`
		TimestampTRF      int64   `json:"f"`
		SequenceNumber    int64   `json:"q"`
		Conditions        []int   `json:"c"`
		Indicators        []int   `json:"i"`
		Bid               float64 `json:"p"`
		BidExchangeID     int64   `json:"x"`
		BidSize           int64   `json:"s"`
		Ask               float64 `json:"P"`
		AskExchangeID     int64   `json:"X"`
		AskSize           int64   `json:"S"`
		Tape              int64   `json:"z"`
	} `json:"results"`
}

ResponseHistoricQuotes - see method(s)

type ResponseHistoricTrades added in v0.2.1

type ResponseHistoricTrades struct {
	ResultsCount int64  `json:"results_count"`
	DbLatency    int64  `json:"db_latency"`
	Success      bool   `json:"success"`
	Ticker       string `json:"ticker"`
	Results      []struct {
		Ticker            string  `json:"T"`
		Timestamp         int64   `json:"t"`
		TimestampExchange int64   `json:"y"`
		TimestampTRF      int64   `json:"f"`
		SequenceNumber    int64   `json:"q"`
		TradeID           string  `json:"i"`
		ExchangeID        int64   `json:"x"`
		Size              int64   `json:"s"`
		Conditions        []int   `json:"c"`
		Price             float64 `json:"p"`
		Tape              int64   `json:"z"`
	} `json:"results"`
}

ResponseHistoricTrades - see method(s)

type ResponseLastQuoteForASymbol added in v0.2.1

type ResponseLastQuoteForASymbol struct {
	Status string `json:"status"`
	Symbol string `json:"symbol"`
	Last   struct {
		AskPrice    float64 `json:"askprice"`
		AskSize     int64   `json:"asksize"`
		AskExchange int64   `json:"askexchange"`
		BidPrice    float64 `json:"bidprice"`
		BidSize     int64   `json:"bidsize"`
		BidExchange int64   `json:"bidexchange"`
		Timestamp   int64   `json:"timestamp"`
	} `json:"last"`
}

ResponseLastQuoteForASymbol - see method(s)

type ResponseLastTradeForASymbol added in v0.2.1

type ResponseLastTradeForASymbol struct {
	Status string `json:"status"`
	Symbol string `json:"symbol"`
	Last   struct {
		Price      float64 `json:"price"`
		Size       int64   `json:"size"`
		Exchange   int64   `json:"exchange"`
		Condition1 int64   `json:"cond1"`
		Condition2 int64   `json:"cond2"`
		Condition3 int64   `json:"cond3"`
		Condition4 int64   `json:"cond4"`
		Timestamp  int64   `json:"timestamp"`
	} `json:"last"`
}

ResponseLastTradeForASymbol - see method(s)

type ResponseLocales added in v0.2.1

type ResponseLocales struct {
	Status  string `json:"status"`
	Results []struct {
		Locale string `json:"locale"`
		Name   string `json:"name"`
	} `json:"results"`
}

ResponseLocales - see method(s)

type ResponseMarketHolidays added in v0.2.1

type ResponseMarketHolidays []struct {
	Exchange string    `json:"exchange"`
	Name     string    `json:"name"`
	Status   string    `json:"status"`
	Date     time.Time `json:"date"`
	Open     time.Time `json:"open"`
	Close    time.Time `json:"close"`
}

ResponseMarketHolidays - see method(s)

type ResponseMarketStatus added in v0.2.1

type ResponseMarketStatus struct {
	Market     string `json:"market"`
	ServerTime string `json:"serverTime"`
	Exchanges  struct {
		Nyse   string `json:"nyse"`
		Nasdaq string `json:"nasdaq"`
		Otc    string `json:"otc"`
	} `json:"exchanges"`
	Currencies struct {
		Fx     string `json:"fx"`
		Crypto string `json:"crypto"`
	} `json:"currencies"`
}

ResponseMarketStatus - see method(s)

type ResponseMarkets added in v0.2.1

type ResponseMarkets struct {
	Status  string `json:"status"`
	Results []struct {
		Market      string `json:"market"`
		Description string `json:"desc"`
	} `json:"results"`
}

ResponseMarkets - see method(s)

type ResponsePreviousClose added in v0.2.1

type ResponsePreviousClose struct {
	Ticker       string `json:"ticker"`
	Status       string `json:"status"`
	Adjusted     bool   `json:"adjusted"`
	QueryCount   int64  `json:"queryCount"`
	ResultsCount int64  `json:"resultsCount"`
	Results      []struct {
		Ticker    string  `json:"T"`
		Open      float64 `json:"o"`
		High      float64 `json:"h"`
		Low       float64 `json:"l"`
		Close     float64 `json:"c"`
		Volume    int64   `json:"v"`
		Timestamp int64   `json:"t"`
		Items     int64   `json:"n"`
	}
}

ResponsePreviousClose - see method(s)

type ResponseSnapshotMultipleTickers added in v0.2.1

type ResponseSnapshotMultipleTickers struct {
	Status  string `json:"status"`
	Tickers []struct {
		Ticker string `json:"ticker"`
		Day    struct {
			Open   float64 `json:"o"`
			High   float64 `json:"h"`
			Low    float64 `json:"l"`
			Close  float64 `json:"c"`
			Volume float64 `json:"v"`
		} `json:"day"`
		LastTrade struct {
			Price      float64 `json:"p"`
			Size       int64   `json:"s"`
			Exchange   int64   `json:"e"`
			Condition1 int64   `json:"c1"`
			Condition2 int64   `json:"c2"`
			Condition3 int64   `json:"c3"`
			Condition4 int64   `json:"c4"`
			Timestamp  int64   `json:"t"`
		} `json:"lastTrade"`
		LastQuote struct {
			BidPrice  float64 `json:"p"`
			BidSize   int64   `json:"s"`
			AskPrice  float64 `json:"P"`
			AskSize   int64   `json:"S"`
			Timestamp int64   `json:"t"`
		} `json:"lastQuote"`
		Minute struct {
			Open   float64 `json:"o"`
			High   float64 `json:"h"`
			Low    float64 `json:"l"`
			Close  float64 `json:"c"`
			Volume float64 `json:"v"`
		} `json:"minute"`
		PreviousDay struct {
			Open   float64 `json:"o"`
			High   float64 `json:"h"`
			Low    float64 `json:"l"`
			Close  float64 `json:"c"`
			Volume float64 `json:"v"`
		} `json:"prevDay"`
		TodaysChange     float64 `json:"todaysChange"`
		TodaysChangePerc float64 `json:"todaysChangePerc"`
		Updated          int64   `json:"updated"`
	} `json:"tickers"`
}

ResponseSnapshotMultipleTickers - see method(s)

type ResponseSnapshotSingleTicker added in v0.2.1

type ResponseSnapshotSingleTicker struct {
	Status string `json:"status"`
	Ticker struct {
		Ticker string `json:"ticker"`
		Day    struct {
			Open   float64 `json:"o"`
			High   float64 `json:"h"`
			Low    float64 `json:"l"`
			Close  float64 `json:"c"`
			Volume float64 `json:"v"`
		} `json:"day"`
		LastTrade struct {
			Price      float64 `json:"p"`
			Size       int64   `json:"s"`
			Exchange   int64   `json:"e"`
			Condition1 int64   `json:"c1"`
			Condition2 int64   `json:"c2"`
			Condition3 int64   `json:"c3"`
			Condition4 int64   `json:"c4"`
			Timestamp  int64   `json:"t"`
		} `json:"lastTrade"`
		LastQuote struct {
			BidPrice  float64 `json:"p"`
			BidSize   int64   `json:"s"`
			AskPrice  float64 `json:"P"`
			AskSize   int64   `json:"S"`
			Timestamp int64   `json:"t"`
		} `json:"lastQuote"`
		Minute struct {
			Open   float64 `json:"o"`
			High   float64 `json:"h"`
			Low    float64 `json:"l"`
			Close  float64 `json:"c"`
			Volume float64 `json:"v"`
		} `json:"minute"`
		PreviousDay struct {
			Open   float64 `json:"o"`
			High   float64 `json:"h"`
			Low    float64 `json:"l"`
			Close  float64 `json:"c"`
			Volume float64 `json:"v"`
		} `json:"prevDay"`
		TodaysChange     float64 `json:"todaysChange"`
		TodaysChangePerc float64 `json:"todaysChangePerc"`
		Updated          int64   `json:"updated"`
	} `json:"ticker"`
}

ResponseSnapshotSingleTicker - see method(s)

type ResponseStockDividends added in v0.2.1

type ResponseStockDividends struct {
	Status  string `json:"status"`
	Count   int64  `json:"count"`
	Results []struct {
		Symbol       string    `json:"symbol"`
		Type         string    `json:"type"`
		ExDate       time.Time `json:"exDate"`
		PaymentDate  time.Time `json:"paymentDate"`
		RecordDate   time.Time `json:"recordDate"`
		DeclaredDate time.Time `json:"declaredDate"`
		Amount       float64   `json:"amount"`
		Qualified    string    `json:"qualified"`
		Flag         string    `json:"flag"`
	} `json:"results"`
}

ResponseStockDividends - see method(s)

type ResponseStockFinancials added in v0.2.1

type ResponseStockFinancials struct {
	Status  string `json:"status"`
	Count   int64  `json:"count"`
	Results []struct {
		Ticker                                                 string  `json:"ticker"`
		Period                                                 string  `json:"period"`
		CalendarDate                                           string  `json:"calendarDate"`
		ReportPeriod                                           string  `json:"reportPeriod"`
		Updated                                                string  `json:"updated"`
		AccumulatedOtherComprehensiveIncome                    float64 `json:"accumulatedOtherComprehensiveIncome"`
		Assets                                                 float64 `json:"assets"`
		AssetsAverage                                          float64 `json:"assetsAverage"`
		AssetsCurrent                                          float64 `json:"assetsCurrent"`
		AssetTurnover                                          float64 `json:"assetTurnover"`
		AssetsNonCurrent                                       float64 `json:"assetsNonCurrent"`
		BookValuePerShare                                      float64 `json:"bookValuePerShare"`
		CapitalExpenditure                                     float64 `json:"capitalExpenditure"`
		CashAndEquivalents                                     float64 `json:"cashAndEquivalents"`
		CashAndEquivalentsUSD                                  float64 `json:"cashAndEquivalentsUSD"`
		CostOfRevenue                                          float64 `json:"costOfRevenue"`
		ConsolidatedIncome                                     float64 `json:"consolidatedIncome"`
		CurrentRatio                                           float64 `json:"currentRatio"`
		DebtToEquityRatio                                      float64 `json:"debtToEquityRatio"`
		Debt                                                   float64 `json:"debt"`
		DebtCurrent                                            float64 `json:"debtCurrent"`
		DebtNonCurrent                                         float64 `json:"debtNonCurrent"`
		DebtUSD                                                float64 `json:"debtUSD"`
		DeferredRevenue                                        float64 `json:"deferredRevenue"`
		DepreciationAmortizationAndAccretion                   float64 `json:"depreciationAmortizationAndAccretion"`
		Deposits                                               float64 `json:"deposits"`
		DividendYield                                          float64 `json:"dividendYield"`
		DividendsPerBasicCommonShare                           float64 `json:"dividendsPerBasicCommonShare"`
		EarningBeforeInterestTaxes                             float64 `json:"earningBeforeInterestTaxes"`
		EarningsBeforeInterestTaxesDepreciationAmortization    float64 `json:"earningsBeforeInterestTaxesDepreciationAmortization"`
		EBITDAMargin                                           float64 `json:"EBITDAMargin"`
		EarningsBeforeInterestTaxesDepreciationAmortizationUSD float64 `json:"earningsBeforeInterestTaxesDepreciationAmortizationUSD"`
		EarningBeforeInterestTaxesUSD                          float64 `json:"earningBeforeInterestTaxesUSD"`
		EarningsBeforeTax                                      float64 `json:"earningsBeforeTax"`
		EarningsPerBasicShare                                  float64 `json:"earningsPerBasicShare"`
		EarningsPerDilutedShare                                float64 `json:"earningsPerDilutedShare"`
		EarningsPerBasicShareUSD                               float64 `json:"earningsPerBasicShareUSD"`
		ShareholdersEquity                                     float64 `json:"shareholdersEquity"`
		AverageEquity                                          float64 `json:"averageEquity"`
		ShareholdersEquityUSD                                  float64 `json:"shareholdersEquityUSD"`
		EnterpriseValue                                        float64 `json:"enterpriseValue"`
		EnterpriseValueOverEBIT                                float64 `json:"enterpriseValueOverEBIT"`
		EnterpriseValueOverEBITDA                              float64 `json:"enterpriseValueOverEBITDA"`
		FreeCashFlow                                           float64 `json:"freeCashFlow"`
		FreeCashFlowPerShare                                   float64 `json:"freeCashFlowPerShare"`
		ForeignCurrencyUSDExchangeRate                         float64 `json:"foreignCurrencyUSDExchangeRate"`
		GrossProfit                                            float64 `json:"grossProfit"`
		GrossMargin                                            float64 `json:"grossMargin"`
		GoodwillAndIntangibleAssets                            float64 `json:"goodwillAndIntangibleAssets"`
		InterestExpense                                        float64 `json:"interestExpense"`
		InvestedCapital                                        float64 `json:"investedCapital"`
		InvestedCapitalAverage                                 float64 `json:"investedCapitalAverage"`
		Inventory                                              float64 `json:"inventory"`
		Investments                                            float64 `json:"investments"`
		InvestmentsCurrent                                     float64 `json:"investmentsCurrent"`
		InvestmentsNonCurrent                                  float64 `json:"investmentsNonCurrent"`
		TotalLiabilities                                       float64 `json:"totalLiabilities"`
		CurrentLiabilities                                     float64 `json:"currentLiabilities"`
		LiabilitiesNonCurrent                                  float64 `json:"liabilitiesNonCurrent"`
		MarketCapitalization                                   float64 `json:"marketCapitalization"`
		NetCashFlow                                            float64 `json:"netCashFlow"`
		NetCashFlowBusinessAcquisitionsDisposals               float64 `json:"netCashFlowBusinessAcquisitionsDisposals"`
		IssuanceEquityShares                                   float64 `json:"issuanceEquityShares"`
		IssuanceDebtSecurities                                 float64 `json:"issuanceDebtSecurities"`
		PaymentDividendsOtherCashDistributions                 float64 `json:"paymentDividendsOtherCashDistributions"`
		NetCashFlowFromFinancing                               float64 `json:"netCashFlowFromFinancing"`
		NetCashFlowFromInvesting                               float64 `json:"netCashFlowFromInvesting"`
		NetCashFlowInvestmentAcquisitionsDisposals             float64 `json:"netCashFlowInvestmentAcquisitionsDisposals"`
		NetCashFlowFromOperations                              float64 `json:"netCashFlowFromOperations"`
		EffectOfExchangeRateChangesOnCash                      float64 `json:"effectOfExchangeRateChangesOnCash"`
		NetIncome                                              float64 `json:"netIncome"`
		NetIncomeCommonStock                                   float64 `json:"netIncomeCommonStock"`
		NetIncomeCommonStockUSD                                float64 `json:"netIncomeCommonStockUSD"`
		NetLossIncomeFromDiscontinuedOperations                float64 `json:"netLossIncomeFromDiscontinuedOperations"`
		NetIncomeToNonControllingInterests                     float64 `json:"netIncomeToNonControllingInterests"`
		ProfitMargin                                           float64 `json:"profitMargin"`
		OperatingExpenses                                      float64 `json:"operatingExpenses"`
		OperatingIncome                                        float64 `json:"operatingIncome"`
		TradeAndNonTradePayables                               float64 `json:"tradeAndNonTradePayables"`
		PayoutRatio                                            float64 `json:"payoutRatio"`
		PriceToBookValue                                       float64 `json:"priceToBookValue"`
		PriceEarnings                                          float64 `json:"priceEarnings"`
		PriceToEarningsRatio                                   float64 `json:"priceToEarningsRatio"`
		PropertyPlantEquipmentNet                              float64 `json:"propertyPlantEquipmentNet"`
		PreferredDividendsIncomeStatementImpact                float64 `json:"preferredDividendsIncomeStatementImpact"`
		SharePriceAdjustedClose                                float64 `json:"sharePriceAdjustedClose"`
		PriceSales                                             float64 `json:"priceSales"`
		PriceToSalesRatio                                      float64 `json:"priceToSalesRatio"`
		TradeAndNonTradeReceivables                            float64 `json:"tradeAndNonTradeReceivables"`
		AccumulatedRetainedEarningsDeficit                     float64 `json:"accumulatedRetainedEarningsDeficit"`
		Revenues                                               float64 `json:"revenues"`
		RevenuesUSD                                            float64 `json:"revenuesUSD"`
		ResearchAndDevelopmentExpense                          float64 `json:"researchAndDevelopmentExpense"`
		ReturnOnAverageAssets                                  float64 `json:"returnOnAverageAssets"`
		ReturnOnAverageEquity                                  float64 `json:"returnOnAverageEquity"`
		ReturnOnInvestedCapital                                float64 `json:"returnOnInvestedCapital"`
		ReturnOnSales                                          float64 `json:"returnOnSales"`
		ShareBasedCompensation                                 float64 `json:"shareBasedCompensation"`
		SellingGeneralAndAdministrativeExpense                 float64 `json:"sellingGeneralAndAdministrativeExpense"`
		ShareFactor                                            float64 `json:"shareFactor"`
		Shares                                                 float64 `json:"shares"`
		WeightedAverageShares                                  float64 `json:"weightedAverageShares"`
		WeightedAverageSharesDiluted                           float64 `json:"weightedAverageSharesDiluted"`
		SalesPerShare                                          float64 `json:"salesPerShare"`
		TangibleAssetValue                                     float64 `json:"tangibleAssetValue"`
		TaxAssets                                              float64 `json:"taxAssets"`
		IncomeTaxExpense                                       float64 `json:"incomeTaxExpense"`
		TaxLiabilities                                         float64 `json:"taxLiabilities"`
		TangibleAssetsBookValuePerShare                        float64 `json:"tangibleAssetsBookValuePerShare"`
		WorkingCapital                                         float64 `json:"workingCapital"`
	} `json:"results"`
}

ResponseStockFinancials - see method(s)

type ResponseStockSplits added in v0.2.1

type ResponseStockSplits struct {
	Status  string `json:"status"`
	Count   int64  `json:"count"`
	Results []struct {
		Ticker       string  `json:"ticker"`
		ExDate       string  `json:"exDate"`
		PaymentDate  string  `json:"paymentDate"`
		RecordDate   string  `json:"recordDate"`
		DeclaredDate string  `json:"declaredDate"`
		Ratio        float64 `json:"ratio"`
		Tofactor     int64   `json:"tofactor"`
		Forfactor    int64   `json:"forfactor"`
	} `json:"results"`
}

ResponseStockSplits - see method(s)

type ResponseTickerDetails added in v0.2.1

type ResponseTickerDetails struct {
	Exchange    string   `json:"exchange"`
	Name        string   `json:"name"`
	Symbol      string   `json:"symbol"`
	Cik         string   `json:"cik"`
	Bloomberg   string   `json:"bloomberg"`
	Lei         string   `json:"lei"`
	Sic         int64    `json:"sic"`
	Country     string   `json:"country"`
	Industry    string   `json:"industry"`
	Sector      string   `json:"sector"`
	Marketcap   int64    `json:"marketcap"`
	Employees   int64    `json:"employees"`
	Phone       string   `json:"phone"`
	Ceo         string   `json:"ceo"`
	URL         string   `json:"url"`
	Description string   `json:"description"`
	Similar     []string `json:"similar"`
	Tags        []string `json:"tags"`
}

ResponseTickerDetails - see method(s)

type ResponseTickerNews added in v0.2.1

type ResponseTickerNews []struct {
	Symbols   []string  `json:"symbols"`
	Title     string    `json:"title"`
	URL       string    `json:"url"`
	Source    string    `json:"source"`
	Summary   string    `json:"summary"`
	Image     string    `json:"image"`
	Timestamp time.Time `json:"timestamp"`
	Keywords  []string  `json:"keywords"`
}

ResponseTickerNews - see method(s)

type ResponseTickers added in v0.2.1

type ResponseTickers []struct {
	Ticker      string `json:"ticker"`
	Name        string `json:"name"`
	Market      string `json:"market"`
	Locale      string `json:"locale"`
	Currency    string `json:"currency"`
	Active      bool   `json:"active"`
	PrimaryExch string `json:"primaryExch"`
	Type        string `json:"type"`
	Codes       struct {
		Cik     string `json:"cik"`
		Figiuid string `json:"figiuid"`
		Scfigi  string `json:"scfigi"`
		Cfigi   string `json:"cfigi"`
		Figi    string `json:"figi"`
	} `json:"codes"`
	Updated time.Time `json:"updated"`
	URL     string    `json:"url"`
}

ResponseTickers - see method(s)

type ResponseTypes added in v0.2.1

type ResponseTypes struct {
	Status  string `json:"status"`
	Results struct {
		Types      map[string]string `json:"types"`
		IndexTypes map[string]string `json:"indexTypes"`
	} `json:"results"`
}

ResponseTypes - see method(s)

type StreamCluster added in v0.3.0

type StreamCluster string

StreamCluster null

type StreamEvent added in v0.3.0

type StreamEvent map[string]interface{}

StreamEvent null

func (StreamEvent) ContainsKey added in v0.3.0

func (s StreamEvent) ContainsKey(key string) bool

ContainsKey null

func (StreamEvent) Float32 added in v0.3.0

func (s StreamEvent) Float32(key string) float32

Float32 null

func (StreamEvent) Float64 added in v0.3.0

func (s StreamEvent) Float64(key string) float64

Float64 null

func (StreamEvent) Int added in v0.3.0

func (s StreamEvent) Int(key string) int

Int null

func (StreamEvent) Int64 added in v0.3.0

func (s StreamEvent) Int64(key string) int64

Int64 null

func (StreamEvent) Interface added in v0.3.0

func (s StreamEvent) Interface(key string) interface{}

Interface null

func (StreamEvent) String added in v0.3.0

func (s StreamEvent) String(key string) string

String null

Jump to

Keyboard shortcuts

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