diff --git a/tradingagents/dataflows/alpha_vantage_common.py b/tradingagents/dataflows/alpha_vantage_common.py index 409ff29ea7..55138892c6 100644 --- a/tradingagents/dataflows/alpha_vantage_common.py +++ b/tradingagents/dataflows/alpha_vantage_common.py @@ -4,6 +4,7 @@ import json from datetime import datetime from io import StringIO +from typing import Union API_BASE_URL = "https://www.alphavantage.co/query" @@ -39,7 +40,7 @@ class AlphaVantageRateLimitError(Exception): """Exception raised when Alpha Vantage API rate limit is exceeded.""" pass -def _make_api_request(function_name: str, params: dict) -> dict | str: +def _make_api_request(function_name: str, params: dict) -> Union[dict, str]: """Helper function to make API requests and handle responses. Raises: diff --git a/tradingagents/dataflows/alpha_vantage_news.py b/tradingagents/dataflows/alpha_vantage_news.py index 8124fb45df..09eda713a8 100644 --- a/tradingagents/dataflows/alpha_vantage_news.py +++ b/tradingagents/dataflows/alpha_vantage_news.py @@ -1,6 +1,7 @@ from .alpha_vantage_common import _make_api_request, format_datetime_for_api +from typing import Union -def get_news(ticker, start_date, end_date) -> dict[str, str] | str: +def get_news(ticker, start_date, end_date) -> Union[dict[str, str], str]: """Returns live and historical market news & sentiment data from premier news outlets worldwide. Covers stocks, cryptocurrencies, forex, and topics like fiscal policy, mergers & acquisitions, IPOs. @@ -24,7 +25,7 @@ def get_news(ticker, start_date, end_date) -> dict[str, str] | str: return _make_api_request("NEWS_SENTIMENT", params) -def get_insider_transactions(symbol: str) -> dict[str, str] | str: +def get_insider_transactions(symbol: str) -> Union[dict[str, str], str]: """Returns latest and historical insider transactions by key stakeholders. Covers transactions by founders, executives, board members, etc.