AsyncClient
yafin.AsyncClient
Bases: ClientBase
Asynchronous Client for Yahoo Finance API.
HTTP resources closing
Uses http resources, so do not forget to await close() them after use to avoid resource leakage or use context manager.
Attributes:
| Name | Type | Description |
|---|---|---|
timeout |
timeout (in secs) for each http request. |
|
max_retries |
number of retries in case of failed request. |
|
_session |
AsyncSession[Any] | None
|
session instance, that is used for all http requests. (Is lazily initialized.) |
Methods:
| Name | Description |
|---|---|
get_chart |
Get chart data for the ticker. |
get_quote |
Get quote for tickers. |
get_quote_type |
Get quote type for tickers. |
get_quote_summary |
Get quote summary for the ticker. |
get_timeseries |
Get timeseries for the ticker. |
get_options |
Get options for the ticker. |
get_search |
Get search results for tickers. |
get_recommendations |
Get analyst recommendations for tickers. |
get_insights |
Get insights for tickers. |
get_ratings |
Get ratings for the ticker. |
get_market_summaries |
Get market summaries. |
get_trending |
Get trending tickers. |
get_currencies |
Get currency exchange rates. |
get_calendar_event |
Get calendar events. |
__init__(timeout=5.0, max_retries=5)
Create new AsynClient instance.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
timeout
|
float
|
timeout (in secs) for each http request. |
5.0
|
max_retries
|
int
|
number of retries in case of failed request. |
5
|
close()
async
Close the session if open and reset crumb.
get_chart(ticker, interval, period_range=None, period1=None, period2=None, include_pre_post=None, events=EVENTS)
async
Get chart data for the ticker.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
ticker
|
str
|
Ticker symbol. |
required |
interval
|
str
|
Data interval. |
required |
period_range
|
str | None
|
Range of the period. |
None
|
period1
|
int | float | None
|
Start timestamp in seconds. (optional, default: None) |
None
|
period2
|
int | float | None
|
End timestamp in seconds. (optional, default: None) |
None
|
include_pre_post
|
bool | None
|
Whether to include pre and post market. |
None
|
events
|
str | None
|
Comma-separated events to include. |
EVENTS
|
Returns: Chart response json including result and error.
Raises:
| Type | Description |
|---|---|
ValueError
|
If any of period_range, interval or parsed_events are not in list of valid values. |
Note
Even though the the endpoint param is called range, period_range was chosen to avoid collision with python built-in method name.
get_quote(tickers, include_pre_post=None)
async
Get quote for tickers.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
tickers
|
str
|
Comma-separated ticker symbols. |
required |
include_pre_post
|
bool | None
|
Whether to include pre and post market. |
None
|
Returns: Quote response json including result and error.
Note
Even though the the endpoint param is called symbols, tickers was chosen to use the same name as is used in higher level (Async)Symbol class.
get_quote_type(tickers)
async
Get quote type for tickers.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
tickers
|
str
|
Comma-separated ticker symbols. |
required |
Returns: Quote type response json including result and error.
Note
Even though the the endpoint param is called symbol, ticker was chosen to use the same name as is used in higher level (Async)Symbol class.
get_quote_summary(ticker, modules)
async
Get quote summary for the ticker.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
ticker
|
str
|
Ticker symbol. |
required |
modules
|
str
|
Comma-separated modules to include. |
required |
Returns: Quote summary response json including result and error.
Raises: ValueError: If modules are not in list of valid values.
get_timeseries(ticker, types, period1=None, period2=None)
async
Get timeseries for the ticker.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
ticker
|
str
|
Ticker symbol. |
required |
types
|
str
|
Comma-separated types (incl. frequency) to include. |
required |
period1
|
int | float | None
|
Start timestamp in seconds. (optional, default: 1st Jan 2020 timestamp) |
None
|
period2
|
int | float | None
|
End timestamp in seconds. (optional, default: now timestamp) |
None
|
Returns: Timeseries response json including result and error.
Raises: ValueError: If types are not in list of valid values.
get_options(ticker)
async
Get options for the ticker.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
ticker
|
str
|
Ticker symbol. |
required |
Returns: Options response json including result and error.
get_search(tickers)
async
Get search results for tickers.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
tickers
|
str
|
Comma-separated ticker symbols. |
required |
Returns: Search result json.
get_recommendations(tickers)
async
Get analyst recommendations for tickers.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
tickers
|
str
|
Comma-separated ticker symbols. |
required |
Returns: Recommendations response json including result and error.
get_insights(tickers)
async
Get insights for tickers.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
tickers
|
str
|
Comma-separated ticker symbols. |
required |
Returns: Insights response json including result and error.
Note
Even though the the endpoint param is called symbols, tickers was chosen to use the same name as is used in higher level (Async)Symbol class.
get_ratings(ticker)
async
Get ratings for the ticker.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
ticker
|
str
|
Ticker symbol. |
required |
Returns: Ratings result json.
get_market_summaries()
async
Get market summaries.
Returns: Market summaries response json including result and error.
get_trending()
async
Get trending tickers.
Returns: Trending tickers response json including result and error.
get_currencies()
async
Get currency exchange rates.
Returns: Currency exchange rates response json including result and error.
get_calendar_events(modules=None, start_date=None, end_date=None)
async
Get calendar events.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
modules
|
str | None
|
Comma-separated modules to include. |
None
|
start_date
|
int | float | None
|
Start timestamp in miliseconds. (optional, default: (period2 - 149days) timestamp) |
None
|
end_date
|
int | float | None
|
End timestamp in miliseconds. (optional, default: now timestamp) |
None
|
Returns: Calendar events response json including result and error.
Note: Query range cannot be greater than 150 days.