Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions polygon/rest/client.py
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,10 @@ def _handle_response(self, response_type: str, endpoint: str, params: Dict[str,
def reference_tickers(self, **query_params) -> models.ReferenceTickersApiResponse:
endpoint = f"{self.url}/v2/reference/tickers"
return self._handle_response("ReferenceTickersApiResponse", endpoint, query_params)

def reference_tickers_v3(self, **query_params) -> models.ReferenceTickersV3ApiResponse:
endpoint = f"{self.url}/v3/reference/tickers"
return self._handle_response("ReferenceTickersV3ApiResponse", endpoint, query_params)

def reference_ticker_types(self, **query_params) -> models.ReferenceTickerTypesApiResponse:
endpoint = f"{self.url}/v2/reference/types"
Expand All @@ -45,10 +49,18 @@ def reference_ticker_types(self, **query_params) -> models.ReferenceTickerTypesA
def reference_ticker_details(self, symbol, **query_params) -> models.ReferenceTickerDetailsApiResponse:
endpoint = f"{self.url}/v1/meta/symbols/{symbol}/company"
return self._handle_response("ReferenceTickerDetailsApiResponse", endpoint, query_params)

def reference_ticker_details_vx(self, symbol, **query_params) -> models.ReferenceTickerDetailsV3ApiResponse:
endpoint = f"{self.url}/vX/reference/tickers/{symbol}"
return self._handle_response("ReferenceTickerDetailsV3ApiResponse", endpoint, query_params)

def reference_ticker_news(self, symbol, **query_params) -> models.ReferenceTickerNewsApiResponse:
endpoint = f"{self.url}/v1/meta/symbols/{symbol}/news"
return self._handle_response("ReferenceTickerNewsApiResponse", endpoint, query_params)

def reference_ticker_news_v2(self, **query_params) -> models.ReferenceTickerNewsV2ApiResponse:
endpoint = f"{self.url}/v2/reference/news"
return self._handle_response("ReferenceTickerNewsV2ApiResponse", endpoint, query_params)

def reference_markets(self, **query_params) -> models.ReferenceMarketsApiResponse:
endpoint = f"{self.url}/v2/reference/markets"
Expand Down Expand Up @@ -163,6 +175,11 @@ def forex_currencies_last_quote_for_a_currency_pair(self, from_, to,
**query_params) -> models.ForexCurrenciesLastQuoteForACurrencyPairApiResponse:
endpoint = f"{self.url}/v1/last_quote/currencies/{from_}/{to}"
return self._handle_response("ForexCurrenciesLastQuoteForACurrencyPairApiResponse", endpoint, query_params)

# FIXME: add daily open/close
# FIXME: add grouped daily bars
# FIXME: add previous close
# FIXME: add snapshot for single ticker

def forex_currencies_snapshot_all_tickers(self,
**query_params) -> models.ForexCurrenciesSnapshotAllTickersApiResponse:
Expand Down Expand Up @@ -191,6 +208,9 @@ def crypto_historic_crypto_trades(self, from_, to, date,
**query_params) -> models.CryptoHistoricCryptoTradesApiResponse:
endpoint = f"{self.url}/v1/historic/crypto/{from_}/{to}/{date}"
return self._handle_response("CryptoHistoricCryptoTradesApiResponse", endpoint, query_params)

# FIXME: add grouped daily bars
# FIXME: add previous close

def crypto_snapshot_all_tickers(self, **query_params) -> models.CryptoSnapshotAllTickersApiResponse:
endpoint = f"{self.url}/v2/snapshot/locale/global/markets/crypto/tickers"
Expand Down
15 changes: 15 additions & 0 deletions polygon/rest/models/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,14 @@
from .definitions import Quote
from .definitions import Aggregate
from .definitions import Company
from .definitions import CompanyV3
from .definitions import Address
from .definitions import Symbol
from .definitions import SymbolV3
from .definitions import Dividend
from .definitions import News
from .definitions import NewsV2
from .definitions import Publisher
from .definitions import Earning
from .definitions import Financial
from .definitions import Exchange
Expand Down Expand Up @@ -45,9 +50,12 @@
from .definitions import Aggv2
from .definitions import AggResponse
from .definitions import ReferenceTickersApiResponse
from .definitions import ReferenceTickersV3ApiResponse
from .definitions import ReferenceTickerTypesApiResponse
from .definitions import ReferenceTickerDetailsApiResponse
from .definitions import ReferenceTickerDetailsV3ApiResponse
from .definitions import ReferenceTickerNewsApiResponse
from .definitions import ReferenceTickerNewsV2ApiResponse
from .definitions import ReferenceMarketsApiResponse
from .definitions import ReferenceLocalesApiResponse
from .definitions import ReferenceStockSplitsApiResponse
Expand Down Expand Up @@ -104,9 +112,13 @@
"Quote": Quote,
"Aggregate": Aggregate,
"Company": Company,
"CompanyV3": CompanyV3,
"Address": Address,
"Symbol": Symbol,
"Dividend": Dividend,
"News": News,
"NewsV2": NewsV2,
"Publisher": Publisher,
"Earning": Earning,
"Financial": Financial,
"Exchange": Exchange,
Expand Down Expand Up @@ -145,9 +157,12 @@
"Aggv2": Aggv2,
"AggResponse": AggResponse,
"ReferenceTickersApiResponse": ReferenceTickersApiResponse,
"ReferenceTickersV3ApiResponse": ReferenceTickersV3ApiResponse,
"ReferenceTickerTypesApiResponse": ReferenceTickerTypesApiResponse,
"ReferenceTickerDetailsApiResponse": ReferenceTickerDetailsApiResponse,
"ReferenceTickerDetailsV3ApiResponse": ReferenceTickerDetailsV3ApiResponse,
"ReferenceTickerNewsApiResponse": ReferenceTickerNewsApiResponse,
"ReferenceTickerNewsV2ApiResponse": ReferenceTickerNewsV2ApiResponse,
"ReferenceMarketsApiResponse": ReferenceMarketsApiResponse,
"ReferenceLocalesApiResponse": ReferenceLocalesApiResponse,
"ReferenceStockSplitsApiResponse": ReferenceStockSplitsApiResponse,
Expand Down
Loading