Skip to content

Commit 27c4cc4

Browse files
authored
New reference endpoints (#62)
* add reference tickers api * add ticker details vx types * add ticker news V2 types * add endpoints to client * add some fixme's for our missing endpoints
1 parent 5c9e1c6 commit 27c4cc4

File tree

3 files changed

+370
-0
lines changed

3 files changed

+370
-0
lines changed

polygon/rest/client.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,10 @@ def _handle_response(self, response_type: str, endpoint: str, params: Dict[str,
3737
def reference_tickers(self, **query_params) -> models.ReferenceTickersApiResponse:
3838
endpoint = f"{self.url}/v2/reference/tickers"
3939
return self._handle_response("ReferenceTickersApiResponse", endpoint, query_params)
40+
41+
def reference_tickers_v3(self, **query_params) -> models.ReferenceTickersV3ApiResponse:
42+
endpoint = f"{self.url}/v3/reference/tickers"
43+
return self._handle_response("ReferenceTickersV3ApiResponse", endpoint, query_params)
4044

4145
def reference_ticker_types(self, **query_params) -> models.ReferenceTickerTypesApiResponse:
4246
endpoint = f"{self.url}/v2/reference/types"
@@ -45,10 +49,18 @@ def reference_ticker_types(self, **query_params) -> models.ReferenceTickerTypesA
4549
def reference_ticker_details(self, symbol, **query_params) -> models.ReferenceTickerDetailsApiResponse:
4650
endpoint = f"{self.url}/v1/meta/symbols/{symbol}/company"
4751
return self._handle_response("ReferenceTickerDetailsApiResponse", endpoint, query_params)
52+
53+
def reference_ticker_details_vx(self, symbol, **query_params) -> models.ReferenceTickerDetailsV3ApiResponse:
54+
endpoint = f"{self.url}/vX/reference/tickers/{symbol}"
55+
return self._handle_response("ReferenceTickerDetailsV3ApiResponse", endpoint, query_params)
4856

4957
def reference_ticker_news(self, symbol, **query_params) -> models.ReferenceTickerNewsApiResponse:
5058
endpoint = f"{self.url}/v1/meta/symbols/{symbol}/news"
5159
return self._handle_response("ReferenceTickerNewsApiResponse", endpoint, query_params)
60+
61+
def reference_ticker_news_v2(self, **query_params) -> models.ReferenceTickerNewsV2ApiResponse:
62+
endpoint = f"{self.url}/v2/reference/news"
63+
return self._handle_response("ReferenceTickerNewsV2ApiResponse", endpoint, query_params)
5264

5365
def reference_markets(self, **query_params) -> models.ReferenceMarketsApiResponse:
5466
endpoint = f"{self.url}/v2/reference/markets"
@@ -163,6 +175,11 @@ def forex_currencies_last_quote_for_a_currency_pair(self, from_, to,
163175
**query_params) -> models.ForexCurrenciesLastQuoteForACurrencyPairApiResponse:
164176
endpoint = f"{self.url}/v1/last_quote/currencies/{from_}/{to}"
165177
return self._handle_response("ForexCurrenciesLastQuoteForACurrencyPairApiResponse", endpoint, query_params)
178+
179+
# FIXME: add daily open/close
180+
# FIXME: add grouped daily bars
181+
# FIXME: add previous close
182+
# FIXME: add snapshot for single ticker
166183

167184
def forex_currencies_snapshot_all_tickers(self,
168185
**query_params) -> models.ForexCurrenciesSnapshotAllTickersApiResponse:
@@ -201,6 +218,9 @@ def crypto_historic_crypto_trades(self, from_, to, date,
201218
**query_params) -> models.CryptoHistoricCryptoTradesApiResponse:
202219
endpoint = f"{self.url}/v1/historic/crypto/{from_}/{to}/{date}"
203220
return self._handle_response("CryptoHistoricCryptoTradesApiResponse", endpoint, query_params)
221+
222+
# FIXME: add grouped daily bars
223+
# FIXME: add previous close
204224

205225
def crypto_snapshot_all_tickers(self, **query_params) -> models.CryptoSnapshotAllTickersApiResponse:
206226
endpoint = f"{self.url}/v2/snapshot/locale/global/markets/crypto/tickers"

polygon/rest/models/__init__.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,14 @@
44
from .definitions import Quote
55
from .definitions import Aggregate
66
from .definitions import Company
7+
from .definitions import CompanyV3
8+
from .definitions import Address
79
from .definitions import Symbol
10+
from .definitions import SymbolV3
811
from .definitions import Dividend
912
from .definitions import News
13+
from .definitions import NewsV2
14+
from .definitions import Publisher
1015
from .definitions import Earning
1116
from .definitions import Financial
1217
from .definitions import Exchange
@@ -45,9 +50,12 @@
4550
from .definitions import Aggv2
4651
from .definitions import AggResponse
4752
from .definitions import ReferenceTickersApiResponse
53+
from .definitions import ReferenceTickersV3ApiResponse
4854
from .definitions import ReferenceTickerTypesApiResponse
4955
from .definitions import ReferenceTickerDetailsApiResponse
56+
from .definitions import ReferenceTickerDetailsV3ApiResponse
5057
from .definitions import ReferenceTickerNewsApiResponse
58+
from .definitions import ReferenceTickerNewsV2ApiResponse
5159
from .definitions import ReferenceMarketsApiResponse
5260
from .definitions import ReferenceLocalesApiResponse
5361
from .definitions import ReferenceStockSplitsApiResponse
@@ -105,9 +113,13 @@
105113
"Quote": Quote,
106114
"Aggregate": Aggregate,
107115
"Company": Company,
116+
"CompanyV3": CompanyV3,
117+
"Address": Address,
108118
"Symbol": Symbol,
109119
"Dividend": Dividend,
110120
"News": News,
121+
"NewsV2": NewsV2,
122+
"Publisher": Publisher,
111123
"Earning": Earning,
112124
"Financial": Financial,
113125
"Exchange": Exchange,
@@ -146,9 +158,12 @@
146158
"Aggv2": Aggv2,
147159
"AggResponse": AggResponse,
148160
"ReferenceTickersApiResponse": ReferenceTickersApiResponse,
161+
"ReferenceTickersV3ApiResponse": ReferenceTickersV3ApiResponse,
149162
"ReferenceTickerTypesApiResponse": ReferenceTickerTypesApiResponse,
150163
"ReferenceTickerDetailsApiResponse": ReferenceTickerDetailsApiResponse,
164+
"ReferenceTickerDetailsV3ApiResponse": ReferenceTickerDetailsV3ApiResponse,
151165
"ReferenceTickerNewsApiResponse": ReferenceTickerNewsApiResponse,
166+
"ReferenceTickerNewsV2ApiResponse": ReferenceTickerNewsV2ApiResponse,
152167
"ReferenceMarketsApiResponse": ReferenceMarketsApiResponse,
153168
"ReferenceLocalesApiResponse": ReferenceLocalesApiResponse,
154169
"ReferenceStockSplitsApiResponse": ReferenceStockSplitsApiResponse,

0 commit comments

Comments
 (0)