list_tickers returns Units and Warrants when type="CS"
stanbot8 opened this issue · 4 comments
client.list_tickers(market="stocks", type="CS", active=False, limit=1000) returns Warrants and Units, while the actual Polygon API filters them out correctly.
Expected behavior
client.list_tickers(market="stocks", type="CS", active=False, limit=1000) should not include Warrants and Units in the response
Thanks for reporting this @stanbot8. I'll check it out.
Hey @stanbot8, I'm not able to reproduce this. Do you mind showing an example of what you're seeing? Here's what I'm doing on my end. I've added RESTClient(trace=True)
which turns on debugging to show you the url being accessed and I'm getting the same data from the underlining API itself.
Here's the example code:
from polygon import RESTClient
# docs
# https://polygon.io/docs/stocks/get_v3_reference_tickers
# https://polygon-api-client.readthedocs.io/en/latest/Reference.html#list-tickers
client = RESTClient(trace=True) # POLYGON_API_KEY environment variable is used
tickers = []
for t in client.list_tickers(market="stocks", type="CS", active=True, limit=1000):
tickers.append(t)
print(tickers)
Then here an example of the output:
Ticker(
active=True,
cik='0001675149',
composite_figi='BBG00B3T3HD3',
currency_name='usd',
currency_symbol=None,
base_currency_symbol=None,
base_currency_name=None,
delisted_utc=None,
last_updated_utc='2024-04-23T00:00:00Z',
locale='us',
market='stocks',
name='Alcoa Corporation',
primary_exchange='XNYS',
share_class_figi='BBG00B3T3HF1',
ticker='AA',
type='CS',
source_feed=None
),
Ticker(
active=True,
cik='0001844817',
composite_figi='BBG011XR7306',
currency_name='usd',
currency_symbol=None,
base_currency_symbol=None,
base_currency_name=None,
delisted_utc=None,
last_updated_utc='2024-04-23T00:00:00Z',
locale='us',
market='stocks',
name='Armada Acquisition Corp. I Common Stock',
primary_exchange='XNAS',
share_class_figi='BBG011XR7315',
ticker='AACI',
type='CS',
source_feed=None
),
Let me know what you think.
Hey @justinpolygon, thanks for looking into the matter.
When active=True, it correctly filters out the warrant, units, etc.
When active=False, they are included back in.
I checked again through the polygon API and it seems to behave that way as well so it's okay, I can work with active=True.
Great, thanks for getting back to me @stanbot8. I'll close this out.