From 8254bd5638aa293d1dafb5cfa1f1380d3efdec15 Mon Sep 17 00:00:00 2001
From: Danglewood <85772166+deeleeramone@users.noreply.github.com>
Date: Fri, 8 Mar 2024 08:31:38 -0800
Subject: [PATCH] [Enhancement] Standardize "X".price.historical Intervals and
Params (#6146)
* FMP
* tiingo
* yfinance
* intrinio
* polygon
* fmp interval descriptions
* alpha_vantage
* update unit tests
* tests
* static files
* black
* black
* black again
* codespell
* codespell again
* futures historical
* ruff
* some more black
* pylint
* now black again
* test params
* skip deprecated
* fmp test cassette
* fix some tests
* fix test_query
* fix bad symbol in toolkit integration tests
* attempt at parameter deprecation warning
* Fix edge case
* test params
* more test params
* that's the ticket
---------
Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com>
---
.../standard_models/index_historical.py | 12 +-
openbb_platform/core/tests/app/test_query.py | 2 +-
.../crypto/integration/test_crypto_api.py | 30 +-
.../crypto/integration/test_crypto_python.py | 27 +-
.../currency/integration/test_currency_api.py | 39 +-
.../integration/test_currency_python.py | 27 +-
.../integration/test_econometrics_api.py | 2 +-
.../integration/test_econometrics_python.py | 2 +-
.../equity/integration/test_equity_api.py | 192 +-
.../equity/integration/test_equity_python.py | 81 +-
.../etf/integration/test_etf_api.py | 138 +-
.../etf/integration/test_etf_python.py | 142 +-
.../index/integration/test_index_api.py | 168 +-
.../index/integration/test_index_python.py | 162 +-
.../integration/test_quantitative_api.py | 2 +-
.../integration/test_quantitative_python.py | 2 +-
.../integration/test_technical_api.py | 2 +-
.../integration/test_technical_python.py | 2 +-
.../tests/utils/integration_tests_testers.py | 13 +-
.../openbb/package/crypto_price.py | 33 +-
.../openbb/package/currency_price.py | 31 +-
.../openbb/package/equity_price.py | 72 +-
openbb_platform/openbb/package/etf.py | 100 +-
openbb_platform/openbb/package/index.py | 2 +-
.../openbb_alpha_vantage/__init__.py | 1 +
.../models/equity_historical.py | 311 +-
.../openbb_alpha_vantage/utils/helpers.py | 193 +-
.../test_av_equity_historical_fetcher.yaml | 292 +-
.../tests/test_alpha_vantage_fetchers.py | 3 +-
.../providers/cboe/openbb_cboe/__init__.py | 1 +
.../providers/fmp/openbb_fmp/__init__.py | 4 +-
.../openbb_fmp/models/crypto_historical.py | 98 +-
.../openbb_fmp/models/currency_historical.py | 96 +-
.../openbb_fmp/models/equity_historical.py | 60 +-
.../fmp/openbb_fmp/models/etf_search.py | 6 +-
.../fmp/openbb_fmp/models/index_historical.py | 113 +-
.../test_fmp_crypto_historical_fetcher.yaml | 46 +-
.../test_fmp_currency_historical_fetcher.yaml | 12 +-
.../test_fmp_index_historical_fetcher.yaml | 26 +-
.../intrinio/openbb_intrinio/__init__.py | 4 +-
.../models/equity_historical.py | 133 +-
.../models/index_historical.py | 7 +
...st_intrinio_equity_historical_fetcher.yaml | 36 +-
...est_intrinio_index_historical_fetcher.yaml | 22 +-
.../polygon/openbb_polygon/__init__.py | 6 +-
.../models/crypto_historical.py | 10 +-
.../models/currency_historical.py | 10 +-
.../models/equity_historical.py | 44 +-
.../openbb_polygon/models/index_historical.py | 10 +-
...est_polygon_crypto_historical_fetcher.yaml | 28 +-
...t_polygon_currency_historical_fetcher.yaml | 24 +-
...est_polygon_equity_historical_fetcher.yaml | 24 +-
...test_polygon_index_historical_fetcher.yaml | 88 +-
.../tiingo/openbb_tiingo/__init__.py | 1 +
.../openbb_tiingo/models/crypto_historical.py | 80 +-
.../models/currency_historical.py | 78 +-
.../openbb_tiingo/models/equity_historical.py | 63 +-
...test_tiingo_crypto_historical_fetcher.yaml | 20 +-
...st_tiingo_currency_historical_fetcher.yaml | 20 +-
.../providers/tmx/openbb_tmx/__init__.py | 1 +
.../yfinance/openbb_yfinance/__init__.py | 5 +-
.../models/crypto_historical.py | 59 +-
.../models/currency_historical.py | 55 +-
.../models/equity_historical.py | 156 +-
.../models/futures_historical.py | 47 +-
.../models/index_historical.py | 63 +-
.../yfinance/openbb_yfinance/utils/helpers.py | 43 +-
.../openbb_yfinance/utils/references.py | 18 +-
...t_y_finance_crypto_historical_fetcher.yaml | 2528 ++---------
...y_finance_currency_historical_fetcher.yaml | 4037 ++---------------
...st_y_finance_index_historical_fetcher.yaml | 425 +-
.../yfinance/tests/test_yfinance_fetchers.py | 48 +-
72 files changed, 3033 insertions(+), 7705 deletions(-)
diff --git a/openbb_platform/core/openbb_core/provider/standard_models/index_historical.py b/openbb_platform/core/openbb_core/provider/standard_models/index_historical.py
index 5a0a9f31579..ad5c1ecea46 100644
--- a/openbb_platform/core/openbb_core/provider/standard_models/index_historical.py
+++ b/openbb_platform/core/openbb_core/provider/standard_models/index_historical.py
@@ -4,10 +4,10 @@ from datetime import (
date as dateType,
datetime,
)
-from typing import Literal, Optional, Union
+from typing import Optional, Union
from dateutil import parser
-from pydantic import Field, PositiveInt, StrictFloat, field_validator
+from pydantic import Field, StrictFloat, field_validator
from openbb_core.provider.abstract.data import Data, ForceInt
from openbb_core.provider.abstract.query_params import QueryParams
@@ -31,14 +31,6 @@ class IndexHistoricalQueryParams(QueryParams):
default="1d",
description=QUERY_DESCRIPTIONS.get("interval", ""),
)
- limit: Optional[PositiveInt] = Field(
- default=10000,
- description=QUERY_DESCRIPTIONS.get("limit", ""),
- )
- sort: Optional[Literal["asc", "desc"]] = Field(
- default="asc",
- description="Sort the data in ascending or descending order.",
- )
@field_validator("symbol", mode="before", check_fields=False)
@classmethod
diff --git a/openbb_platform/core/tests/app/test_query.py b/openbb_platform/core/tests/app/test_query.py
index 54e6a5f5e2a..42cee25f79b 100644
--- a/openbb_platform/core/tests/app/test_query.py
+++ b/openbb_platform/core/tests/app/test_query.py
@@ -86,7 +86,7 @@ def test_filter_extra_params_wrong_param(query):
extra = query.filter_extra_params(extra_params, "fmp")
assert isinstance(extra, dict)
- assert len(extra) == 1
+ assert len(extra) == 0
@pytest.fixture
diff --git a/openbb_platform/extensions/crypto/integration/test_crypto_api.py b/openbb_platform/extensions/crypto/integration/test_crypto_api.py
index e91f92be6c5..161bf9960a8 100644
--- a/openbb_platform/extensions/crypto/integration/test_crypto_api.py
+++ b/openbb_platform/extensions/crypto/integration/test_crypto_api.py
@@ -43,30 +43,11 @@ def test_crypto_search(params, headers):
[
(
{
- "symbol": "BTC-USD",
- "start_date": "2023-01-01",
- "end_date": "2023-01-06",
- "provider": "polygon",
- }
- ),
- (
- {
- "interval": "1min",
+ "interval": "1d",
"provider": "fmp",
"symbol": "BTCUSD",
"start_date": "2023-01-01",
"end_date": "2023-01-02",
- "timeseries": 1,
- }
- ),
- (
- {
- "interval": "15min",
- "provider": "fmp",
- "symbol": "BTCUSD",
- "start_date": "2023-01-01",
- "end_date": "2023-01-03",
- "timeseries": 1,
}
),
(
@@ -94,18 +75,17 @@ def test_crypto_search(params, headers):
(
{
"interval": "1d",
- "period": "max",
"provider": "yfinance",
"symbol": "BTCUSD",
"start_date": "2023-01-01",
- "end_date": "2023-01-03",
+ "end_date": "2023-01-04",
}
),
(
{
"provider": "tiingo",
- "interval": "1day",
- "exchanges": ["POLONIEX", "GDAX"],
+ "interval": "1d",
+ "exchanges": None,
"symbol": "BTCUSD",
"start_date": "2023-01-01",
"end_date": "2023-06-06",
@@ -114,7 +94,7 @@ def test_crypto_search(params, headers):
(
{
"provider": "tiingo",
- "interval": "1hour",
+ "interval": "1h",
"exchanges": ["POLONIEX", "GDAX"],
"symbol": "BTCUSD",
"start_date": "2023-01-01",
diff --git a/openbb_platform/extensions/crypto/integration/test_crypto_python.py b/openbb_platform/extensions/crypto/integration/test_crypto_python.py
index 4376855d0e4..6d3f49e1ae2 100644
--- a/openbb_platform/extensions/crypto/integration/test_crypto_python.py
+++ b/openbb_platform/extensions/crypto/integration/test_crypto_python.py
@@ -38,29 +38,11 @@ def test_crypto_search(params, obb):
[
(
{
- "symbol": "BTCUSD",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
- }
- ),
- (
- {
- "interval": "1min",
+ "interval": "1d",
"provider": "fmp",
"symbol": "BTCUSD",
"start_date": "2023-01-01",
"end_date": "2023-01-02",
- "timeseries": 1,
- }
- ),
- (
- {
- "interval": "15min",
- "provider": "fmp",
- "symbol": "BTCUSD",
- "start_date": "2023-01-01",
- "end_date": "2023-01-03",
- "timeseries": 1,
}
),
(
@@ -88,7 +70,6 @@ def test_crypto_search(params, obb):
(
{
"interval": "1d",
- "period": "max",
"provider": "yfinance",
"symbol": "BTCUSD",
"start_date": "2023-01-01",
@@ -98,8 +79,8 @@ def test_crypto_search(params, obb):
(
{
"provider": "tiingo",
- "interval": "1day",
- "exchanges": ["POLONIEX", "GDAX"],
+ "interval": "1d",
+ "exchanges": None,
"symbol": "BTCUSD",
"start_date": "2023-01-01",
"end_date": "2023-06-06",
@@ -108,7 +89,7 @@ def test_crypto_search(params, obb):
(
{
"provider": "tiingo",
- "interval": "1hour",
+ "interval": "1h",
"exchanges": ["POLONIEX", "GDAX"],
"symbol": "BTCUSD",
"start_date": "2023-01-01",
diff --git a/openbb_platform/extensions/currency/integration/test_currency_api.py b/openbb_platform/extensions/currency/integration/test_currency_api.py
index 9cdfee0063e..90449a69e3f 100644
--- a/openbb_platform/extensions/currency/integration/test_currency_api.py
+++ b/openbb_platform/extensions/currency/integration/test_currency_api.py
@@ -64,21 +64,12 @@ def test_currency_search(params, headers):
(
{
"symbol": "EURUSD",
+ "interval": "1d",
"start_date": "2023-01-01",
"end_date": "2023-06-06",
- "interval": "1day",
"provider": "fmp",
}
),
- (
- {
- "interval": "1min",
- "provider": "fmp",
- "symbol": "EURUSD",
- "start_date": "2023-01-01",
- "end_date": "2023-01-02",
- }
- ),
(
{
"interval": "1m",
@@ -87,7 +78,7 @@ def test_currency_search(params, headers):
"provider": "polygon",
"symbol": "EURUSD",
"start_date": "2023-01-01",
- "end_date": "2023-01-02",
+ "end_date": "2023-01-10",
}
),
(
@@ -101,29 +92,27 @@ def test_currency_search(params, headers):
"end_date": "2023-06-06",
}
),
- (
- {
- "interval": "5m",
- "period": "max",
- "provider": "yfinance",
- "symbol": "EURUSD",
- "start_date": "2023-01-01",
- "end_date": "2023-01-02",
- }
- ),
(
{
"interval": "1d",
- "period": "max",
"provider": "yfinance",
"symbol": "EURUSD",
"start_date": "2023-01-01",
- "end_date": "2023-06-06",
+ "end_date": "2023-01-10",
}
),
(
{
- "interval": "1hour",
+ "interval": "1m",
+ "provider": "yfinance",
+ "symbol": "EURUSD",
+ "start_date": None,
+ "end_date": None,
+ }
+ ),
+ (
+ {
+ "interval": "1h",
"provider": "tiingo",
"symbol": "EURUSD",
"start_date": "2023-05-21",
@@ -132,7 +121,7 @@ def test_currency_search(params, headers):
),
(
{
- "interval": "1day",
+ "interval": "1d",
"provider": "tiingo",
"symbol": "EURUSD",
"start_date": "2023-05-21",
diff --git a/openbb_platform/extensions/currency/integration/test_currency_python.py b/openbb_platform/extensions/currency/integration/test_currency_python.py
index a2be2302101..0c91b7b19b0 100644
--- a/openbb_platform/extensions/currency/integration/test_currency_python.py
+++ b/openbb_platform/extensions/currency/integration/test_currency_python.py
@@ -59,21 +59,12 @@ def test_currency_search(params, obb):
(
{
"symbol": "EURUSD",
- "interval": "1day",
+ "interval": "1d",
"start_date": "2023-01-01",
"end_date": "2023-06-06",
"provider": "fmp",
}
),
- (
- {
- "interval": "1min",
- "provider": "fmp",
- "symbol": "EURUSD",
- "start_date": "2023-01-01",
- "end_date": "2023-01-02",
- }
- ),
(
{
"interval": "1m",
@@ -82,7 +73,7 @@ def test_currency_search(params, obb):
"provider": "polygon",
"symbol": "EURUSD",
"start_date": "2023-01-01",
- "end_date": "2023-01-02",
+ "end_date": "2023-01-10",
}
),
(
@@ -99,26 +90,24 @@ def test_currency_search(params, obb):
(
{
"interval": "1d",
- "period": "max",
"provider": "yfinance",
"symbol": "EURUSD",
"start_date": "2023-01-01",
- "end_date": "2023-01-02",
+ "end_date": "2023-01-10",
}
),
(
{
- "interval": "1d",
- "period": "max",
+ "interval": "1m",
"provider": "yfinance",
"symbol": "EURUSD",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
+ "start_date": None,
+ "end_date": None,
}
),
(
{
- "interval": "1hour",
+ "interval": "1h",
"provider": "tiingo",
"symbol": "EURUSD",
"start_date": "2023-05-21",
@@ -127,7 +116,7 @@ def test_currency_search(params, obb):
),
(
{
- "interval": "1day",
+ "interval": "1d",
"provider": "tiingo",
"symbol": "EURUSD",
"start_date": "2023-05-21",
diff --git a/openbb_platform/extensions/econometrics/integration/test_econometrics_api.py b/openbb_platform/extensions/econometrics/integration/test_econometrics_api.py
index 240749e3aab..0cf0851b451 100644
--- a/openbb_platform/extensions/econometrics/integration/test_econometrics_api.py
+++ b/openbb_platform/extensions/econometrics/integration/test_econometrics_api.py
@@ -48,7 +48,7 @@ def get_crypto_data():
return data["crypto_data"]
# TODO : add more crypto providers and symbols
- symbol = random.choice(["BTC"]) # noqa: S311
+ symbol = random.choice(["BTCUSD"]) # noqa: S311
provider = random.choice(["fmp"]) # noqa: S311
data["crypto_data"] = request_data(
diff --git a/openbb_platform/extensions/econometrics/integration/test_econometrics_python.py b/openbb_platform/extensions/econometrics/integration/test_econometrics_python.py
index e4caa1ce123..ec67c062f36 100644
--- a/openbb_platform/extensions/econometrics/integration/test_econometrics_python.py
+++ b/openbb_platform/extensions/econometrics/integration/test_econometrics_python.py
@@ -46,7 +46,7 @@ def get_crypto_data():
return data["crypto_data"]
# TODO : add more crypto providers and symbols
- symbol = random.choice(["BTC"]) # noqa: S311
+ symbol = random.choice(["BTCUSD"]) # noqa: S311
provider = random.choice(["fmp"]) # noqa: S311
data["crypto_data"] = openbb.obb.crypto.price.historical(
diff --git a/openbb_platform/extensions/equity/integration/test_equity_api.py b/openbb_platform/extensions/equity/integration/test_equity_api.py
index 465513c42b0..76d0602f955 100644
--- a/openbb_platform/extensions/equity/integration/test_equity_api.py
+++ b/openbb_platform/extensions/equity/integration/test_equity_api.py
@@ -1,7 +1,6 @@
"""API integration tests for equity extension."""
import base64
-from datetime import time
import pytest
import requests
@@ -457,7 +456,7 @@ def test_equity_fundamental_income_growth(params, headers):
{
"symbol": "RY",
"provider": "tmx",
- "limit": None,
+ "limit": 0,
}
),
(
@@ -902,153 +901,122 @@ def test_equity_compare_groups(params, headers):
[
(
{
- "symbol": "AAPL",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
- "interval": "1d",
- "provider": "yfinance",
- }
- ),
- (
- {
- "adjusted": True,
+ "adjustment": "unadjusted",
"extended_hours": True,
- "month": "2023-01",
- "output_size": "full",
"provider": "alpha_vantage",
"symbol": "AAPL",
"start_date": "2023-01-01",
- "end_date": "2023-01-02",
- "interval": "1m",
+ "end_date": "2023-06-06",
+ "interval": "15m",
}
),
(
{
- "adjusted": True,
+ "provider": "cboe",
+ "symbol": "AAPL",
+ "start_date": None,
+ "end_date": None,
+ "interval": "1m",
+ "use_cache": False,
+ }
+ ),
+ (
+ {
+ "provider": "cboe",
+ "symbol": "AAPL",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ "interval": "1d",
+ "use_cache": False,
+ }
+ ),
+ (
+ {
+ "provider": "fmp",
+ "symbol": "AAPL",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ "interval": "1d",
+ }
+ ),
+ (
+ {
+ "timezone": "UTC",
+ "source": "realtime",
+ "start_time": None,
+ "end_time": None,
+ "provider": "intrinio",
+ "symbol": "AAPL",
+ "start_date": "2023-06-01",
+ "end_date": "2023-06-03",
+ "interval": "1h",
+ }
+ ),
+ (
+ {
+ "timezone": None,
+ "source": "delayed",
+ "start_time": None,
+ "end_time": None,
+ "provider": "intrinio",
+ "symbol": "AAPL",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ "interval": "1d",
+ }
+ ),
+ (
+ {
+ "sort": "desc",
+ "limit": "49999",
+ "adjustment": "unadjusted",
+ "provider": "polygon",
+ "symbol": "AAPL",
+ "start_date": "2023-01-01",
+ "end_date": "2023-01-03",
+ "interval": "1m",
"extended_hours": False,
- "output_size": "full",
- "month": "2023-01",
- "provider": "alpha_vantage",
- "symbol": "AAPL",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
- "interval": "1d",
- }
- ),
- (
- {
- "provider": "cboe",
- "symbol": "AAPL",
- "start_date": "2024-02-19",
- "end_date": "2024-02-20",
- "interval": "1m",
- "use_cache": False,
- }
- ),
- (
- {
- "provider": "cboe",
- "symbol": "AAPL",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
- "interval": "1d",
- "use_cache": False,
- }
- ),
- (
- {
- "limit": "30",
- "provider": "fmp",
- "symbol": "AAPL",
- "start_date": "2023-01-01",
- "end_date": "2023-01-02",
- "interval": "1m",
- }
- ),
- (
- {
- "limit": "30",
- "provider": "fmp",
- "symbol": "AAPL",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
- "interval": "1d",
- }
- ),
- (
- {
- "timezone": "UTC",
- "source": "realtime",
- "start_time": time(5, 30, 0),
- "end_time": time(12, 0, 0),
- "provider": "intrinio",
- "symbol": "AAPL",
- "start_date": "2023-06-01",
- "end_date": "2023-06-03",
- "interval": "1h",
- }
- ),
- (
- {
- "timezone": "UTC",
- "source": "realtime",
- "start_time": time(5, 30, 0),
- "end_time": time(12, 0, 0),
- "provider": "intrinio",
- "symbol": "AAPL",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
- "interval": "1d",
}
),
(
{
"sort": "desc",
"limit": "49999",
- "adjusted": "True",
- "provider": "polygon",
- "symbol": "AAPL",
- "start_date": "2023-01-01",
- "end_date": "2023-01-04",
- "interval": "1m",
- }
- ),
- (
- {
- "sort": "desc",
- "limit": "49999",
- "adjusted": "True",
+ "adjustment": "splits_only",
"provider": "polygon",
"symbol": "AAPL",
"start_date": "2023-01-01",
"end_date": "2023-06-06",
"interval": "1d",
+ "extended_hours": False,
}
),
(
{
- "prepost": False,
- "include": True,
- "adjusted": False,
- "ignore_tz": True,
+ "extended_hours": False,
+ "include_actions": False,
+ "adjustment": "splits_and_dividends",
"provider": "yfinance",
"symbol": "AAPL",
"start_date": "2023-06-01",
"end_date": "2023-06-03",
"interval": "1h",
+ "adjusted": False,
+ "prepost": False,
}
),
(
{
- "prepost": False,
- "include": True,
- "adjusted": False,
- "ignore_tz": True,
+ "extended_hours": False,
+ "include_actions": True,
+ "adjustment": "splits_only",
"provider": "yfinance",
"symbol": "AAPL",
"start_date": "2023-01-01",
"end_date": "2023-06-06",
"interval": "1d",
+ "adjusted": False,
+ "prepost": False,
}
),
(
@@ -1083,8 +1051,6 @@ def test_equity_compare_groups(params, headers):
)
@pytest.mark.integration
def test_equity_price_historical(params, headers):
- if params.get("provider") == "alpha_vantage":
- pytest.skip("Alpha Vantage is premium.")
params = {p: v for p, v in params.items() if v}
query_str = get_querystring(params, [])
diff --git a/openbb_platform/extensions/equity/integration/test_equity_python.py b/openbb_platform/extensions/equity/integration/test_equity_python.py
index 5dcef760320..7182c1f249e 100644
--- a/openbb_platform/extensions/equity/integration/test_equity_python.py
+++ b/openbb_platform/extensions/equity/integration/test_equity_python.py
@@ -1,6 +1,6 @@
"""Python interface integration tests for the equity extension."""
-from datetime import date, time, timedelta
+from datetime import date, timedelta
import pytest
from extensions.tests.conftest import parametrize
@@ -423,7 +423,7 @@ def test_equity_fundamental_income_growth(params, obb):
{
"symbol": "RY",
"provider": "tmx",
- "limit": None,
+ "limit": 0,
}
),
(
@@ -840,36 +840,13 @@ def test_equity_compare_groups(params, obb):
[
(
{
- "symbol": "AAPL",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
- "interval": "1d",
- }
- ),
- (
- {
- "adjusted": True,
+ "adjustment": "unadjusted",
"extended_hours": True,
- "month": "2023-01",
- "output_size": "full",
- "provider": "alpha_vantage",
- "symbol": "AAPL",
- "start_date": "2023-01-01",
- "end_date": "2023-01-02",
- "interval": "1m",
- }
- ),
- (
- {
- "adjusted": True,
- "extended_hours": False,
- "output_size": "full",
- "month": "2023-01",
"provider": "alpha_vantage",
"symbol": "AAPL",
"start_date": "2023-01-01",
"end_date": "2023-06-06",
- "interval": "1d",
+ "interval": "15m",
}
),
(
@@ -894,17 +871,6 @@ def test_equity_compare_groups(params, obb):
),
(
{
- "limit": "30",
- "provider": "fmp",
- "symbol": "AAPL",
- "start_date": "2023-01-02",
- "end_date": "2023-01-03",
- "interval": "1m",
- }
- ),
- (
- {
- "limit": "30",
"provider": "fmp",
"symbol": "AAPL",
"start_date": "2023-01-01",
@@ -916,8 +882,8 @@ def test_equity_compare_groups(params, obb):
{
"timezone": "UTC",
"source": "realtime",
- "start_time": time(5, 30, 0),
- "end_time": time(12, 0, 0),
+ "start_time": None,
+ "end_time": None,
"provider": "intrinio",
"symbol": "AAPL",
"start_date": "2023-06-01",
@@ -927,10 +893,10 @@ def test_equity_compare_groups(params, obb):
),
(
{
- "timezone": "UTC",
- "source": "realtime",
- "start_time": time(5, 30, 0),
- "end_time": time(12, 0, 0),
+ "timezone": None,
+ "source": "delayed",
+ "start_time": None,
+ "end_time": None,
"provider": "intrinio",
"symbol": "AAPL",
"start_date": "2023-01-01",
@@ -942,50 +908,54 @@ def test_equity_compare_groups(params, obb):
{
"sort": "desc",
"limit": "49999",
- "adjusted": "True",
+ "adjustment": "unadjusted",
"provider": "polygon",
"symbol": "AAPL",
"start_date": "2023-01-01",
"end_date": "2023-01-03",
"interval": "1m",
+ "extended_hours": False,
}
),
(
{
"sort": "desc",
"limit": "49999",
- "adjusted": "True",
+ "adjustment": "splits_only",
"provider": "polygon",
"symbol": "AAPL",
"start_date": "2023-01-01",
"end_date": "2023-06-06",
"interval": "1d",
+ "extended_hours": False,
}
),
(
{
- "prepost": False,
- "include": True,
- "adjusted": False,
- "ignore_tz": True,
+ "extended_hours": False,
+ "include_actions": False,
+ "adjustment": "splits_and_dividends",
"provider": "yfinance",
"symbol": "AAPL",
"start_date": "2023-06-01",
"end_date": "2023-06-03",
"interval": "1h",
+ "adjusted": True,
+ "prepost": False,
}
),
(
{
- "prepost": False,
- "include": True,
- "adjusted": False,
- "ignore_tz": True,
+ "extended_hours": False,
+ "include_actions": True,
+ "adjustment": "splits_only",
"provider": "yfinance",
"symbol": "AAPL",
"start_date": "2023-01-01",
"end_date": "2023-06-06",
"interval": "1d",
+ "adjusted": False,
+ "prepost": False,
}
),
(
@@ -1020,9 +990,6 @@ def test_equity_compare_groups(params, obb):
)
@pytest.mark.integration
def test_equity_price_historical(params, obb):
- if params.get("provider") == "alpha_vantage":
- pytest.skip("skipping alpha_vantage")
-
result = obb.equity.price.historical(**params)
assert result
assert isinstance(result, OBBject)
diff --git a/openbb_platform/extensions/etf/integration/test_etf_api.py b/openbb_platform/extensions/etf/integration/test_etf_api.py
index 4073a89631a..4c6e7b33d3a 100644
--- a/openbb_platform/extensions/etf/integration/test_etf_api.py
+++ b/openbb_platform/extensions/etf/integration/test_etf_api.py
@@ -50,18 +50,150 @@ def test_etf_search(params, headers):
[
(
{
- "symbol": "IOO",
+ "adjustment": "unadjusted",
+ "extended_hours": True,
+ "provider": "alpha_vantage",
+ "symbol": "SPY",
"start_date": "2023-01-01",
"end_date": "2023-06-06",
- "provider": "yfinance",
+ "interval": "15m",
}
),
(
{
- "symbol": "MISL",
+ "provider": "cboe",
+ "symbol": "SPY",
+ "start_date": None,
+ "end_date": None,
+ "interval": "1m",
+ "use_cache": False,
+ }
+ ),
+ (
+ {
+ "provider": "cboe",
+ "symbol": "SPY",
"start_date": "2023-01-01",
"end_date": "2023-06-06",
+ "interval": "1d",
+ "use_cache": False,
+ }
+ ),
+ (
+ {
+ "provider": "fmp",
+ "symbol": "SPY",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ "interval": "1d",
+ }
+ ),
+ (
+ {
+ "timezone": "UTC",
+ "source": "realtime",
+ "start_time": None,
+ "end_time": None,
+ "provider": "intrinio",
+ "symbol": "SPY",
+ "start_date": "2023-06-01",
+ "end_date": "2023-06-03",
+ "interval": "1h",
+ }
+ ),
+ (
+ {
+ "timezone": None,
+ "source": "delayed",
+ "start_time": None,
+ "end_time": None,
+ "provider": "intrinio",
+ "symbol": "AAPL",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ "interval": "1d",
+ }
+ ),
+ (
+ {
+ "sort": "desc",
+ "limit": "49999",
+ "adjustment": "unadjusted",
+ "provider": "polygon",
+ "symbol": "SPY",
+ "start_date": "2023-01-01",
+ "end_date": "2023-01-03",
+ "interval": "1m",
+ "extended_hours": False,
+ }
+ ),
+ (
+ {
+ "sort": "desc",
+ "limit": "49999",
+ "adjustment": "splits_only",
+ "provider": "polygon",
+ "symbol": "SPY",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ "interval": "1d",
+ "extended_hours": False,
+ }
+ ),
+ (
+ {
+ "extended_hours": False,
+ "include_actions": False,
+ "adjustment": "splits_and_dividends",
"provider": "yfinance",
+ "symbol": "SPY",
+ "start_date": "2023-06-01",
+ "end_date": "2023-06-03",
+ "interval": "1h",
+ "adjusted": True,
+ "prepost": False,
+ }
+ ),
+ (
+ {
+ "extended_hours": False,
+ "include_actions": True,
+ "adjustment": "splits_only",
+ "provider": "yfinance",
+ "symbol": "SPY",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ "interval": "1d",
+ "adjusted": False,
+ "prepost": False,
+ }
+ ),
+ (
+ {
+ "provider": "tiingo",
+ "symbol": "SPY",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ "interval": "1d",
+ }
+ ),
+ (
+ {
+ "provider": "tiingo",
+ "symbol": "SPY",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ "interval": "1M",
+ }
+ ),
+ (
+ {
+ "provider": "tmx",
+ "symbol": "SPY:US",
+ "start_date": "2023-01-01",
+ "end_date": "2023-12-31",
+ "interval": "1d",
+ "adjustment": "splits_only",
}
),
],
diff --git a/openbb_platform/extensions/etf/integration/test_etf_python.py b/openbb_platform/extensions/etf/integration/test_etf_python.py
index 43be1ac4f53..c54c53737d4 100644
--- a/openbb_platform/extensions/etf/integration/test_etf_python.py
+++ b/openbb_platform/extensions/etf/integration/test_etf_python.py
@@ -48,27 +48,157 @@ def test_etf_search(params, obb):
[
(
{
- "symbol": "IOO",
+ "adjustment": "unadjusted",
+ "extended_hours": True,
+ "provider": "alpha_vantage",
+ "symbol": "SPY",
"start_date": "2023-01-01",
"end_date": "2023-06-06",
- "provider": "yfinance",
+ "interval": "15m",
}
),
(
{
- "symbol": "MISL",
+ "provider": "cboe",
+ "symbol": "SPY",
+ "start_date": None,
+ "end_date": None,
+ "interval": "1m",
+ "use_cache": False,
+ }
+ ),
+ (
+ {
+ "provider": "cboe",
+ "symbol": "SPY",
"start_date": "2023-01-01",
"end_date": "2023-06-06",
+ "interval": "1d",
+ "use_cache": False,
+ }
+ ),
+ (
+ {
+ "provider": "fmp",
+ "symbol": "SPY",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ "interval": "1d",
+ }
+ ),
+ (
+ {
+ "timezone": "UTC",
+ "source": "realtime",
+ "start_time": None,
+ "end_time": None,
+ "provider": "intrinio",
+ "symbol": "SPY",
+ "start_date": "2023-06-01",
+ "end_date": "2023-06-03",
+ "interval": "1h",
+ }
+ ),
+ (
+ {
+ "timezone": None,
+ "source": "delayed",
+ "start_time": None,
+ "end_time": None,
+ "provider": "intrinio",
+ "symbol": "AAPL",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ "interval": "1d",
+ }
+ ),
+ (
+ {
+ "sort": "desc",
+ "limit": "49999",
+ "adjustment": "unadjusted",
+ "provider": "polygon",
+ "symbol": "SPY",
+ "start_date": "2023-01-01",
+ "end_date": "2023-01-03",
+ "interval": "1m",
+ "extended_hours": False,
+ }
+ ),
+ (
+ {
+ "sort": "desc",
+ "limit": "49999",
+ "adjustment": "splits_only",
+ "provider": "polygon",
+ "symbol": "SPY",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ "interval": "1d",
+ "extended_hours": False,
+ }
+ ),
+ (
+ {
+ "extended_hours": False,
+ "include_actions": False,
+ "adjustment": "splits_and_dividends",
"provider": "yfinance",
+ "symbol": "SPY",
+ "start_date": "2023-06-01",
+ "end_date": "2023-06-03",
+ "interval": "1h",
+ "adjusted": True,
+ "prepost": False,
+ }
+ ),
+ (
+ {
+ "extended_hours": False,
+ "include_actions": True,
+ "adjustment": "splits_only",
+ "provider": "yfinance",
+ "symbol": "SPY",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ "interval": "1d",
+ "adjusted": False,
+ "prepost": False,
+ }
+ ),
+ (
+ {
+ "provider": "tiingo",
+ "symbol": "SPY",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ "interval": "1d",
+ }
+ ),
+ (
+ {
+ "provider": "tiingo",
+ "symbol": "SPY",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ "interval": "1M",
+ }
+ ),
+ (
+ {
+ "provider": "tmx",
+ "symbol": "SPY:US",
+ "start_date": "2023-01-01",
+ "end_date": "2023-12-31",
+ "interval": "1d",
+ "adjustment": "splits_only",
}
),
],
)
@pytest.mark.integration
def test_etf_historical(params, obb):
- params = {p: v for p, v in params.items() if v}
-
- result = obb.etf.historical(**params)
+ result = obb.equity.price.historical(**params)
assert result
assert isinstance(result, OBBject)
assert len(result.results) > 0
diff --git a/openbb_platform/extensions/index/integration/test_index_api.py b/openbb_platform/extensions/index/integration/test_index_api.py
index 430c5c605bd..cd6e2868384 100644
--- a/openbb_platform/extensions/index/integration/test_index_api.py
+++ b/openbb_platform/extensions/index/integration/test_index_api.py
@@ -41,18 +41,6 @@ def test_index_constituents(params, headers):
@parametrize(
"params",
[
- (
- {
- "interval": "1m",
- "provider": "cboe",
- "symbol": "AAVE100",
- "start_date": "2024-01-01",
- "end_date": "2024-02-05",
- "use_cache": False,
- "sort": None,
- "limit": None,
- }
- ),
(
{
"interval": "1d",
@@ -61,39 +49,22 @@ def test_index_constituents(params, headers):
"start_date": "2023-01-01",
"end_date": "2023-06-06",
"use_cache": False,
- "sort": None,
- "limit": None,
}
),
(
{
- "interval": "1min",
+ "interval": "1d",
"provider": "fmp",
"symbol": "^DJI",
"start_date": "2024-01-01",
"end_date": "2024-02-05",
- "timeseries": 1,
- "sort": "desc",
- "limit": None,
- }
- ),
- (
- {
- "interval": "1day",
- "provider": "fmp",
- "symbol": "^DJI",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
- "timeseries": 1,
- "sort": "desc",
- "limit": None,
}
),
(
{
+ "interval": "1m",
"sort": "desc",
"limit": 49999,
- "interval": "1m",
"provider": "polygon",
"symbol": "NDX",
"start_date": "2023-01-01",
@@ -114,15 +85,10 @@ def test_index_constituents(params, headers):
(
{
"interval": "1d",
- "period": "max",
- "prepost": True,
- "rounding": True,
"provider": "yfinance",
"symbol": "DJI",
"start_date": "2023-01-01",
"end_date": "2023-06-06",
- "sort": None,
- "limit": None,
}
),
(
@@ -132,7 +98,6 @@ def test_index_constituents(params, headers):
"start_date": "2023-01-01",
"end_date": "2023-06-06",
"symbol": "DJI",
- "sort": "desc",
"limit": 100,
}
),
@@ -152,29 +117,6 @@ def test_index_price_historical(params, headers):
@parametrize(
"params",
[
- (
- {
- "symbol": "^DJI",
- "start_date": "2023-01-01",
- "end_date": "2023-03-03",
- "provider": "fmp",
- "sort": "desc",
- "interval": "1day",
- "limit": None,
- }
- ),
- (
- {
- "interval": "1m",
- "provider": "cboe",
- "symbol": "AAVE100",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
- "use_cache": True,
- "limit": None,
- "sort": None,
- }
- ),
(
{
"interval": "1d",
@@ -183,92 +125,62 @@ def test_index_price_historical(params, headers):
"start_date": "2023-01-01",
"end_date": "2023-06-06",
"use_cache": False,
- "limit": None,
- "sort": None,
- }
- ),
- (
- {
- "interval": "1min",
- "provider": "fmp",
- "symbol": "^DJI",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
- "timeseries": 1,
- "sort": "desc",
- "limit": None,
- }
- ),
- (
- {
- "interval": "1day",
- "provider": "fmp",
- "symbol": "^DJI",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
- "timeseries": 1,
- "sort": "desc",
- "limit": None,
- }
- ),
- (
- {
- "timespan": "minute",
- "sort": "desc",
- "limit": 49999,
- "adjusted": True,
- "multiplier": 1,
- "provider": "polygon",
- "symbol": "NDX",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
- "interval": None,
- }
- ),
- (
- {
- "timespan": "day",
- "sort": "desc",
- "limit": 49999,
- "adjusted": True,
- "multiplier": 1,
- "provider": "polygon",
- "symbol": "NDX",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
- "interval": None,
}
),
(
{
"interval": "1d",
- "period": "max",
- "prepost": True,
- "rounding": True,
- "provider": "yfinance",
- "symbol": "DJI",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
- "limit": None,
- "sort": None,
+ "provider": "fmp",
+ "symbol": "^DJI",
+ "start_date": "2024-01-01",
+ "end_date": "2024-02-05",
}
),
(
{
+ "interval": "1m",
+ "sort": "desc",
+ "limit": 49999,
+ "provider": "polygon",
+ "symbol": "NDX",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ }
+ ),
+ (
+ {
+ "interval": "1d",
+ "sort": "desc",
+ "limit": 49999,
+ "provider": "polygon",
+ "symbol": "NDX",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ }
+ ),
+ (
+ {
+ "interval": "1d",
+ "provider": "yfinance",
+ "symbol": "DJI",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ }
+ ),
+ (
+ {
+ "interval": "1d",
"provider": "intrinio",
"start_date": "2023-01-01",
"end_date": "2023-06-06",
- "symbol": "$DJI",
- "tag": "level",
- "sort": "desc",
+ "symbol": "DJI",
"limit": 100,
- "type": None,
- "interval": None,
}
),
],
)
@pytest.mark.integration
+@pytest.mark.skip(reason="Deprecating this endpoint")
def test_index_market(params, headers):
params = {p: v for p, v in params.items() if v}
diff --git a/openbb_platform/extensions/index/integration/test_index_python.py b/openbb_platform/extensions/index/integration/test_index_python.py
index fa73aaa5e48..29f20b5f34a 100644
--- a/openbb_platform/extensions/index/integration/test_index_python.py
+++ b/openbb_platform/extensions/index/integration/test_index_python.py
@@ -42,47 +42,18 @@ def test_index_constituents(params, obb):
"interval": "1d",
"provider": "cboe",
"symbol": "AAVE100",
- "start_date": "2024-01-01",
- "end_date": "2024-02-05",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
"use_cache": False,
- "sort": None,
- "limit": None,
}
),
(
{
"interval": "1d",
- "provider": "cboe",
- "symbol": "AAVE100",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
- "use_cache": False,
- "sort": None,
- "limit": None,
- }
- ),
- (
- {
- "interval": "1min",
"provider": "fmp",
"symbol": "^DJI",
"start_date": "2024-01-01",
"end_date": "2024-02-05",
- "timeseries": 1,
- "sort": "desc",
- "limit": None,
- }
- ),
- (
- {
- "interval": "1day",
- "provider": "fmp",
- "symbol": "^DJI",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
- "timeseries": 1,
- "sort": "desc",
- "limit": None,
}
),
(
@@ -110,15 +81,10 @@ def test_index_constituents(params, obb):
(
{
"interval": "1d",
- "period": "max",
- "prepost": True,
- "rounding": True,
"provider": "yfinance",
"symbol": "DJI",
"start_date": "2023-01-01",
"end_date": "2023-06-06",
- "sort": None,
- "limit": None,
}
),
(
@@ -128,7 +94,6 @@ def test_index_constituents(params, obb):
"start_date": "2023-01-01",
"end_date": "2023-06-06",
"symbol": "DJI",
- "sort": "desc",
"limit": 100,
}
),
@@ -145,123 +110,70 @@ def test_index_price_historical(params, obb):
@parametrize(
"params",
[
- (
- {
- "symbol": "^DJI",
- "start_date": "2023-01-01",
- "end_date": "2023-03-03",
- "provider": "fmp",
- "sort": "desc",
- "interval": "1day",
- "limit": None,
- }
- ),
(
{
"interval": "1d",
"provider": "cboe",
"symbol": "AAVE100",
"start_date": "2023-01-01",
- "end_date": "2023-01-05",
- "use_cache": True,
- "limit": None,
- "sort": None,
- }
- ),
- (
- {
- "interval": "1d",
- "provider": "cboe",
- "symbol": "AAVE100",
- "start_date": "2024-01-01",
- "end_date": "2024-02-06",
+ "end_date": "2023-06-06",
"use_cache": False,
- "limit": None,
- "sort": None,
- }
- ),
- (
- {
- "interval": "1min",
- "provider": "fmp",
- "symbol": "^DJI",
- "start_date": "2024-02-01",
- "end_date": "2024-02-03",
- "timeseries": 1,
- "sort": "desc",
- "limit": None,
- }
- ),
- (
- {
- "interval": "1day",
- "provider": "fmp",
- "symbol": "^DJI",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
- "timeseries": 1,
- "sort": "desc",
- "limit": None,
- }
- ),
- (
- {
- "timespan": "minute",
- "sort": "desc",
- "limit": 49999,
- "adjusted": True,
- "multiplier": 1,
- "provider": "polygon",
- "symbol": "NDX",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
- "interval": None,
- }
- ),
- (
- {
- "timespan": "day",
- "sort": "desc",
- "limit": 49999,
- "adjusted": True,
- "multiplier": 1,
- "provider": "polygon",
- "symbol": "NDX",
- "start_date": "2023-01-01",
- "end_date": "2023-06-06",
- "interval": None,
}
),
(
{
"interval": "1d",
- "period": "max",
- "prepost": True,
- "rounding": True,
+ "provider": "fmp",
+ "symbol": "^DJI",
+ "start_date": "2024-01-01",
+ "end_date": "2024-02-05",
+ }
+ ),
+ (
+ {
+ "interval": "1m",
+ "sort": "desc",
+ "limit": 49999,
+ "provider": "polygon",
+ "symbol": "NDX",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ }
+ ),
+ (
+ {
+ "interval": "1d",
+ "sort": "desc",
+ "limit": 49999,
+ "provider": "polygon",
+ "symbol": "NDX",
+ "start_date": "2023-01-01",
+ "end_date": "2023-06-06",
+ }
+ ),
+ (
+ {
+ "interval": "1d",
"provider": "yfinance",
"symbol": "DJI",
"start_date": "2023-01-01",
"end_date": "2023-06-06",
- "limit": None,
- "sort": None,
}
),
(
{
+ "interval": "1d",
"provider": "intrinio",
"start_date": "2023-01-01",
"end_date": "2023-06-06",
- "symbol": "$DJI",
- "tag": "level",
- "sort": "desc",
+ "symbol": "DJI",
"limit": 100,
- "type": None,
- "interval": None,
}
),
],
)
@pytest.mark.integration
+@pytest.mark.skip(reason="Deprecating this endpoint")
def test_index_market(params, obb):
result = obb.index.market(**params)
assert result
diff --git a/openbb_platform/extensions/quantitative/integration/test_quantitative_api.py b/openbb_platform/extensions/quantitative/integration/test_quantitative_api.py
index ecb4960c4d4..e42c06c24ad 100644
--- a/openbb_platform/extensions/quantitative/integration/test_quantitative_api.py
+++ b/openbb_platform/extensions/quantitative/integration/test_quantitative_api.py
@@ -57,7 +57,7 @@ def get_crypto_data():
return data["crypto_data"]
# TODO : add more crypto providers and symbols
- symbol = random.choice(["BTC"]) # noqa: S311
+ symbol = random.choice(["BTCUSD"]) # noqa: S311
provider = random.choice(["fmp"]) # noqa: S311
data["crypto_data"] = request_data(
diff --git a/openbb_platform/extensions/quantitative/integration/test_quantitative_python.py b/openbb_platform/extensions/quantitative/integration/test_quantitative_python.py
index 5c55621a8ae..d84c6981d61 100644
--- a/openbb_platform/extensions/quantitative/integration/test_quantitative_python.py
+++ b/openbb_platform/extensions/quantitative/integration/test_quantitative_python.py
@@ -45,7 +45,7 @@ def get_crypto_data():
return data["crypto_data"]
# TODO : add more crypto providers and symbols
- symbol = random.choice(["BTC"]) # noqa: S311
+ symbol = random.choice(["BTCUSD"]) # noqa: S311
provider = random.choice(["fmp"]) # noqa: S311
data["crypto_data"] = openbb.obb.crypto.price.historical(
diff --git a/openbb_platform/extensions/technical/integration/test_technical_api.py b/openbb_platform/extensions/technical/integration/test_technical_api.py
index f14df504110..9c3f7f11ec9 100644
--- a/openbb_platform/extensions/technical/integration/test_technical_api.py
+++ b/openbb_platform/extensions/technical/integration/test_technical_api.py
@@ -56,7 +56,7 @@ def get_crypto_data():
return data["crypto_data"]
# TODO : add more crypto providers and symbols
- symbol = random.choice(["BTC"]) # noqa: S311
+ symbol = random.choice(["BTCUSD"]) # noqa: S311
provider = random.choice(["fmp"]) # noqa: S311
data["crypto_data"] = request_data(
diff --git a/openbb_platform/extensions/technical/integration/test_technical_python.py b/openbb_platform/extensions/technical/integration/test_technical_python.py
index 6787bb9029d..c060b3ec0d4 100644
--- a/openbb_platform/extensions/technical/integration/test_technical_python.py
+++ b/openbb_platform/extensions/technical/integration/test_technical_python.py
@@ -45,7 +45,7 @@ def get_crypto_data():
return data["crypto_data"]
# TODO : add more crypto providers and symbols
- symbol = random.choice(["BTC"]) # noqa: S311
+ symbol = random.choice(["BTCUSD"]) # noqa: S311
provider = random.choice(["fmp"]) # noqa: S311
data["crypto_data"] = openbb.obb.crypto.price.historical(
diff --git a/openbb_platform/extensions/tests/utils/integration_tests_testers.py b/openbb_platform/extensions/tests/utils/integration_tests_testers.py
index 1e7027f86df..fc1ff20edd0 100644
--- a/openbb_platform/extensions/tests/utils/integration_tests_testers.py
+++ b/openbb_platform/extensions/tests/utils/integration_tests_testers.py
@@ -235,8 +235,11 @@ def check_integration_tests(
command_params: Dict[str, Dict[str, dict]] = provider_interface_map[
model
]
- function_params = functions[function].pytestmark[1].args[1]
-
+ try:
+ function_params = functions[function].pytestmark[1].args[1]
+ except IndexError:
+ # Another decorator is below the parametrize decorator
+ function_params = functions[function].pytestmark[2].args[1]
missing_items = check_function(
command_params, function_params, function, False
)
@@ -255,7 +258,11 @@ def check_integration_tests(
processing_command_params = [
{k: "" for k in get_test_params_data_processing(hints)}
]
- function_params = functions[function].pytestmark[1].args[1]
+ try:
+ function_params = functions[function].pytestmark[1].args[1]
+ except IndexError:
+ # Another decorator is below the parametrize decorator
+ function_params = functions[function].pytestmark[2].args[1]
missing_items = check_function(
processing_command_params, function_params, function, True # type: ignore
diff --git a/openbb_platform/openbb/package/crypto_price.py b/openbb_platform/openbb/package/crypto_price.py
index 23ad4ec0a86..0572eacd4ef 100644
--- a/openbb_platform/openbb/package/crypto_price.py
+++ b/openbb_platform/openbb/package/crypto_price.py
@@ -26,7 +26,7 @@ class ROUTER_crypto_price(Container):
symbol: Annotated[
Union[str, List[str]],
OpenBBCustomParameter(
- description="Symbol to get data for. Can use CURR1-CURR2 or CURR1CURR2 format. Multiple items allowed for provider(s): fmp, polygon, yfinance."
+ description="Symbol to get data for. Can use CURR1-CURR2 or CURR1CURR2 format. Multiple items allowed for provider(s): fmp, polygon, tiingo, yfinance."
),
],
start_date: Annotated[
@@ -49,7 +49,7 @@ class ROUTER_crypto_price(Container):
Parameters
----------
symbol : Union[str, List[str]]
- Symbol to get data for. Can use CURR1-CURR2 or CURR1CURR2 format. Multiple items allowed for provider(s): fmp, polygon, yfinance.
+ Symbol to get data for. Can use CURR1-CURR2 or CURR1CURR2 format. Multiple items allowed for provider(s): fmp, polygon, tiingo, yfinance.
start_date : Union[datetime.date, None, str]
Start date of the data, in YYYY-MM-DD format.
end_date : Union[datetime.date, None, str]
@@ -58,18 +58,14 @@ class ROUTER_crypto_price(Container):
The provider to use for the query, by default None.
If None, the provider specified in defaults is selected or 'fmp' if there is
no default.
- timeseries : Optional[Annotated[int, Ge(ge=0)]]
- Number of days to look back. (provider: fmp)
- interval : Optional[Union[Literal['1min', '5min', '15min', '30min', '1hour', '4hour', '1day'], str, Literal['1m', '2m', '5m', '15m', '30m', '60m', '90m', '1h', '1d', '5d', '1wk', '1mo', '3mo']]]
- Data granularity. (provider: fmp, polygon, tiingo, yfinance)
+ interval : Union[Literal['1m', '5m', '15m', '30m', '1h', '4h', '1d'], str, Literal['1m', '2m', '5m', '15m', '30m', '60m', '90m', '1h', '1d', '5d', '1W', '1M', '1Q']]
+ Time interval of the data to return. (provider: fmp, polygon, tiingo, yfinance)
sort : Literal['asc', 'desc']
- Sort order of the data. (provider: polygon)
+ Sort order of the data. This impacts the results in combination with the 'limit' parameter. The results are always returned in ascending order by date. (provider: polygon)
limit : int
The number of data entries to return. (provider: polygon)
exchanges : Optional[List[str]]
To limit the query to a subset of exchanges e.g. ['POLONIEX', 'GDAX'] (provider: tiingo)
- period : Optional[Literal['1d', '5d', '1mo', '3mo', '6mo', '1y', '2y', '5y', '10y', 'ytd', 'max']]
- Time period of the data to return. (provider: yfinance)
Returns
-------
@@ -103,16 +99,10 @@ class ROUTER_crypto_price(Container):
Volume Weighted Average Price over the period.
adj_close : Optional[float]
The adjusted close price. (provider: fmp)
- unadjusted_volume : Optional[float]
- Unadjusted volume of the symbol. (provider: fmp)
change : Optional[float]
- Change in the price of the symbol from the previous day. (provider: fmp)
+ Change in the price from the previous close. (provider: fmp)
change_percent : Optional[float]
- Change % in the price of the symbol. (provider: fmp)
- label : Optional[str]
- Human readable format of the date. (provider: fmp)
- change_over_time : Optional[float]
- Change % in the price of the symbol over a period of time. (provider: fmp)
+ Change in the price from the previous close, as a normalized percent. (provider: fmp)
transactions : Optional[Union[Annotated[int, Gt(gt=0)], int]]
Number of transactions for the symbol in the time period. (provider: polygon, tiingo)
volume_notional : Optional[float]
@@ -145,7 +135,14 @@ class ROUTER_crypto_price(Container):
},
extra_params=kwargs,
extra_info={
- "symbol": {"multiple_items_allowed": ["fmp", "polygon", "yfinance"]}
+ "symbol": {
+ "multiple_items_allowed": [
+ "fmp",
+ "polygon",
+ "tiingo",
+ "yfinance",
+ ]
+ }
},
)
)
diff --git a/openbb_platform/openbb/package/currency_price.py b/openbb_platform/openbb/package/currency_price.py
index 1262aeb1754..2be0e311fe9 100644
--- a/openbb_platform/openbb/package/currency_price.py
+++ b/openbb_platform/openbb/package/currency_price.py
@@ -26,7 +26,7 @@ class ROUTER_currency_price(Container):
symbol: Annotated[
Union[str, List[str]],
OpenBBCustomParameter(
- description="Symbol to get data for. Can use CURR1-CURR2 or CURR1CURR2 format. Multiple items allowed for provider(s): polygon, yfinance."
+ description="Symbol to get data for. Can use CURR1-CURR2 or CURR1CURR2 format. Multiple items allowed for provider(s): fmp, polygon, tiingo, yfinance."
),
],
start_date: Annotated[
@@ -56,7 +56,7 @@ class ROUTER_currency_price(Container):
Parameters
----------
symbol : Union[str, List[str]]
- Symbol to get data for. Can use CURR1-CURR2 or CURR1CURR2 format. Multiple items allowed for provider(s): polygon, yfinance.
+ Symbol to get data for. Can use CURR1-CURR2 or CURR1CURR2 format. Multiple items allowed for provider(s): fmp, polygon, tiingo, yfinance.
start_date : Union[datetime.date, None, str]
Start date of the data, in YYYY-MM-DD format.
end_date : Union[datetime.date, None, str]
@@ -65,14 +65,12 @@ class ROUTER_currency_price(Container):
The provider to use for the query, by default None.
If None, the provider specified in defaults is selected or 'fmp' if there is
no default.
- interval : Optional[Union[Literal['1min', '5min', '15min', '30min', '1hour', '4hour', '1day'], str, Literal['1m', '2m', '5m', '15m', '30m', '60m', '90m', '1h', '1d', '5d', '1wk', '1mo', '3mo']]]
- Data granularity. (provider: fmp, polygon, tiingo, yfinance)
+ interval : Union[Literal['1m', '5m', '15m', '30m', '1h', '4h', '1d'], str, Literal['1m', '2m', '5m', '15m', '30m', '60m', '90m', '1h', '1d', '5d', '1W', '1M', '1Q']]
+ Time interval of the data to return. (provider: fmp, polygon, tiingo, yfinance)
sort : Literal['asc', 'desc']
- Sort order of the data. (provider: polygon)
+ Sort order of the data. This impacts the results in combination with the 'limit' parameter. The results are always returned in ascending order by date. (provider: polygon)
limit : int
The number of data entries to return. (provider: polygon)
- period : Optional[Literal['1d', '5d', '1mo', '3mo', '6mo', '1y', '2y', '5y', '10y', 'ytd', 'max']]
- Time period of the data to return. (provider: yfinance)
Returns
-------
@@ -106,16 +104,10 @@ class ROUTER_currency_price(Container):
Volume Weighted Average Price over the period.
adj_close : Optional[float]
The adjusted close price. (provider: fmp)
- unadjusted_volume : Optional[float]
- Unadjusted volume of the symbol. (provider: fmp)
change : Optional[float]
- Change in the price of the symbol from the previous day. (provider: fmp)
+ Change in the price from the previous close. (provider: fmp)
change_percent : Optional[float]
- Change % in the price of the symbol. (provider: fmp)
- label : Optional[str]
- Human readable format of the date. (provider: fmp)
- change_over_time : Optional[float]
- Change % in the price of the symbol over a period of time. (provider: fmp)
+ Change in the price from the previous close, as a normalized percent. (provider: fmp)
transactions : Optional[Annotated[int, Gt(gt=0)]]
Number of transactions for the symbol in the time period. (provider: polygon)
@@ -146,7 +138,14 @@ class ROUTER_currency_price(Container):
},
extra_params=kwargs,
extra_info={
- "symbol": {"multiple_items_allowed": ["polygon", "yfinance"]}
+ "symbol": {
+ "multiple_items_allowed": [
+ "fmp",
+ "polygon",
+ "tiingo",
+ "yfinance",
+ ]
+ }
},
)
)
diff --git a/openbb_platform/openbb/package/equity_price.py b/openbb_platform/openbb/package/equity_price.py
index 57506be8a8f..3a525a4dcff 100644
--- a/openbb_platform/openbb/package/equity_price.py
+++ b/openbb_platform/openbb/package/equity_price.py
@@ -69,28 +69,24 @@ class ROUTER_equity_price(Container):
The provider to use for the query, by default None.
If None, the provider specified in defaults is selected or 'fmp' if there is
no default.
- limit : Optional[Union[Annotated[int, Ge(ge=0)], int]]
- Number of days to look back (Only for interval 1d). (provider: fmp);
- The number of data entries to return. (provider: polygon)
start_time : Optional[datetime.time]
Return intervals starting at the specified time on the `start_date` formatted as 'HH:MM:SS'. (provider: intrinio)
end_time : Optional[datetime.time]
Return intervals stopping at the specified time on the `end_date` formatted as 'HH:MM:SS'. (provider: intrinio)
- timezone : str
+ timezone : Optional[str]
Timezone of the data, in the IANA format (Continent/City). (provider: intrinio)
source : Literal['realtime', 'delayed', 'nasdaq_basic']
The source of the data. (provider: intrinio)
+ adjustment : Union[Literal['splits_only', 'unadjusted'], Literal['splits_only', 'splits_and_dividends']]
+ The adjustment factor to apply. Default is splits only. (provider: polygon, yfinance)
+ extended_hours : bool
+ Include Pre and Post market data. (provider: polygon, yfinance)
sort : Literal['asc', 'desc']
- Sort order of the data. (provider: polygon)
- adjusted : bool
- Output time series is adjusted by historical split and dividend events. (provider: polygon);
- Adjust all OHLC data automatically. (provider: yfinance)
- prepost : bool
- Include Pre and Post market data. (provider: yfinance)
- include : bool
- Include Dividends and Stock Splits in results. (provider: yfinance)
- ignore_tz : bool
- When combining from different timezones, ignore that part of datetime. (provider: yfinance)
+ Sort order of the data. This impacts the results in combination with the 'limit' parameter. The results are always returned in ascending order by date. (provider: polygon)
+ limit : int
+ The number of data entries to return. (provider: polygon)
+ include_actions : bool
+ Include dividends and stock splits in results. (provider: yfinance)
Returns
-------
@@ -122,48 +118,42 @@ class ROUTER_equity_price(Container):
The trading volume.
vwap : Optional[float]
Volume Weighted Average Price over the period.
- label : Optional[str]
- Human readable format of the date. (provider: fmp)
adj_close : Optional[float]
- The adjusted close price. (provider: fmp);
- Adjusted closing price during the period. (provider: intrinio);
- Adjusted closing price during the period. (provider: tiingo)
+ The adjusted close price. (provider: fmp, intrinio, tiingo)
unadjusted_volume : Optional[float]
Unadjusted volume of the symbol. (provider: fmp)
change : Optional[float]
- Change in the price of the symbol from the previous day. (provider: fmp, intrinio)
+ Change in the price from the previous close. (provider: fmp);
+ Change in the price of the symbol from the previous day. (provider: intrinio)
change_percent : Optional[float]
- Change % in the price of the symbol. (provider: fmp)
- change_over_time : Optional[float]
- Change % in the price of the symbol over a period of time. (provider: fmp)
- close_time : Optional[datetime]
- The timestamp that represents the end of the interval span. (provider: intrinio)
- interval : Optional[str]
- The data time frequency. (provider: intrinio)
+ Change in the price from the previous close, as a normalized percent. (provider: fmp);
+ Percent change in the price of the symbol from the previous day. (provider: intrinio)
average : Optional[float]
Average trade price of an individual equity during the interval. (provider: intrinio)
- intra_period : Optional[bool]
- If true, the equity price represents an unfinished period (be it day, week, quarter, month, or year), meaning that the close price is the latest price available, not the official close price for the period (provider: intrinio)
adj_open : Optional[float]
- Adjusted open price during the period. (provider: intrinio, tiingo)
+ The adjusted open price. (provider: intrinio, tiingo)
adj_high : Optional[float]
- Adjusted high price during the period. (provider: intrinio, tiingo)
+ The adjusted high price. (provider: intrinio, tiingo)
adj_low : Optional[float]
- Adjusted low price during the period. (provider: intrinio, tiingo)
+ The adjusted low price. (provider: intrinio, tiingo)
adj_volume : Optional[float]
- Adjusted volume during the period. (provider: intrinio, tiingo)
- factor : Optional[float]
- factor by which to multiply equity prices before this date, in order to calculate historically-adjusted equity prices. (provider: intrinio)
- split_ratio : Optional[float]
- Ratio of the equity split, if a equity split occurred. (provider: intrinio, tiingo, yfinance)
- dividend : Optional[float]
- Dividend amount, if a dividend was paid. (provider: intrinio, tiingo, yfinance)
- percent_change : Optional[float]
- Percent change in the price of the symbol from the previous day. (provider: intrinio)
+ The adjusted volume. (provider: intrinio, tiingo)
fifty_two_week_high : Optional[float]
52 week high price for the symbol. (provider: intrinio)
fifty_two_week_low : Optional[float]
52 week low price for the symbol. (provider: intrinio)
+ factor : Optional[float]
+ factor by which to multiply equity prices before this date, in order to calculate historically-adjusted equity prices. (provider: intrinio)
+ split_ratio : Optional[float]
+ Ratio of the equity split, if a split occurred. (provider: intrinio, tiingo, yfinance)
+ dividend : Optional[float]
+ Dividend amount, if a dividend was paid. (provider: intrinio, tiingo, yfinance)
+ close_time : Optional[datetime]
+ The timestamp that represents the end of the interval span. (provider: intrinio)
+ interval : Optional[str]
+ The data time frequency. (provider: intrinio)
+ intra_period : Optional[bool]
+ If true, the equity price represents an unfinished period (be it day, week, quarter, month, or year), meaning that the close price is the latest price available, not the official close price for the period (provider: intrinio)
transactions : Optional[Annotated[int, Gt(gt=0)]]
Number of transactions for the symbol in the time period. (provider: polygon)
diff --git a/openbb_platform/openbb/package/etf.py b/openbb_platform/openbb/package/etf.py
index 2f6ddf5aca1..62945ff4355 100644
--- a/openbb_platform/openbb/package/etf.py
+++ b/openbb_platform/openbb/package/etf.py
@@ -177,8 +177,15 @@ class ROUTER_etf(Container):
def historical(
self,
symbol: Annotated[
- str, OpenBBCustomParameter(description="Symbol to get data for. (ETF)")
+ Union[str, List[str]],
+ OpenBBCustomParameter(
+ description="Symbol to get data for. Multiple items allowed for provider(s): fmp, polygon, tiingo, yfinance."
+ ),
],
+ interval: Annotated[
+ Optional[str],
+ OpenBBCustomParameter(description="Time interval of the data to return."),
+ ] = "1d",
start_date: Annotated[
Union[datetime.date, None, str],
OpenBBCustomParameter(
@@ -191,30 +198,52 @@ class ROUTER_etf(Container):
description="End date of the data, in YYYY-MM-DD format."
),
] = None,
- provider: Optional[Literal["yfinance"]] = None,
+ provider: Optional[
+ Literal["fmp", "intrinio", "polygon", "tiingo", "yfinance"]
+ ] = None,
**kwargs
) -> OBBject:
"""ETF Historical Market Price.
Parameters
----------
- symbol : str
- Symbol to get data for. (ETF)
+ symbol : Union[str, List[str]]
+ Symbol to get data for. Multiple items allowed for provider(s): fmp, polygon, tiingo, yfinance.
+ interval : Optional[str]
+ Time interval of the data to return.
start_date : Union[datetime.date, None, str]
Start date of the data, in YYYY-MM-DD format.
end_date : Union[datetime.date, None, str]
End date of the data, in YYYY-MM-DD format.
- provider : Optional[Literal['yfinance']]
+ provider : Optional[Literal['fmp', 'intrinio', 'polygon', 'tiingo', 'yfinanc...
The provider to use for the query, by default None.
- If None, the provider specified in defaults is selected or 'yfinance' if there is
+ If None, the provider specified in defaults is selected or 'fmp' if there is
no default.
+ start_time : Optional[datetime.time]
+ Return intervals starting at the specified time on the `start_date` formatted as 'HH:MM:SS'. (provider: intrinio)
+ end_time : Optional[datetime.time]
+ Return intervals stopping at the specified time on the `end_date` formatted as 'HH:MM:SS'. (provider: intrinio)
+ timezone : Optional[str]
+ Timezone of the data, in the IANA format (Continent/City). (provider: intrinio)
+ source : Literal['realtime', 'delayed', 'nasdaq_basic']
+ The source of the data. (provider: intrinio)
+ adjustment : Union[Literal['splits_only', 'unadjusted'], Literal['splits_only', 'splits_and_dividends']]
+ The adjustment factor to apply. Default is splits only. (provider: polygon, yfinance)
+ extended_hours : bool
+ Include Pre and Post market data. (provider: polygon, yfinance)
+ sort : Literal['asc', 'desc']
+ Sort order of the data. This impacts the results in combination with the 'limit' parameter. The results are always returned in ascending order by date. (provider: polygon)
+ limit : int
+ The number of data entries to return. (provider: polygon)
+ include_actions : bool
+ Include dividends and stock splits in results. (provider: yfinance)
Returns
-------
OBBject
results : List[EtfHistorical]
Serializable results.
- provider : Optional[Literal['yfinance']]
+ provider : Optional[Literal['fmp', 'intrinio', 'polygon', 'tiingo', 'yfinance']]
Provider name.
warnings : Optional[List[Warning_]]
List of warnings.
@@ -235,15 +264,53 @@ class ROUTER_etf(Container):
The low price.
close : float
The close price.
- volume : Optional[Annotated[int, Ge(ge=0)]]
+ volume : Optional[Union[float, int]]
The trading volume.
+ vwap : Optional[float]
+ Volume Weighted Average Price over the period.
adj_close : Optional[float]
- The adjusted closing price of the ETF. (provider: yfinance)
+ The adjusted close price. (provider: fmp, intrinio, tiingo)
+ unadjusted_volume : Optional[float]
+ Unadjusted volume of the symbol. (provider: fmp)
+ change : Optional[float]
+ Change in the price from the previous close. (provider: fmp);
+ Change in the price of the symbol from the previous day. (provider: intrinio)
+ change_percent : Optional[float]
+ Change in the price from the previous close, as a normalized percent. (provider: fmp);
+ Percent change in the price of the symbol from the previous day. (provider: intrinio)
+ average : Optional[float]
+ Average trade price of an individual equity during the interval. (provider: intrinio)
+ adj_open : Optional[float]
+ The adjusted open price. (provider: intrinio, tiingo)
+ adj_high : Optional[float]
+ The adjusted high price. (provider: intrinio, tiingo)
+ adj_low : Optional[float]
+ The adjusted low price. (provider: intrinio, tiingo)
+ adj_volume : Optional[float]
+ The adjusted volume. (provider: intrinio, tiingo)
+ fifty_two_week_high : Optional[float]
+ 52 week high price for the symbol. (provider: intrinio)
+ fifty_two_week_low : Optional[float]
+ 52 week low price for the symbol. (provider: intrinio)
+ factor : Optional[float]
+ factor by which to multiply equity prices before this date, in order to calculate historically-adjusted equity prices. (provider: intrinio)
+ split_ratio : Optional[float]
+ Ratio of the equity split, if a split occurred. (provider: intrinio, tiingo, yfinance)
+ dividend : Optional[float]
+ Dividend amount, if a dividend was paid. (provider: intrinio, tiingo, yfinance)
+ close_time : Optional[datetime]
+ The timestamp that represents the end of the interval span. (provider: intrinio)
+ interval : Optional[str]
+ The data time frequency. (provider: intrinio)
+ intra_period : Optional[bool]
+ If true, the equity price represents an unfinished period (be it day, week, quarter, month, or year), meaning that the close price is the latest price available, not the official close price for the period (provider: intrinio)
+ transactions : Optional[Annotated[int, Gt(gt=0)]]
+ Number of transactions for the symbol in the time period. (provider: polygon)
Example
-------
>>> from openbb import obb
- >>> obb.etf.historical(symbol="SPY")
+ >>> obb.etf.historical(symbol="SPY", interval="1d")
>>> obb.etf.historical("SPY", provider="yfinance")
>>> #### This function accepts multiple tickers. ####
>>> obb.etf.historical("SPY,IWM,QQQ,DJIA", provider="yfinance")
@@ -256,15 +323,26 @@ class ROUTER_etf(Container):
"provider": self._get_provider(
provider,
"/etf/historical",
- ("yfinance",),
+ ("fmp", "intrinio", "polygon", "tiingo", "yfinance"),
)
},
standard_params={
"symbol": symbol,
+ "interval": interval,
"start_date": start_date,
"end_date": end_date,
},
extra_params=kwargs,
+ extra_info={
+ "symbol": {
+ "multiple_items_allowed": [
+ "fmp",
+ "polygon",
+ "tiingo",
+ "yfinance",
+ ]
+ }
+ },
)
)
diff --git a/openbb_platform/openbb/package/index.py b/openbb_platform/openbb/package/index.py
index 60734afb166..a65de36b82a 100644
--- a/openbb_platform/openbb/package/index.py
+++ b/openbb_platform/openbb/package/index.py
@@ -212,7 +212,7 @@ class ROUTER_index(Container):
no default.
timeseries : Optional[Annotated[int, Ge(ge=0)]]
Number of days to look back. (provider: fmp)
- interval : Optional[Union[Literal['1min', '5min', '15min', '30min', '1hour', '4hour', '1day'], Literal['1m', '2m', '5m', '15m', '30m', '60m', '90m', '1h', '1d', '5d', '1wk', '1mo', '3mo']]]
+ interval : Optional[Union[Literal['1min', '5min', '15min', '30min', '1hour', '4hour', '1day'], Literal['1m', '2m', '5m', '15m', '30m', '60m', '90m', '1h', '1d', '5d', '1W', '1M', '1Q']]]
Data granularity. (provider: fmp, yfinance)
sort : Literal['asc', 'desc']
Sort the data in ascending or descending order. (provider: fmp);
diff --git a/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/__init__.py b/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/__init__.py
index b8591af6750..08b633c2e72 100644
--- a/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/__init__.py
+++ b/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/__init__.py
@@ -18,5 +18,6 @@ alpha_vantage_provider = Provider(
fetcher_dict={
"EquityHistorical": AVEquityHistoricalFetcher,
"HistoricalEps": AVHistoricalEpsFetcher,
+ "EtfHistorical": AVEquityHistoricalFetcher,
},
)
diff --git a/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/models/equity_historical.py b/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/models/equity_historical.py
index 98a5194b955..766551251ac 100644
--- a/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/models/equity_historical.py
+++ b/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/models/equity_historical.py
@@ -1,11 +1,17 @@
"""Alpha Vantage Equity Historical Price Model."""
-from datetime import datetime, timedelta
+# pylint: disable=unused-argument
+
+import asyncio
+from datetime import datetime
+from io import BytesIO
from typing import Any, Dict, List, Literal, Optional
+from warnings import warn
from dateutil.relativedelta import relativedelta
from openbb_alpha_vantage.utils.helpers import (
- extract_key_name,
+ INTERVALS_DICT,
+ calculate_adjusted_prices,
get_interval,
)
from openbb_core.provider.abstract.fetcher import Fetcher
@@ -17,14 +23,16 @@ from openbb_core.provider.utils.descriptions import (
DATA_DESCRIPTIONS,
QUERY_DESCRIPTIONS,
)
-from openbb_core.provider.utils.helpers import amake_request, get_querystring
-from pandas import to_datetime
+from openbb_core.provider.utils.helpers import (
+ amake_request,
+ amake_requests,
+ get_querystring,
+)
+from pandas import date_range, read_csv, to_datetime
from pydantic import (
Field,
NonNegativeFloat,
PositiveFloat,
- PrivateAttr,
- field_validator,
model_validator,
)
@@ -41,95 +49,54 @@ class AVEquityHistoricalQueryParams(EquityHistoricalQueryParams):
default="1d",
description=QUERY_DESCRIPTIONS.get("interval", ""),
)
- adjusted: Optional[bool] = Field(
- description="Output time series is adjusted by historical split and dividend events.",
- default=False,
+ adjustment: Literal["splits_only", "splits_and_dividends", "unadjusted"] = Field(
+ description="The adjustment factor to apply. 'splits_only' is not supported for intraday data.",
+ default="splits_only",
)
extended_hours: Optional[bool] = Field(
- description="Extended trading hours during pre-market and after-hours."
- "Only available for intraday data.",
+ description="Include Pre and Post market data.",
default=False,
)
- month: Optional[str] = Field(
- description="Query a specific month in history (in YYYY-MM format).",
- default=None,
- )
- output_size: Optional[Literal["compact", "full"]] = Field(
- description="Compact returns only the latest 100 data points in the intraday "
- "time series; full returns trailing 30 days of the most recent intraday data "
- "if the month parameter is not specified, or the full intraday data for a"
- "specific month in history if the month parameter is specified.",
- default="full",
- alias="outputsize",
+ adjusted: bool = Field(
+ default=False,
+ exclude=True,
+ description="This field is deprecated (4.1.5) and will be removed in a future version."
+ + " Use 'adjustment' set as 'splits_and_dividends' instead.",
+ json_schema_extra={"deprecated": True},
)
- _function: Literal[
- "TIME_SERIES_INTRADAY",
- "TIME_SERIES_DAILY",
- "TIME_SERIES_WEEKLY",
- "TIME_SERIES_MONTHLY",
- "TIME_SERIES_DAILY_ADJUSTED",
- "TIME_SERIES_WEEKLY_ADJUSTED",
- "TIME_SERIES_MONTHLY_ADJUSTED",
- ] = PrivateAttr(
- default="TIME_SERIES_DAILY",
- )
-
- _datatype: Literal["json", "csv"] = PrivateAttr(default="json")
-
- @field_validator("month", mode="before")
+ @model_validator(mode="before")
@classmethod
- def month_validate(cls, v):
- """Validate month, check if the month is in YYYY-MM format."""
- if v is not None:
- try:
- datetime.strptime(v, "%Y-%m")
- except ValueError as e:
- raise e
- return v
-
- # pylint: disable=protected-access
- @model_validator(mode="after")
- @classmethod
- def get_function_value(cls, values: "AVEquityHistoricalQueryParams"):
- """Get the function from the provided interval for the Alpha Vantage API."""
- functions = {
- "m": "TIME_SERIES_INTRADAY",
- "d": "TIME_SERIES_DAILY",
- "W": "TIME_SERIES_WEEKLY",
- "M": "TIME_SERIES_MONTHLY",
- }
-
- adjusted_value = {
- False: "",
- True: "_ADJUSTED",
- }
-
- if values.interval[-1] == "m":
- values._function = f"{functions[values.interval[-1]]}"
- else:
- values._function = (
- f"{functions[values.interval[-1]]}{adjusted_value[values.adjusted]}"
- )
-
+ def validate_deprecated_params(cls, values):
+ """Validate the deprecated parameters."""
+ for k, v in values.copy().items():
+ if k in ["adjusted"] and v is True:
+ warn(
+ f"The '{k}' parameter is deprecated and will be removed in a future version."
+ )
+ values["adjustment"] = "splits_and_dividends"
return values
class AVEquityHistoricalData(EquityHistoricalData):
"""Alpha Vantage Equity Historical Price Data."""
- __alias_dict__ = {"date": "timestamp", "adj_close": "adjusted_close"}
+ __alias_dict__ = {
+ "adj_close": "adjusted_close",
+ "dividend": "dividend_amount",
+ "split_ratio": "split_factor",
+ }
adj_close: Optional[PositiveFloat] = Field(
default=None, description=DATA_DESCRIPTIONS.get("adj_close", "")
)
- dividend_amount: Optional[NonNegativeFloat] = Field(
+ dividend: Optional[NonNegativeFloat] = Field(
default=None,
- description="Dividend amount paid for the corresponding date.",
+ description="Dividend amount, if a dividend was paid.",
)
- split_coefficient: Optional[NonNegativeFloat] = Field(
+ split_ratio: Optional[NonNegativeFloat] = Field(
default=None,
- description="Split coefficient for the corresponding date.",
+ description="Split coefficient, if a split occurred.",
)
@@ -160,58 +127,176 @@ class AVEquityHistoricalFetcher(
query: AVEquityHistoricalQueryParams,
credentials: Optional[Dict[str, str]],
**kwargs: Any,
- ) -> Dict:
+ ) -> List[Dict]:
"""Return the raw data from the Alpha Vantage endpoint."""
api_key = credentials.get("alpha_vantage_api_key") if credentials else ""
-
+ intraday = False
interval = get_interval(query.interval)
query_str = get_querystring(
query.model_dump(by_alias=True),
- ["start_date", "end_date", "interval", "symbol"],
+ [
+ "start_date",
+ "end_date",
+ "interval",
+ "symbol",
+ "adjustment",
+ "extended_hours",
+ ],
)
- query_str += f"&function={query._function}&interval={interval}" # pylint: disable=protected-access
- url = f"https://www.alphavantage.co/query?{query_str}&apikey={api_key}"
- data = {}
+ function = INTERVALS_DICT[query.interval[-1]]
- for symbol in query.symbol.split(","):
- raw_data = await amake_request(f"{url}&symbol={symbol}", **kwargs)
- dynamic_key = (set(raw_data.keys()) - {"Meta Data"}).pop()
- data[symbol] = raw_data[dynamic_key]
+ if query.adjustment != "unadjusted":
+ function += "_ADJUSTED"
+ query_str += f"&function={function}&outputsize=full&datatype=csv"
- return data
+ if "INTRADAY" in function:
+ query_str += f"&interval={interval}&extended_hours={str(query.extended_hours).lower()}"
+ intraday = True
+
+ results = []
+
+ async def callback(response, _):
+ """Callback function to process the response."""
+ return await response.read()
+
+ async def intraday_callback(response, _):
+ """Callback function to process the intraday response."""
+ symbol = response.url.query.get("symbol", None)
+ data = await response.read()
+ if data:
+ df = read_csv(BytesIO(data))
+ if len(df) > 0:
+ df.rename(
+ columns={
+ "timestamp": "date",
+ },
+ inplace=True,
+ )
+ if len(query.symbol.split(",")) > 1:
+ df.loc[:, "symbol"] = symbol
+ results.extend(df.to_dict("records"))
+ if not data:
+ warn(f"Symbol Error: No data found for {symbol}")
+ return results
+
+ async def get_one(symbol, intraday: bool = False):
+ """Get data for one symbol."""
+
+ if intraday is True:
+ adjusted = query.adjustment != "unadjusted"
+ if query.adjustment == "splits_only":
+ warn(
+ "Intraday does not support 'splits_only'. Using 'splits_and_dividends' instead."
+ )
+ url = (
+ f"https://www.alphavantage.co/query?{query_str.replace('_ADJUSTED', '')}"
+ f"&symbol={symbol}&adjusted={str(adjusted).lower()}"
+ )
+ dates = (
+ date_range(start=query.start_date, end=query.end_date)
+ .strftime("%Y-%m")
+ .unique()
+ .tolist()
+ )
+ urls = [f"{url}&month={date}&apikey={api_key}" for date in dates]
+ return await amake_requests(urls, response_callback=intraday_callback)
+
+ # We will resample the intervals ourselves to get the correct data.
+ url = (
+ f"https://www.alphavantage.co/query?{query_str.replace('MONTHLY', 'DAILY').replace('WEEKLY', 'DAILY')}"
+ f"&symbol={symbol}&apikey={api_key}"
+ )
+ result = await amake_request(url, response_callback=callback)
+ if not result:
+ warn(f"Symbol Error: No data found for {symbol}")
+ if result:
+ data = read_csv(BytesIO(result)) # type: ignore
+ if len(data) > 0:
+ data.rename(
+ columns={
+ "timestamp": "date",
+ "dividend_amount": "dividend",
+ "adjusted close": "adj_close",
+ "dividend amount": "dividend",
+ "adjusted_close": "adj_close",
+ "split_coefficient": "split_factor",
+ },
+ inplace=True,
+ )
+ data["date"] = data["date"].apply(to_datetime)
+ data.set_index("date", inplace=True)
+ # The returned data when 'adjusted=true' from the API does not return a usable OHLCV data set.
+ # We need to calculate the adjusted prices manually.
+ if query.adjustment != "unadjusted":
+ temp = data.copy()
+ temp["dividend_factor"] = (
+ temp["close"] - temp["dividend"]
+ ) / temp["close"]
+ temp["volume_factor"] = temp["split_factor"]
+ temp["split_factor"] = 1 / temp["split_factor"]
+ adj_cols = ["open", "high", "low", "close", "volume"]
+ divs = query.adjustment == "splits_and_dividends"
+ for col in adj_cols:
+ divs = False if col == "volume" else divs
+ if col in temp.columns:
+ temp = calculate_adjusted_prices(temp, col, divs)
+ temp["adj_dividend"] = (
+ temp["adj_close"] * (1 - temp["dividend_factor"])
+ if query.adjustment == "splits_only"
+ else temp["close"] * (1 - temp["dividend_factor"])
+ )
+ data["open"] = round(temp["adj_open"], 4)
+ data["high"] = round(temp["adj_high"], 4)
+ data["low"] = round(temp["adj_low"], 4)
+ data["close"] = round(temp["adj_close"], 4)
+ data["volume"] = round(temp["adj_volume"]).astype(int)
+ data["dividend"] = round(temp["adj_dividend"], 4)
+ data.drop(columns=["adj_close"], inplace=True)
+ # Resample the daily data for the interval requested.
+ freq = ""
+ agg_dict = {
+ "open": "first",
+ "high": "max",
+ "low": "min",
+ "close": "last",
+ "volume": "sum",
+ "dividend": "sum",
+ "split_factor": "prod",
+ }
+ if query.adjustment == "unadjusted":
+ agg_dict.pop("dividend")
+ agg_dict.pop("split_factor")
+ if query.interval == "1M":
+ freq = "M"
+ if query.interval == "1W":
+ freq = "W-FRI"
+ if freq in ["M", "W-FRI"]:
+ data = data.resample(freq).agg({**agg_dict})
+ if len(query.symbol.split(",")) > 1:
+ data.loc[:, "symbol"] = symbol
+
+ results.extend(data.reset_index().to_dict("records"))
+
+ return results
+
+ tasks = [get_one(symbol, intraday) for symbol in query.symbol.split(",")]
+ await asyncio.gather(*tasks)
+
+ return results
- # pylint: disable=unused-argument
@staticmethod
def transform_data(
- query: AVEquityHistoricalQueryParams, data: Dict, **kwargs: Any
+ query: AVEquityHistoricalQueryParams, data: List[Dict], **kwargs: Any
) -> List[AVEquityHistoricalData]:
"""Transform the data to the standard format."""
- transformed_data = []
- for symbol, content in data.items():
- if not isinstance(content, dict):
- # if the content isn't a dict, it means that the API returned an error
- # most likely too many requests without premium account
- raise Exception(content)
- d = [
- {
- **({"symbol": symbol} if "," in query.symbol else {}),
- "date": date,
- **{extract_key_name(k): v for k, v in values.items()},
- }
- for date, values in content.items()
- ]
- if query.start_date and query.end_date:
- transformed_data = list(
- filter(
- lambda x: to_datetime(query.start_date)
- <= to_datetime(x["date"])
- <= to_datetime(query.end_date) + timedelta(days=1),
- d,
- )
- )
-
return [
AVEquityHistoricalData.model_validate(d)
- for d in sorted(transformed_data, key=lambda x: x["date"], reverse=False)
+ for d in sorted(
+ data,
+ key=(
+ lambda x: (x["date"], x["symbol"]) if "symbol" in x else x["date"]
+ ),
+ )
+ if query.start_date <= to_datetime(d["date"]).date() <= query.end_date
]
diff --git a/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/utils/helpers.py b/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/utils/helpers.py
index 14c4ed70a9d..88c6bffda35 100644
--- a/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/utils/helpers.py
+++ b/openbb_platform/providers/alpha_vantage/openbb_alpha_vantage/utils/helpers.py
@@ -1,151 +1,18 @@
"""Alpha Vantage Helpers Module."""
-import json
import re
from datetime import datetime
-from io import StringIO
-from typing import Any, Dict, List, Optional, TypeVar, Union
+from typing import Any, Dict, List
-import requests
-from openbb_core.provider import helpers
-from openbb_core.provider.utils.errors import EmptyDataError
-from openbb_core.provider.utils.helpers import get_querystring
-from pydantic import BaseModel
-from requests.exceptions import SSLError
+import numpy as np
+import pandas as pd
-T = TypeVar("T", bound=BaseModel)
-
-
-class BasicResponse:
- """Basic Response class."""
-
- def __init__(self, response: StringIO):
- """Initialize the BasicResponse class."""
- # Find a way to get the status code
- self.status_code = 200
- response.seek(0)
- self.text = response.read()
-
- def json(self) -> dict:
- """Return the response as a dictionary."""
- return json.loads(self.text)
-
-
-def request(url: str) -> BasicResponse:
- """Request function for PyScript.
-
- Pass in Method and make sure to await!
-
- Parameters
- ----------
- url: str
- URL to make request to
-
- Return
- ------
- response: BasicRequest
- BasicRequest object with status_code and text attributes
- """
- # pylint: disable=import-outside-toplevel
- from pyodide.http import open_url # type: ignore
-
- response = open_url(url)
- return BasicResponse(response)
-
-
-def get_data(url: str, **kwargs: Any) -> Union[list, dict]:
- """Get data from Alpha Vantage endpoint."""
- try:
- r: Union[requests.Response, BasicResponse] = helpers.make_request(url, **kwargs)
- except SSLError:
- r = request(url)
- if r.status_code == 404:
- raise RuntimeError("Alpha Vantage endpoint doesn't exist")
-
- data = r.json()
- if "Information" in data:
- raise RuntimeError(f"Error in Alpha Vantage request -> {data['Information']}")
-
- if len(data) == 0:
- raise EmptyDataError()
-
- return data
-
-
-def create_url(
- version: int,
- endpoint: str,
- api_key: Optional[str],
- query: Optional[BaseModel] = None,
- exclude: Optional[List[str]] = None,
-) -> str:
- """Return a URL for the Alpha Vantage API.
-
- Parameters
- ----------
- version: int
- The version of the API to use.
- endpoint: str
- The endpoint to use.
- api_key: str
- The API key to use.
- query: Optional[BaseModel]
- The dictionary to be turned into a querystring.
- exclude: List[str]
- The keys to be excluded from the querystring.
-
- Returns
- -------
- str
- The querystring.
- """
- the_dict = {} if not query else query.model_dump()
- query_string = get_querystring(the_dict, exclude or [])
- base_url = f"https://financialmodelingprep.com/api/v{version}/"
- return f"{base_url}{endpoint}?{query_string}&apikey={api_key}"
-
-
-def get_data_many(
- url: str, sub_dict: Optional[str] = None, **kwargs: Any
-) -> List[dict]:
- """Get data from Alpha Vantage endpoint and convert to list of schemas.
-
- Parameters
- ----------
- url: str
- The URL to get the data from.
- sub_dict: Optional[str]
- The sub-dictionary to use.
-
- Returns
- -------
- List[dict]
- Dictionary of data.
- """
- data = get_data(url, **kwargs)
- if sub_dict and isinstance(data, dict):
- data = data.get(sub_dict, [])
- if isinstance(data, dict):
- raise ValueError("Expected list of dicts, got dict")
- if len(data) == 0:
- raise EmptyDataError()
-
- return data
-
-
-def get_data_one(url: str, **kwargs: Any) -> dict:
- """Get data from Alpha Vantage endpoint and convert to schema."""
- data = get_data(url, **kwargs)
- if isinstance(data, list):
- if len(data) == 0:
- raise ValueError("Expected dict, got empty list")
-
- try:
- data = {i: data[i] for i in range(len(data))} if len(data) > 1 else data[0]
- except TypeError as e:
- raise ValueError("Expected dict, got list of dicts") from e
-
- return data
+INTERVALS_DICT = {
+ "m": "TIME_SERIES_INTRADAY",
+ "d": "TIME_SERIES_DAILY",
+ "W": "TIME_SERIES_WEEKLY",
+ "M": "TIME_SERIES_MONTHLY",
+}
def get_interval(value: str) -> str:
@@ -178,3 +45,45 @@ def filter_by_dates(
data,
)
)
+
+
+def calculate_adjusted_prices(df: pd.DataFrame, column: str, dividends: bool = False):
+ """Calculates the split-adjusted prices, or split and dividend adjusted prices.
+
+ Parameters
+ ------------
+ df: pd.DataFrame
+ DataFrame with unadjusted OHLCV values + split_factor + dividend
+ column: str
+ The column name to adjust.
+ dividends: bool
+ Whether to adjust for both splits and dividends. Default is split-adjusted only.
+
+ Returns
+ --------
+ pd.DataFrame
+ DataFrame with adjusted prices.
+ """
+
+ df = df.copy()
+ adj_column = "adj_" + column
+
+ # Reverse the DataFrame order, sorting by date in descending order
+ df.sort_index(ascending=False, inplace=True)
+
+ price_col = df[column].values
+ split_col = df["volume_factor"] if column == "volume" else df["split_factor"].values
+ dividend_col = df["dividend"].values if dividends else np.zeros(len(price_col))
+ adj_price_col = np.zeros(len(df.index))
+ adj_price_col[0] = price_col[0]
+
+ for i in range(1, len(price_col)):
+ adj_price_col[i] = adj_price_col[i - 1] + adj_price_col[i - 1] * (
+ ((price_col[i] * split_col[i - 1]) - price_col[i - 1] - dividend_col[i - 1])
+ / price_col[i - 1]
+ )
+ df[adj_column] = adj_price_col
+
+ # Change the DataFrame order back to dates ascending
+ df.sort_index(ascending=True, inplace=True)
+ return df
diff --git a/openbb_platform/providers/alpha_vantage/tests/record/http/test_alpha_vantage_fetchers/test_av_equity_historical_fetcher.yaml b/openbb_platform/providers/alpha_vantage/tests/record/http/test_alpha_vantage_fetchers/test_av_equity_historical_fetcher.yaml
index 87b076be810..7ba0272bfd4 100644
--- a/openbb_platform/providers/alpha_vantage/tests/record/http/test_alpha_vantage_fetchers/test_av_equity_historical_fetcher.yaml
+++ b/openbb_platform/providers/alpha_vantage/tests/record/http/test_alpha_vantage_fetchers/test_av_equity_historical_fetcher.yaml
@@ -2,36 +2,304 @@ interactions:
- request:
body: null
headers:
+ Accept:
+ - application/json
+ Accept-Encoding:
+ - gzip, deflate
Connection:
- - close
- Host:
- - www.alphavantage.co
+ - keep-alive
method: GET
- uri: https://www.alphavantage.co/query?apikey=MOCK_API_KEY&datatype=csv&function=TIME_SERIES_DAILY_ADJUSTED&outputsize=full&period=daily&symbol=AAPL
+ uri: https://www.alphavantage.co/query?adjusted=true&apikey=MOCK_API_KEY&datatype=csv&extended_hours=false&function=TIME_SERIES_INTRADAY&interval=15min&month=2023-01&outputsize=full&symbol=AAPL
response:
body:
- string: "{\n \"Information\": \"Thank you for using Alpha Vantage! This is
- a premium endpoint. You may subscribe to any of the premium plans at https://www.alphavantage.co/premium/
- to instantly unlock all premium endpoints\"\n}"
+ string: "timestamp,open,high,low,close,volume\r\n2023-01-31 15:45:00,142.4710,143.3640,142.1380,143.3200,6111148\r\n2023-01-31
+ 15:30:00,142.3220,142.6090,142.3120,142.4800,1466236\r\n2023-01-31 15:15:00,142.7790,142.7980,142.2770,142.3310,1409505\r\n2023-01-31
+ 15:00:00,142.8880,143.0660,142.6600,142.7730,1206452\r\n2023-01-31 14:45:00,142.9580,143.0260,142.8230,142.8830,852602\r\n2023-01-31
+ 14:30:00,142.8490,143.0160,142.8040,142.9720,856467\r\n2023-01-31 14:15:00,142.7340,142.9170,142.6250,142.8480,705206\r\n2023-01-31
+ 14:00:00,142.6450,142.9370,142.5450,142.7440,951014\r\n2023-01-31 13:45:00,142.4610,142.7680,142.4160,142.6540,909265\r\n2023-01-31
+ 13:30:00,142.4410,142.5590,142.3170,142.4650,611083\r\n2023-01-31 13:15:00,142.4560,142.4700,142.1780,142.4410,1006968\r\n2023-01-31
+ 13:00:00,142.5610,142.6360,142.3270,142.4550,655584\r\n2023-01-31 12:45:00,142.5460,142.6880,142.4560,142.5600,630828\r\n2023-01-31
+ 12:30:00,142.5410,142.6680,142.4160,142.5550,590808\r\n2023-01-31 12:15:00,142.3220,142.6680,142.2620,142.5600,974220\r\n2023-01-31
+ 12:00:00,142.2820,142.3950,141.9990,142.3070,929554\r\n2023-01-31 11:45:00,142.3520,142.5140,142.1780,142.2850,844479\r\n2023-01-31
+ 11:30:00,142.5560,142.6680,142.2970,142.3260,969895\r\n2023-01-31 11:15:00,142.2330,142.6190,142.1280,142.5500,1187882\r\n2023-01-31
+ 11:00:00,142.1930,142.4600,142.0090,142.2470,1107755\r\n2023-01-31 10:45:00,142.1600,142.3210,141.8200,142.1870,1388137\r\n2023-01-31
+ 10:30:00,142.2130,142.3800,141.9790,142.1670,1226566\r\n2023-01-31 10:15:00,142.1040,142.3700,141.6520,142.1970,1825953\r\n2023-01-31
+ 10:00:00,141.6770,142.2110,141.4330,142.1080,2150277\r\n2023-01-31 09:45:00,141.7070,142.7780,141.4030,141.6760,2822577\r\n2023-01-31
+ 09:30:00,141.7160,142.4800,141.3040,141.7110,4394928\r\n2023-01-30 15:45:00,142.4070,142.5490,141.8700,142.0580,4775426\r\n2023-01-30
+ 15:30:00,142.0840,142.4600,141.9990,142.4110,1792886\r\n2023-01-30 15:15:00,142.0840,142.1620,141.9490,142.0830,1765526\r\n2023-01-30
+ 15:00:00,142.2130,142.4900,142.0490,142.0780,1650201\r\n2023-01-30 14:45:00,142.2280,142.2810,141.9010,142.2170,1669205\r\n2023-01-30
+ 14:30:00,142.1780,142.5460,142.0890,142.2320,1432781\r\n2023-01-30 14:15:00,142.4070,142.4350,142.0490,142.1770,1464175\r\n2023-01-30
+ 14:00:00,142.3920,142.6190,142.2970,142.4110,998241\r\n2023-01-30 13:45:00,142.1930,142.4500,142.0790,142.4010,1198176\r\n2023-01-30
+ 13:30:00,142.5110,142.5190,142.0290,142.1970,1309283\r\n2023-01-30 13:15:00,142.5110,142.8470,142.4260,142.5230,1064570\r\n2023-01-30
+ 13:00:00,142.4310,142.6780,142.3270,142.5200,875111\r\n2023-01-30 12:45:00,142.6400,142.6490,142.1880,142.4410,1400651\r\n2023-01-30
+ 12:30:00,142.6950,142.8120,142.4960,142.6440,1181401\r\n2023-01-30 12:15:00,142.9780,142.9910,142.4910,142.6990,1609852\r\n2023-01-30
+ 12:00:00,143.1960,143.2840,142.1680,142.9820,1400170\r\n2023-01-30 11:45:00,142.8780,143.2150,142.5160,143.2090,1185883\r\n2023-01-30
+ 11:30:00,142.8880,143.2540,142.7840,142.8840,1110391\r\n2023-01-30 11:15:00,142.9680,143.3440,142.7240,142.9020,1375517\r\n2023-01-30
+ 11:00:00,143.0080,143.1850,142.7440,142.9770,1391660\r\n2023-01-30 10:45:00,142.6300,143.0560,142.5850,143.0170,1923936\r\n2023-01-30
+ 10:30:00,143.2060,143.2540,142.3860,142.6560,2033741\r\n2023-01-30 10:15:00,143.6230,143.6520,142.8630,143.2100,2312830\r\n2023-01-30
+ 10:00:00,144.1890,144.3670,143.5290,143.6180,1980967\r\n2023-01-30 09:45:00,143.7520,144.2870,143.1820,144.1990,2799333\r\n2023-01-30
+ 09:30:00,143.9660,144.5650,143.5190,143.7380,4153218\r\n2023-01-27 15:45:00,145.6890,145.7180,144.8000,144.9780,4867213\r\n2023-01-27
+ 15:30:00,145.9470,146.2340,145.6640,145.7230,2420991\r\n2023-01-27 15:15:00,145.8880,145.9760,145.6140,145.9620,1956807\r\n2023-01-27
+ 15:00:00,145.8930,146.1650,145.8130,145.8920,1674321\r\n2023-01-27 14:45:00,145.6790,146.0260,145.6350,145.9020,1811395\r\n2023-01-27
+ 14:30:00,145.7780,145.8470,145.5050,145.6830,1394494\r\n2023-01-27 14:15:00,145.5150,145.9560,145.5050,145.7740,1614957\r\n2023-01-27
+ 14:00:00,145.3510,145.5340,145.2470,145.5190,1092587\r\n2023-01-27 13:45:00,145.3610,145.4300,145.1870,145.3560,913236\r\n2023-01-27
+ 13:30:00,145.2020,145.5690,145.1570,145.3680,1454188\r\n2023-01-27 13:15:00,145.3170,145.3300,144.9880,145.1920,957452\r\n2023-01-27
+ 13:00:00,145.3610,145.4730,145.0930,145.3260,1005769\r\n2023-01-27 12:45:00,145.5600,145.6480,145.3420,145.3760,1052779\r\n2023-01-27
+ 12:30:00,145.3790,145.8320,145.1670,145.5560,1618834\r\n2023-01-27 12:15:00,145.3710,145.8960,145.3360,145.3680,2099327\r\n2023-01-27
+ 12:00:00,145.0530,145.4790,144.9190,145.3760,1804374\r\n2023-01-27 11:45:00,144.8910,145.2010,144.7600,145.0580,1691657\r\n2023-01-27
+ 11:30:00,144.2690,145.1020,144.1740,144.8990,2256364\r\n2023-01-27 11:15:00,143.9210,144.3670,143.9060,144.2630,1467439\r\n2023-01-27
+ 11:00:00,143.7130,144.1090,143.6180,143.9250,1730147\r\n2023-01-27 10:45:00,143.9460,143.9660,143.3900,143.6970,1896399\r\n2023-01-27
+ 10:30:00,144.4380,144.5410,143.8560,143.9450,1922267\r\n2023-01-27 10:15:00,144.1700,144.5160,143.8150,144.4420,2081938\r\n2023-01-27
+ 10:00:00,143.7230,144.4960,143.3990,144.1700,2810931\r\n2023-01-27 09:45:00,143.0670,144.2280,143.0620,143.7170,3425862\r\n2023-01-27
+ 09:30:00,142.2030,143.5720,142.0980,143.0810,3713990\r\n2023-01-26 15:45:00,142.4960,143.0660,142.3370,142.9420,4251294\r\n2023-01-26
+ 15:30:00,142.5360,142.6980,142.4360,142.4990,1378195\r\n2023-01-26 15:15:00,142.4530,142.7380,142.4060,142.5450,1175706\r\n2023-01-26
+ 15:00:00,142.5510,142.6190,142.2670,142.4550,962291\r\n2023-01-26 14:45:00,142.6000,142.7380,142.2970,142.5450,1092977\r\n2023-01-26
+ 14:30:00,142.5560,142.7880,142.4760,142.6000,1073885\r\n2023-01-26 14:15:00,142.4710,142.8600,142.3670,142.5550,1332790\r\n2023-01-26
+ 14:00:00,142.1730,142.5240,141.9490,142.4800,1239469\r\n2023-01-26 13:45:00,142.2530,142.4600,142.0390,142.1770,937106\r\n2023-01-26
+ 13:30:00,141.8950,142.3700,141.8900,142.2580,1131056\r\n2023-01-26 13:15:00,141.7460,141.9430,141.5720,141.8890,584464\r\n2023-01-26
+ 13:00:00,141.8450,142.0330,141.5130,141.7500,944902\r\n2023-01-26 12:45:00,141.7810,142.0530,141.6120,141.8400,985075\r\n2023-01-26
+ 12:30:00,141.8850,142.1120,141.7410,141.7800,744875\r\n2023-01-26 12:15:00,142.0240,142.0630,141.8300,141.8990,806807\r\n2023-01-26
+ 12:00:00,141.7060,142.3010,141.6810,142.0190,1289752\r\n2023-01-26 11:45:00,141.7360,141.7740,141.4980,141.7100,1008489\r\n2023-01-26
+ 11:30:00,141.3790,141.8240,141.2150,141.7400,1161425\r\n2023-01-26 11:15:00,141.6090,141.8940,140.9270,141.3930,1742592\r\n2023-01-26
+ 11:00:00,141.4180,141.7550,141.2440,141.6210,1386633\r\n2023-01-26 10:45:00,142.1950,142.4250,141.2840,141.4230,1650420\r\n2023-01-26
+ 10:30:00,142.5460,142.6780,141.9890,142.1870,1349288\r\n2023-01-26 10:15:00,142.1430,143.0160,142.1080,142.5500,2312979\r\n2023-01-26
+ 10:00:00,142.2820,142.4500,141.6910,142.1480,2328421\r\n2023-01-26 09:45:00,142.5410,142.8270,141.9490,142.2770,2821276\r\n2023-01-26
+ 09:30:00,142.1930,143.2740,141.8010,142.5540,4245796\r\n2023-01-25 15:45:00,140.6340,140.9200,140.3060,140.8860,3237880\r\n2023-01-25
+ 15:30:00,140.8680,140.9900,140.5490,140.6380,1771140\r\n2023-01-25 15:15:00,141.2690,141.3470,140.5590,140.8660,1936429\r\n2023-01-25
+ 15:00:00,140.8320,141.4670,140.8180,141.2690,2421977\r\n2023-01-25 14:45:00,140.6590,141.0100,140.5390,140.8270,1470841\r\n2023-01-25
+ 14:30:00,140.6340,140.7220,140.4000,140.6580,1164244\r\n2023-01-25 14:15:00,140.5690,141.0100,140.4900,140.6380,1611771\r\n2023-01-25
+ 14:00:00,140.1170,140.6120,139.9940,140.5680,1191679\r\n2023-01-25 13:45:00,140.0080,140.3720,139.9230,140.1210,1563186\r\n2023-01-25
+ 13:30:00,140.1170,140.2150,139.8840,140.0120,1159314\r\n2023-01-25 13:15:00,139.8730,140.1650,139.8440,140.1210,1254572\r\n2023-01-25
+ 13:00:00,139.4820,139.9170,139.4460,139.8830,1183834\r\n2023-01-25 12:45:00,139.5010,139.5600,139.3180,139.4860,627376\r\n2023-01-25
+ 12:30:00,139.2730,139.6790,139.1890,139.5060,851021\r\n2023-01-25 12:15:00,139.4020,139.5450,139.1690,139.2670,942255\r\n2023-01-25
+ 12:00:00,139.5230,139.7580,139.1590,139.4060,1523908\r\n2023-01-25 11:45:00,139.2090,139.8870,139.0590,139.5260,1828568\r\n2023-01-25
+ 11:30:00,139.1440,139.4800,138.9400,139.2080,1836959\r\n2023-01-25 11:15:00,138.8360,139.4800,138.6520,139.1480,2337626\r\n2023-01-25
+ 11:00:00,138.3640,138.8670,138.1950,138.8250,2253429\r\n2023-01-25 10:45:00,138.0370,138.5170,137.9170,138.3680,1814184\r\n2023-01-25
+ 10:30:00,138.8760,139.0530,137.8580,138.0380,2898756\r\n2023-01-25 10:15:00,138.7960,139.1520,138.5030,138.8700,1978515\r\n2023-01-25
+ 10:00:00,138.7670,139.5100,138.6720,138.8130,2455229\r\n2023-01-25 09:45:00,139.1540,139.8480,138.7420,138.7650,2785027\r\n2023-01-25
+ 09:30:00,139.9290,140.1360,138.5230,139.1680,5433804\r\n2023-01-24 15:45:00,141.1110,141.7550,140.9760,141.5320,3648415\r\n2023-01-24
+ 15:30:00,141.4580,141.4960,140.9320,141.1160,1630244\r\n2023-01-24 15:15:00,141.2730,141.5160,141.2290,141.4530,1194031\r\n2023-01-24
+ 15:00:00,141.4780,141.5960,141.2150,141.2840,1237871\r\n2023-01-24 14:45:00,141.5370,141.6450,141.3240,141.4770,1127294\r\n2023-01-24
+ 14:30:00,141.6970,141.8340,141.4930,141.5420,1114856\r\n2023-01-24 14:15:00,141.3870,141.7450,141.3440,141.6910,1147658\r\n2023-01-24
+ 14:00:00,141.6770,141.6950,141.2240,141.3890,1588811\r\n2023-01-24 13:45:00,142.1040,142.1720,141.6620,141.6860,1196879\r\n2023-01-24
+ 13:30:00,141.9450,142.1920,141.8020,142.1070,1808716\r\n2023-01-24 13:15:00,141.4530,141.9530,141.3340,141.9390,1330135\r\n2023-01-24
+ 13:00:00,141.4980,141.6160,141.0740,141.4520,1142190\r\n2023-01-24 12:45:00,141.3790,141.6840,141.3140,141.5020,946467\r\n2023-01-24
+ 12:30:00,141.7260,141.7350,141.3140,141.3930,1023572\r\n2023-01-24 12:15:00,141.5900,141.9040,141.5040,141.7350,1803709\r\n2023-01-24
+ 12:00:00,141.1250,141.6060,140.8370,141.5960,1393518\r\n2023-01-24 11:45:00,141.0810,141.2780,140.9760,141.1350,849995\r\n2023-01-24
+ 11:30:00,141.4880,141.5340,140.9360,141.0850,1372549\r\n2023-01-24 11:15:00,141.0410,141.5060,140.7880,141.4860,1584463\r\n2023-01-24
+ 11:00:00,141.2890,141.4370,140.9360,141.0450,1732817\r\n2023-01-24 10:45:00,140.7700,141.3470,140.6480,141.2880,1605822\r\n2023-01-24
+ 10:30:00,140.9370,141.2480,140.3160,140.7570,1972197\r\n2023-01-24 10:15:00,140.9220,141.3080,140.6580,140.9460,2067111\r\n2023-01-24
+ 10:00:00,140.4950,140.9800,140.1220,140.9510,2593950\r\n2023-01-24 09:45:00,140.8920,141.1690,140.4000,140.4840,2829536\r\n2023-01-24
+ 09:30:00,139.3480,140.9700,139.3380,140.9260,4358939\r\n2023-01-23 15:45:00,139.8190,140.3040,139.7350,140.1410,4645025\r\n2023-01-23
+ 15:30:00,139.6310,139.8960,139.4370,139.8240,1884649\r\n2023-01-23 15:15:00,139.7500,139.8620,139.3970,139.6300,1818166\r\n2023-01-23
+ 15:00:00,140.0180,140.0760,139.5260,139.7490,1990630\r\n2023-01-23 14:45:00,140.3450,140.3540,139.6490,140.0220,2453913\r\n2023-01-23
+ 14:30:00,140.8130,140.9900,140.2910,140.3450,1559522\r\n2023-01-23 14:15:00,140.8420,141.0200,140.6800,140.7970,1560035\r\n2023-01-23
+ 14:00:00,140.9910,141.0200,140.5390,140.8470,1642722\r\n2023-01-23 13:45:00,141.0860,141.3470,140.9070,140.9860,1484231\r\n2023-01-23
+ 13:30:00,141.2990,141.3670,141.0160,141.0880,1461935\r\n2023-01-23 13:15:00,141.1500,141.3970,141.1250,141.3030,1420401\r\n2023-01-23
+ 13:00:00,141.1800,141.5260,141.0260,141.1590,1908956\r\n2023-01-23 12:45:00,141.3990,141.5360,140.9660,141.1940,2187698\r\n2023-01-23
+ 12:30:00,141.4880,141.5560,141.2640,141.4080,1232067\r\n2023-01-23 12:15:00,141.3190,141.5960,141.2340,141.4850,1623032\r\n2023-01-23
+ 12:00:00,141.9250,141.9330,141.1850,141.3270,2063424\r\n2023-01-23 11:45:00,141.7060,142.3460,141.4630,141.9290,3303263\r\n2023-01-23
+ 11:30:00,141.3690,141.9040,141.2750,141.7010,2377490\r\n2023-01-23 11:15:00,141.1800,141.8340,141.0460,141.3730,3140109\r\n2023-01-23
+ 11:00:00,140.2460,141.4760,140.1520,141.1840,3848507\r\n2023-01-23 10:45:00,139.8890,140.5230,139.7890,140.2560,2573732\r\n2023-01-23
+ 10:30:00,139.5070,140.0810,139.5010,139.8930,2673807\r\n2023-01-23 10:15:00,138.7670,139.6890,138.7220,139.5130,2817622\r\n2023-01-23
+ 10:00:00,138.9260,139.3010,138.6130,138.7630,2921125\r\n2023-01-23 09:45:00,138.3790,139.0530,138.2450,138.9200,3265100\r\n2023-01-23
+ 09:30:00,137.1870,138.7000,136.9540,138.3730,5056958\r\n2023-01-20 15:45:00,136.5220,137.0860,136.3680,136.9030,6716655\r\n2023-01-20
+ 15:30:00,136.5420,136.6990,136.3190,136.5260,1999873\r\n2023-01-20 15:15:00,136.7900,136.9570,136.4180,136.5410,1923821\r\n2023-01-20
+ 15:00:00,136.2340,136.8380,136.1930,136.7940,1984953\r\n2023-01-20 14:45:00,136.3090,136.3320,135.9510,136.2380,1357015\r\n2023-01-20
+ 14:30:00,136.0110,136.3510,136.0010,136.3170,1573283\r\n2023-01-20 14:15:00,135.7180,136.0630,135.7130,136.0150,1156358\r\n2023-01-20
+ 14:00:00,135.9060,135.9640,135.7030,135.7200,1389922\r\n2023-01-20 13:45:00,135.2160,135.9240,135.2110,135.9000,1939879\r\n2023-01-20
+ 13:30:00,134.7740,135.3580,134.7640,135.2250,1584364\r\n2023-01-20 13:15:00,134.8830,134.9210,134.4510,134.7680,1119167\r\n2023-01-20
+ 13:00:00,134.8430,135.1400,134.5310,134.8820,1816572\r\n2023-01-20 12:45:00,134.7350,135.0300,134.7050,134.8480,1029414\r\n2023-01-20
+ 12:30:00,134.7170,134.9200,134.6500,134.7380,894106\r\n2023-01-20 12:15:00,134.5160,134.8420,134.5110,134.7230,1007840\r\n2023-01-20
+ 12:00:00,134.3870,134.6930,134.3770,134.5190,1156870\r\n2023-01-20 11:45:00,134.2130,134.5640,134.1730,134.3870,1349757\r\n2023-01-20
+ 11:30:00,134.6150,134.7540,134.1140,134.2120,1643713\r\n2023-01-20 11:15:00,134.5260,134.6530,134.2530,134.6190,1431922\r\n2023-01-20
+ 11:00:00,134.0990,134.6030,134.0740,134.5490,1798442\r\n2023-01-20 10:45:00,134.1970,134.4150,134.0440,134.0930,1654390\r\n2023-01-20
+ 10:30:00,134.1380,134.5730,134.0240,134.2020,2212750\r\n2023-01-20 10:15:00,133.8720,134.2850,133.6620,134.1320,2023685\r\n2023-01-20
+ 10:00:00,133.6920,134.1070,133.3990,133.8790,2329429\r\n2023-01-20 09:45:00,133.8900,134.2850,133.4510,133.6870,2681150\r\n2023-01-20
+ 09:30:00,134.3470,134.3750,133.2990,133.8920,8775063\r\n2023-01-19 15:45:00,134.6050,134.7820,134.1730,134.3630,3781028\r\n2023-01-19
+ 15:30:00,134.7840,134.9110,134.5380,134.6190,1423205\r\n2023-01-19 15:15:00,134.7140,134.9510,134.5800,134.7880,1394818\r\n2023-01-19
+ 15:00:00,135.0120,135.1300,134.6400,134.7130,1353232\r\n2023-01-19 14:45:00,135.1420,135.3280,134.8290,135.0010,1167922\r\n2023-01-19
+ 14:30:00,134.9530,135.3280,134.7390,135.1360,1746550\r\n2023-01-19 14:15:00,134.5700,135.1300,134.4860,134.9620,1472276\r\n2023-01-19
+ 14:00:00,134.3470,134.6330,134.1330,134.5690,1224657\r\n2023-01-19 13:45:00,134.3170,134.4150,134.0940,134.3610,1026564\r\n2023-01-19
+ 13:30:00,133.8400,134.6330,133.8360,134.3190,1605626\r\n2023-01-19 13:15:00,133.9700,134.1960,133.7060,133.8340,1227478\r\n2023-01-19
+ 13:00:00,133.6820,134.0770,133.6640,133.9740,1131186\r\n2023-01-19 12:45:00,133.5750,133.6900,133.4280,133.6840,776887\r\n2023-01-19
+ 12:30:00,133.5240,133.7390,133.3490,133.5860,848018\r\n2023-01-19 12:15:00,133.6720,133.9180,133.4280,133.5270,1023364\r\n2023-01-19
+ 12:00:00,133.4730,133.8190,133.4280,133.6770,1147155\r\n2023-01-19 11:45:00,133.4630,133.7690,133.3490,133.4870,1169913\r\n2023-01-19
+ 11:30:00,133.5620,133.6500,133.2690,133.4670,1339811\r\n2023-01-19 11:15:00,134.2530,134.2850,133.4680,133.5760,1994443\r\n2023-01-19
+ 11:00:00,133.1950,134.4740,133.1300,134.2580,2519967\r\n2023-01-19 10:45:00,133.5430,133.5500,132.8520,133.1890,1615427\r\n2023-01-19
+ 10:30:00,133.5590,133.7690,133.1700,133.5350,1652092\r\n2023-01-19 10:15:00,133.4930,134.1550,133.2510,133.5560,1873714\r\n2023-01-19
+ 10:00:00,134.1290,134.1360,133.3690,133.4960,2281444\r\n2023-01-19 09:45:00,133.5230,134.4100,133.0920,134.1420,2975242\r\n2023-01-19
+ 09:30:00,133.1750,134.2760,132.9420,133.5270,3892475\r\n2023-01-18 15:45:00,134.5260,134.6330,134.1040,134.2810,3752501\r\n2023-01-18
+ 15:30:00,134.8340,134.9010,134.4310,134.5250,1498963\r\n2023-01-18 15:15:00,134.9580,135.1100,134.7090,134.8390,1230618\r\n2023-01-18
+ 15:00:00,134.8730,135.1890,134.7440,134.9670,1312264\r\n2023-01-18 14:45:00,135.0320,135.1140,134.7890,134.8820,946124\r\n2023-01-18
+ 14:30:00,135.1320,135.2390,134.9280,135.0410,1066617\r\n2023-01-18 14:15:00,134.9970,135.1890,134.7190,135.1460,1014389\r\n2023-01-18
+ 14:00:00,135.1420,135.1640,134.7390,135.0130,1097723\r\n2023-01-18 13:45:00,134.7540,135.3480,134.7290,135.1360,1695408\r\n2023-01-18
+ 13:30:00,134.8040,134.8520,134.4510,134.7630,1103844\r\n2023-01-18 13:15:00,134.5260,134.8410,134.4020,134.7980,1099141\r\n2023-01-18
+ 13:00:00,134.7740,135.0400,134.4310,134.5300,1319586\r\n2023-01-18 12:45:00,134.6650,134.8910,134.6200,134.7780,1085836\r\n2023-01-18
+ 12:30:00,134.6550,134.9060,134.4910,134.6790,1143111\r\n2023-01-18 12:15:00,135.0120,135.2040,134.5110,134.6620,1499372\r\n2023-01-18
+ 12:00:00,135.2290,135.3580,134.5310,135.0060,1697851\r\n2023-01-18 11:45:00,135.0420,135.2890,134.8680,135.2310,1642756\r\n2023-01-18
+ 11:30:00,135.7470,135.8050,134.9780,135.0560,2083783\r\n2023-01-18 11:15:00,136.0060,136.0530,135.4640,135.7510,1994107\r\n2023-01-18
+ 11:00:00,136.1150,136.4410,135.6930,136.0100,1869131\r\n2023-01-18 10:45:00,135.9660,136.1810,135.6130,136.1240,2004550\r\n2023-01-18
+ 10:30:00,137.0480,137.0670,135.8910,135.9710,2364947\r\n2023-01-18 10:15:00,136.8360,137.1450,136.2690,137.0440,2611453\r\n2023-01-18
+ 10:00:00,137.0390,137.6720,136.6760,136.8340,4058899\r\n2023-01-18 09:45:00,136.2340,137.0670,136.0600,137.0430,3768402\r\n2023-01-18
+ 09:30:00,135.8860,136.6590,135.7420,136.2510,5413109\r\n2023-01-17 15:45:00,134.8140,135.0800,134.6800,135.0060,3661056\r\n2023-01-17
+ 15:30:00,134.7690,135.0200,134.7390,134.8180,1396688\r\n2023-01-17 15:15:00,134.8540,134.9210,134.6700,134.7830,1085677\r\n2023-01-17
+ 15:00:00,134.9680,135.1600,134.7790,134.8530,1015091\r\n2023-01-17 14:45:00,135.1120,135.1490,134.8580,134.9840,847545\r\n2023-01-17
+ 14:30:00,134.7390,135.1600,134.7340,135.1260,1158455\r\n2023-01-17 14:15:00,134.7440,134.8520,134.4710,134.7390,1141209\r\n2023-01-17
+ 14:00:00,135.1320,135.1690,134.5710,134.7480,1023901\r\n2023-01-17 13:45:00,135.3880,135.4770,135.0670,135.1310,820502\r\n2023-01-17
+ 13:30:00,135.1320,135.4180,134.9980,135.3940,823247\r\n2023-01-17 13:15:00,135.0570,135.2190,134.9970,135.1260,830634\r\n2023-01-17
+ 13:00:00,135.3100,135.3880,134.9780,135.0610,1181279\r\n2023-01-17 12:45:00,134.8580,135.3580,134.7690,135.3240,1478105\r\n2023-01-17
+ 12:30:00,134.6650,135.0300,134.6300,134.8630,942795\r\n2023-01-17 12:15:00,134.6450,134.7310,134.3820,134.6690,1127715\r\n2023-01-17
+ 12:00:00,134.9430,135.0400,134.6200,134.6490,1002075\r\n2023-01-17 11:45:00,134.9810,135.1890,134.7690,134.9370,909778\r\n2023-01-17
+ 11:30:00,134.4660,135.2190,134.4320,134.9870,1983101\r\n2023-01-17 11:15:00,133.9050,134.6030,133.8960,134.4750,1919804\r\n2023-01-17
+ 11:00:00,134.6100,134.7520,133.7560,133.9040,2282180\r\n2023-01-17 10:45:00,134.7440,134.9910,134.4120,134.6190,2035772\r\n2023-01-17
+ 10:30:00,135.7670,135.8750,134.4910,134.7480,2918185\r\n2023-01-17 10:15:00,135.3300,136.3610,135.2310,135.7610,3519018\r\n2023-01-17
+ 10:00:00,134.2680,135.6360,134.2630,135.3390,3639677\r\n2023-01-17 09:45:00,133.9550,134.6930,133.9500,134.2710,2644061\r\n2023-01-17
+ 09:30:00,133.9100,134.6130,133.2100,133.9540,5496289\r\n2023-01-13 15:45:00,133.8950,133.9180,133.5380,133.7850,3746397\r\n2023-01-13
+ 15:30:00,133.6870,134.0070,133.6120,133.9090,2118978\r\n2023-01-13 15:15:00,133.3830,133.6990,133.3590,133.6900,1403037\r\n2023-01-13
+ 15:00:00,133.2250,133.4810,133.1500,133.3830,1302750\r\n2023-01-13 14:45:00,133.2150,133.3420,133.1200,133.2200,1038935\r\n2023-01-13
+ 14:30:00,133.3340,133.5110,133.1900,133.2290,1223800\r\n2023-01-13 14:15:00,133.1550,133.3720,133.0310,133.3340,1228248\r\n2023-01-13
+ 14:00:00,133.2250,133.3220,132.9710,133.1500,1205640\r\n2023-01-13 13:45:00,133.2550,133.4710,133.1400,133.2250,1246043\r\n2023-01-13
+ 13:30:00,132.7480,133.4210,132.7130,133.2630,1761614\r\n2023-01-13 13:15:00,132.5690,132.8060,132.4250,132.7370,1035880\r\n2023-01-13
+ 13:00:00,132.6290,132.7060,132.3860,132.5680,852197\r\n2023-01-13 12:45:00,132.5100,132.6960,132.3760,132.6320,1047491\r\n2023-01-13
+ 12:30:00,132.6090,132.6270,132.2470,132.5140,911447\r\n2023-01-13 12:15:00,132.3810,132.6960,132.2860,132.6030,900112\r\n2023-01-13
+ 12:00:00,132.3010,132.4780,132.2170,132.3940,926455\r\n2023-01-13 11:45:00,132.1820,132.3490,131.8440,132.3080,1375165\r\n2023-01-13
+ 11:30:00,132.1320,132.2690,131.8700,132.1910,1106358\r\n2023-01-13 11:15:00,132.5340,132.5670,132.0580,132.1360,1778202\r\n2023-01-13
+ 11:00:00,132.8370,133.0540,132.4650,132.5380,1838158\r\n2023-01-13 10:45:00,132.7480,133.0490,132.5740,132.8410,1750994\r\n2023-01-13
+ 10:30:00,132.5990,133.0640,132.3260,132.7370,2121920\r\n2023-01-13 10:15:00,132.4000,132.6470,132.0880,132.6030,2077111\r\n2023-01-13
+ 10:00:00,131.6360,132.5570,131.4920,132.3990,2886214\r\n2023-01-13 09:45:00,131.2730,131.7920,131.0250,131.6640,2642394\r\n2023-01-13
+ 09:30:00,131.0500,132.0340,130.7570,131.2820,4253768\r\n2023-01-12 15:45:00,132.2220,132.6570,131.8590,132.4790,3432538\r\n2023-01-12
+ 15:30:00,132.2810,132.5270,132.1680,132.2250,1620731\r\n2023-01-12 15:15:00,132.0630,132.4830,131.9190,132.2800,1587928\r\n2023-01-12
+ 15:00:00,132.4450,132.5270,131.9980,132.0740,1307882\r\n2023-01-12 14:45:00,132.4600,132.6560,132.1070,132.4440,1363280\r\n2023-01-12
+ 14:30:00,132.2890,132.6170,132.0980,132.4630,1472133\r\n2023-01-12 14:15:00,132.7880,132.8450,132.2270,132.2930,1239464\r\n2023-01-12
+ 14:00:00,133.1060,133.2030,132.6650,132.7970,1375847\r\n2023-01-12 13:45:00,132.7130,133.2820,132.6640,133.1140,1518268\r\n2023-01-12
+ 13:30:00,131.8940,132.7660,131.5120,132.7220,2435122\r\n2023-01-12 13:15:00,132.8030,133.0640,131.8490,131.9080,1607829\r\n2023-01-12
+ 13:00:00,132.8030,133.0440,132.4850,132.8110,1395646\r\n2023-01-12 12:45:00,133.0260,133.2130,132.7930,132.8110,1155360\r\n2023-01-12
+ 12:30:00,133.0960,133.3120,132.9320,133.0400,1572799\r\n2023-01-12 12:15:00,132.3810,133.1780,132.3460,133.0990,1890439\r\n2023-01-12
+ 12:00:00,132.1720,132.5570,131.9040,132.3850,1373934\r\n2023-01-12 11:45:00,131.9340,132.2700,131.6110,132.1760,1321383\r\n2023-01-12
+ 11:30:00,131.5160,132.0210,131.1640,131.9470,1416688\r\n2023-01-12 11:15:00,131.8440,131.8820,131.2630,131.5150,1249922\r\n2023-01-12
+ 11:00:00,131.5460,131.8420,131.0850,131.8380,1809483\r\n2023-01-12 10:45:00,131.7050,132.0470,131.4620,131.5450,1951060\r\n2023-01-12
+ 10:30:00,132.0730,132.5270,131.5910,131.6990,2217902\r\n2023-01-12 10:15:00,132.4550,132.8900,131.9290,132.0670,2758195\r\n2023-01-12
+ 10:00:00,131.3970,132.7460,131.2430,132.4540,3312376\r\n2023-01-12 09:45:00,131.2500,131.6240,130.5380,131.4010,3848820\r\n2023-01-12
+ 09:30:00,132.9370,133.3520,131.2240,131.2320,5781275\r\n2023-01-11 15:45:00,132.0230,132.6070,131.8690,132.5730,5987351\r\n2023-01-11
+ 15:30:00,132.0230,132.0610,131.7500,132.0320,1705148\r\n2023-01-11 15:15:00,131.8990,132.1600,131.8890,132.0190,1463953\r\n2023-01-11
+ 15:00:00,131.6260,132.0210,131.5860,131.9080,1612124\r\n2023-01-11 14:45:00,131.8980,131.9220,131.4920,131.6290,1128502\r\n2023-01-11
+ 14:30:00,131.5050,131.9710,131.4120,131.8990,1342064\r\n2023-01-11 14:15:00,131.4770,131.7530,131.4420,131.5050,1185374\r\n2023-01-11
+ 14:00:00,131.5070,131.5540,131.2580,131.4760,1155058\r\n2023-01-11 13:45:00,131.5660,131.6040,131.3030,131.5010,1085825\r\n2023-01-11
+ 13:30:00,131.9020,131.9760,131.5310,131.5700,1208250\r\n2023-01-11 13:15:00,132.1770,132.2000,131.5020,131.8980,1413961\r\n2023-01-11
+ 13:00:00,131.8540,132.3390,131.8260,132.1730,1760838\r\n2023-01-11 12:45:00,131.6900,132.0310,131.6700,131.8480,1149297\r\n2023-01-11
+ 12:30:00,131.8940,132.0210,131.6010,131.6990,1778715\r\n2023-01-11 12:15:00,131.6650,131.9610,131.5760,131.8980,1762701\r\n2023-01-11
+ 12:00:00,131.3970,131.7330,131.3220,131.6690,1552365\r\n2023-01-11 11:45:00,131.1390,131.4750,131.0750,131.3910,1619366\r\n2023-01-11
+ 11:30:00,130.7820,131.1760,130.5680,131.1380,1610293\r\n2023-01-11 11:15:00,130.7390,130.8990,130.6970,130.7900,1310190\r\n2023-01-11
+ 11:00:00,130.5830,130.7990,130.4740,130.7440,1602640\r\n2023-01-11 10:45:00,130.3840,130.8190,130.3300,130.5820,2102564\r\n2023-01-11
+ 10:30:00,131.1190,131.1770,130.1910,130.3980,2607748\r\n2023-01-11 10:15:00,130.4740,131.2150,130.2700,131.1230,3144073\r\n2023-01-11
+ 10:00:00,130.0020,130.6010,129.5950,130.4680,2645272\r\n2023-01-11 09:45:00,129.9770,130.6400,129.6740,129.9890,2976233\r\n2023-01-11
+ 09:30:00,130.3450,130.7000,129.5650,129.9910,4522200\r\n2023-01-10 15:45:00,129.2120,129.8660,129.1410,129.8620,3453530\r\n2023-01-10
+ 15:30:00,129.2520,129.4880,129.1180,129.2160,1458131\r\n2023-01-10 15:15:00,129.1330,129.3690,129.1080,129.2660,1355369\r\n2023-01-10
+ 15:00:00,129.2270,129.2550,128.8700,129.1420,1511889\r\n2023-01-10 14:45:00,129.2170,129.3190,129.0880,129.2310,1185254\r\n2023-01-10
+ 14:30:00,129.4800,129.5380,129.1580,129.2210,1117021\r\n2023-01-10 14:15:00,129.5450,129.6520,129.2870,129.4750,1402732\r\n2023-01-10
+ 14:00:00,129.3410,129.8060,129.3370,129.5540,1898998\r\n2023-01-10 13:45:00,128.9190,129.3890,128.9050,129.3400,1924753\r\n2023-01-10
+ 13:30:00,128.7650,129.1310,128.6810,128.9280,1215419\r\n2023-01-10 13:15:00,128.7750,128.9020,128.5320,128.7790,1378739\r\n2023-01-10
+ 13:00:00,128.8450,129.1210,128.7210,128.7840,1838773\r\n2023-01-10 12:45:00,128.6860,128.9820,128.5820,128.8490,1003492\r\n2023-01-10
+ 12:30:00,128.2290,128.9420,128.1660,128.7000,1493521\r\n2023-01-10 12:15:00,128.2690,128.3660,128.0850,128.2430,1271746\r\n2023-01-10
+ 12:00:00,127.9910,128.3660,127.5690,128.2820,1736393\r\n2023-01-10 11:45:00,128.0400,128.2070,127.7770,128.0040,1613180\r\n2023-01-10
+ 11:30:00,128.1400,128.3160,127.8870,128.0490,1312371\r\n2023-01-10 11:15:00,128.1500,128.3560,127.8470,128.1530,1892243\r\n2023-01-10
+ 11:00:00,128.2190,128.3260,127.9160,128.1430,1987704\r\n2023-01-10 10:45:00,127.3450,128.3260,127.2410,128.2130,2569791\r\n2023-01-10
+ 10:30:00,128.5170,128.5250,127.3520,127.3600,2983706\r\n2023-01-10 10:15:00,129.4520,129.9520,128.4430,128.5310,2795482\r\n2023-01-10
+ 10:00:00,129.1030,129.7870,128.7210,129.4540,2942621\r\n2023-01-10 09:45:00,129.2070,129.5280,128.6220,129.1070,3409102\r\n2023-01-10
+ 09:30:00,129.3910,130.3760,128.9050,129.2160,4395905\r\n2023-01-09 15:45:00,129.6190,129.6370,128.9990,129.3050,3582553\r\n2023-01-09
+ 15:30:00,129.5600,129.6870,129.2670,129.6130,1778658\r\n2023-01-09 15:15:00,129.4770,129.8160,129.4460,129.5590,1566557\r\n2023-01-09
+ 15:00:00,129.7880,129.9350,129.4660,129.4840,1533054\r\n2023-01-09 14:45:00,130.1960,130.2730,129.6940,129.7820,1401037\r\n2023-01-09
+ 14:30:00,130.5930,130.6770,130.0520,130.1990,1517874\r\n2023-01-09 14:15:00,130.5680,130.7690,130.3990,130.6020,1619617\r\n2023-01-09
+ 14:00:00,130.4930,130.8350,130.3410,130.5770,2115867\r\n2023-01-09 13:45:00,130.7220,130.7350,130.2900,130.5020,1882895\r\n2023-01-09
+ 13:30:00,131.5910,131.6140,130.6670,130.7260,1901786\r\n2023-01-09 13:15:00,131.5170,131.6720,131.4420,131.5950,1053537\r\n2023-01-09
+ 13:00:00,131.5560,131.7430,131.3530,131.5200,1217802\r\n2023-01-09 12:45:00,131.3580,131.6340,131.3480,131.5590,1062284\r\n2023-01-09
+ 12:30:00,131.8340,131.9320,131.3430,131.3610,1151819\r\n2023-01-09 12:15:00,131.9040,131.9430,131.6900,131.8430,1207244\r\n2023-01-09
+ 12:00:00,132.0330,132.0560,131.6610,131.9180,1424082\r\n2023-01-09 11:45:00,132.0610,132.2200,131.8990,132.0420,1413133\r\n2023-01-09
+ 11:30:00,132.1820,132.2790,131.8890,132.0670,1784388\r\n2023-01-09 11:15:00,132.3210,132.5080,132.0580,132.1810,2077028\r\n2023-01-09
+ 11:00:00,131.8340,132.4380,131.7600,132.3050,2311810\r\n2023-01-09 10:45:00,131.8240,132.2390,131.7500,131.8380,2441800\r\n2023-01-09
+ 10:30:00,131.6700,131.9390,131.5550,131.8330,2233026\r\n2023-01-09 10:15:00,131.2430,131.8370,131.0550,131.6640,3068089\r\n2023-01-09
+ 10:00:00,131.1090,131.7330,131.0660,131.2320,3445151\r\n2023-01-09 09:45:00,130.1560,131.1670,130.1470,131.1180,3518419\r\n2023-01-09
+ 09:30:00,129.5900,130.5510,129.5700,130.1600,5025104\r\n2023-01-06 15:45:00,128.9140,129.0910,128.4530,128.6200,6354069\r\n2023-01-06
+ 15:30:00,128.9290,129.1700,128.8650,128.9180,2525589\r\n2023-01-06 15:15:00,129.1130,129.2350,128.8100,128.9280,2147402\r\n2023-01-06
+ 15:00:00,128.9640,129.4090,128.9190,129.1120,2938553\r\n2023-01-06 14:45:00,128.8940,129.1110,128.7210,128.9670,2026129\r\n2023-01-06
+ 14:30:00,128.4570,128.9820,128.4180,128.8880,2234996\r\n2023-01-06 14:15:00,128.2790,128.6740,128.2290,128.4560,2248827\r\n2023-01-06
+ 14:00:00,127.9710,128.3660,127.9000,128.2810,1971350\r\n2023-01-06 13:45:00,127.7470,128.0080,127.6480,127.9700,1230499\r\n2023-01-06
+ 13:30:00,127.3650,127.8890,127.3600,127.7560,1691721\r\n2023-01-06 13:15:00,127.3100,127.5310,127.1810,127.3790,1132078\r\n2023-01-06
+ 13:00:00,127.0870,127.4320,127.0130,127.3180,1332157\r\n2023-01-06 12:45:00,127.2250,127.3330,126.9030,127.0910,1294385\r\n2023-01-06
+ 12:30:00,127.4460,127.5220,127.1520,127.2250,1443007\r\n2023-01-06 12:15:00,127.3100,127.6110,127.1320,127.4580,1651090\r\n2023-01-06
+ 12:00:00,127.0170,127.4920,127.0030,127.3090,1931796\r\n2023-01-06 11:45:00,126.4910,127.1540,126.4370,127.0110,2060642\r\n2023-01-06
+ 11:30:00,126.3820,126.8260,126.1390,126.4850,2155018\r\n2023-01-06 11:15:00,126.5160,126.7830,126.2880,126.3800,1787798\r\n2023-01-06
+ 11:00:00,126.5750,127.1740,126.4370,126.5150,2734482\r\n2023-01-06 10:45:00,126.1930,126.6470,126.1640,126.5440,2136941\r\n2023-01-06
+ 10:30:00,125.5130,126.6380,125.4730,126.1870,2610878\r\n2023-01-06 10:15:00,125.9250,126.4890,125.3840,125.5160,2660372\r\n2023-01-06
+ 10:00:00,124.9420,126.3890,124.9370,125.9240,4373930\r\n2023-01-06 09:45:00,124.1070,125.8330,124.0630,124.9450,3777542\r\n2023-01-06
+ 09:30:00,125.1400,126.3300,124.0330,124.1210,6070023\r\n2023-01-05 15:45:00,124.2270,124.4230,123.9040,124.1810,5635648\r\n2023-01-05
+ 15:30:00,124.3160,124.4520,124.1420,124.2250,2448840\r\n2023-01-05 15:15:00,124.3090,124.5120,124.1720,124.3100,2082922\r\n2023-01-05
+ 15:00:00,124.6290,124.6810,124.1720,124.3150,2384281\r\n2023-01-05 14:45:00,125.0610,125.2870,124.6140,124.6270,2445827\r\n2023-01-05
+ 14:30:00,125.0310,125.5250,125.0160,125.0740,1644570\r\n2023-01-05 14:15:00,125.2000,125.3660,124.9470,125.0330,1147697\r\n2023-01-05
+ 14:00:00,125.4180,125.6150,125.1550,125.1940,1344445\r\n2023-01-05 13:45:00,125.6670,125.7040,125.3140,125.4120,1195432\r\n2023-01-05
+ 13:30:00,125.6270,126.1810,125.5830,125.6620,1881027\r\n2023-01-05 13:15:00,124.9520,126.0120,124.9370,125.6210,2540822\r\n2023-01-05
+ 13:00:00,125.3840,125.4140,124.9470,124.9630,1339449\r\n2023-01-05 12:45:00,125.4880,125.6190,125.3140,125.3900,931652\r\n2023-01-05
+ 12:30:00,125.6370,125.9420,125.4340,125.4920,1089572\r\n2023-01-05 12:15:00,125.6960,125.7730,125.3340,125.6440,1292385\r\n2023-01-05
+ 12:00:00,125.8160,126.0960,125.6320,125.7000,1352333\r\n2023-01-05 11:45:00,126.0490,126.2200,125.7510,125.8190,1653343\r\n2023-01-05
+ 11:30:00,125.6870,126.0910,125.5630,126.0530,2128183\r\n2023-01-05 11:15:00,125.9350,126.0810,125.4530,125.7000,1723457\r\n2023-01-05
+ 11:00:00,125.5570,126.1410,125.2850,125.9340,2088956\r\n2023-01-05 10:45:00,126.0140,126.1710,125.4140,125.5610,2108908\r\n2023-01-05
+ 10:30:00,125.9050,126.0910,125.2950,126.0180,2943035\r\n2023-01-05 10:15:00,126.2230,126.3400,125.7710,125.8990,2681010\r\n2023-01-05
+ 10:00:00,126.5010,126.9060,126.0390,126.2460,3669287\r\n2023-01-05 09:45:00,124.9910,126.6270,124.5990,126.5150,4995536\r\n2023-01-05
+ 09:30:00,126.2630,126.3000,124.4600,125.0050,5613002\r\n2023-01-04 15:45:00,124.5150,125.6240,124.4210,125.5210,4882683\r\n2023-01-04
+ 15:30:00,124.9610,125.0880,124.4210,124.5180,2596098\r\n2023-01-04 15:15:00,125.4880,125.6840,124.9570,124.9850,2132671\r\n2023-01-04
+ 15:00:00,125.6070,125.9920,125.3740,125.4950,1965013\r\n2023-01-04 14:45:00,124.9520,125.6540,124.8380,125.6140,2090591\r\n2023-01-04
+ 14:30:00,124.8620,125.2470,124.5200,124.9470,2788347\r\n2023-01-04 14:15:00,125.8450,126.4790,124.7580,124.8710,3016051\r\n2023-01-04
+ 14:00:00,126.3020,127.0050,125.4140,125.8590,3477195\r\n2023-01-04 13:45:00,126.5410,126.6180,126.1980,126.3270,1069981\r\n2023-01-04
+ 13:30:00,126.3970,126.6260,126.3570,126.5510,964507\r\n2023-01-04 13:15:00,126.3520,126.6380,126.3080,126.3950,1030293\r\n2023-01-04
+ 13:00:00,126.3670,126.4390,126.0590,126.3560,1376606\r\n2023-01-04 12:45:00,127.0460,127.0540,126.3570,126.3660,1270344\r\n2023-01-04
+ 12:30:00,127.2010,127.3530,126.8840,127.0510,1124897\r\n2023-01-04 12:15:00,127.2160,127.7850,127.1520,127.1950,1844230\r\n2023-01-04
+ 12:00:00,126.8980,127.3030,126.8440,127.2160,1512221\r\n2023-01-04 11:45:00,127.2460,127.2730,126.8640,126.9020,1749357\r\n2023-01-04
+ 11:30:00,126.5210,127.5710,126.5060,127.2500,3407396\r\n2023-01-04 11:15:00,126.2230,126.6380,126.0990,126.5150,2253557\r\n2023-01-04
+ 11:00:00,126.0940,126.2550,125.6320,126.2230,2088713\r\n2023-01-04 10:45:00,125.7350,126.1610,125.7170,126.1270,2471002\r\n2023-01-04
+ 10:30:00,125.1300,125.8830,124.4740,125.7400,2750473\r\n2023-01-04 10:15:00,124.8820,125.1480,124.6090,125.1420,2828869\r\n2023-01-04
+ 10:00:00,125.7760,126.4790,124.2220,124.8660,5121969\r\n2023-01-04 09:45:00,125.3040,125.9990,125.0760,125.7990,4056481\r\n2023-01-04
+ 09:30:00,126.0240,126.6920,125.2650,125.3070,8179169\r\n2023-01-03 15:45:00,124.1370,124.5720,123.9540,124.2000,6493878\r\n2023-01-03
+ 15:30:00,123.7800,124.1540,123.7700,124.1310,2933961\r\n2023-01-03 15:15:00,123.8590,124.1840,123.6860,123.7730,2645981\r\n2023-01-03
+ 15:00:00,123.7800,123.9760,123.5470,123.8530,2165456\r\n2023-01-03 14:45:00,123.9680,124.4820,123.5860,123.7820,3196386\r\n2023-01-03
+ 14:30:00,123.7280,124.0150,123.3180,123.9620,2152954\r\n2023-01-03 14:15:00,123.8190,123.9760,123.5660,123.7240,1509326\r\n2023-01-03
+ 14:00:00,123.9680,124.1540,123.7650,123.8230,1688964\r\n2023-01-03 13:45:00,123.7600,123.9960,123.3380,123.9670,2134910\r\n2023-01-03
+ 13:30:00,123.8190,123.9860,123.6560,123.7730,1525935\r\n2023-01-03 13:15:00,123.4420,123.8960,123.3380,123.8030,1892722\r\n2023-01-03
+ 13:00:00,123.7500,123.9160,123.3580,123.4410,1700993\r\n2023-01-03 12:45:00,123.8040,123.8560,123.4970,123.7440,1995756\r\n2023-01-03
+ 12:30:00,123.8090,124.0950,123.7060,123.8130,1632983\r\n2023-01-03 12:15:00,124.1270,124.1400,123.4960,123.8130,2260197\r\n2023-01-03
+ 12:00:00,123.8990,124.2090,123.8350,124.1310,2027857\r\n2023-01-03 11:45:00,124.1070,124.1450,123.6360,123.8950,3044469\r\n2023-01-03
+ 11:30:00,124.4950,124.5220,123.9740,124.1170,2546604\r\n2023-01-03 11:15:00,123.9780,124.6110,123.9050,124.4930,2773011\r\n2023-01-03
+ 11:00:00,124.7380,125.0190,123.8740,123.9790,4858972\r\n2023-01-03 10:45:00,124.5140,124.8750,124.3710,124.7420,3326033\r\n2023-01-03
+ 10:30:00,124.6040,124.9290,124.1920,124.4980,4825857\r\n2023-01-03 10:15:00,125.0610,125.2020,124.3710,124.6080,4607743\r\n2023-01-03
+ 10:00:00,126.0740,126.4390,124.9170,125.0590,4751302\r\n2023-01-03 09:45:00,128.9940,129.2500,126.0100,126.0710,6031150\r\n2023-01-03
+ 09:30:00,129.3610,130.0150,128.5520,129.0030,7092582\r\n"
headers:
Allow:
- GET, HEAD, OPTIONS
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- - 8088c0e88c380eb1-AMS
+ - 85ce38b1794b2db9-YVR
Connection:
- - close
+ - keep-alive
+ Content-Disposition:
+ - attachment; filename=intraday_15min_AAPL.csv
Content-Length:
- - '215'
+ - '33793'
Content-Type:
- - application/json
+ - application/x-download
Cross-Origin-Opener-Policy:
- same-origin
Date:
- - Mon, 18 Sep 2023 10:02:28 GMT
+ - Thu, 29 Feb 2024 04:39:11 GMT
+ Nel:
+ - '{"report_to":"heroku-nel","max_age":3600,"success_fraction":0.005,"failure_fraction":0.05,"response_headers":["Via"]}'
Referrer-Policy:
- same-origin
+ Report-To:
+ - '{"group":"heroku-nel","max_age":3600,"endpoints":[{"url":"https://nel.heroku.com/reports?ts=1709181545&sid=1b10b0ff-8a76-4548-befa-353fc6c6c045&s=981PZd8mTWGiCra0E4yBSk28yyW4n2S%2FVCrZT0YNQm8%3D"}]}'
+ Reporting-Endpoints:
+ - heroku-nel=https://nel.heroku.com/reports?ts=1709181545&sid=1b10b0ff-8a76-4548-befa-353fc6c6c045&s=981PZd8mTWGiCra0E4yBSk28yyW4n2S%2FVCrZT0YNQm8%3D
Server:
- cloudflare
Vary:
diff --git a/openbb_platform/providers/alpha_vantage/tests/test_alpha_vantage_fetchers.py b/openbb_platform/providers/alpha_vantage/tests/test_alpha_vantage_fetchers.py
index f3d7061c1ed..8cc9fb7ed66 100644
--- a/openbb_platform/providers/alpha_vantage/tests/test_alpha_vantage_fetchers.py
+++ b/openbb_platform/providers/alpha_vantage/tests/test_alpha_vantage_fetchers.py
@@ -21,13 +21,12 @@ def vcr_config():
@pytest.mark.record_http
-@pytest.mark.skip(reason="This is a premium endpoint.")
def test_av_equity_historical_fetcher(credentials=test_credentials):
params = {
"symbol": "AAPL",
"start_date": date(2023, 1, 1),
"end_date": date(2023, 1, 10),
- "interval": "1d",
+ "interval": "15m",
}
fetcher = AVEquityHistoricalFetcher()
diff --git a/openbb_platform/providers/cboe/openbb_cboe/__init__.py b/openbb_platform/providers/cboe/openbb_cboe/__init__.py
index a086ac03ee7..5f6db23c88d 100644
--- a/openbb_platform/providers/cboe/openbb_cboe/__init__.py
+++ b/openbb_platform/providers/cboe/openbb_cboe/__init__.py
@@ -28,6 +28,7 @@ cboe_provider = Provider(
"EquityHistorical": CboeEquityHistoricalFetcher,
"EquityQuote": CboeEquityQuoteFetcher,
"EquitySearch": CboeEquitySearchFetcher,
+ "EtfHistorical": CboeEquityHistoricalFetcher,
"IndexConstituents": CboeIndexConstituentsFetcher,
"FuturesCurve": CboeFuturesCurveFetcher,
"IndexHistorical": CboeIndexHistoricalFetcher,
diff --git a/openbb_platform/providers/fmp/openbb_fmp/__init__.py b/openbb_platform/providers/fmp/openbb_fmp/__init__.py
index 9c83df5a19e..61a9d331bd5 100644
--- a/openbb_platform/providers/fmp/openbb_fmp/__init__.py
+++ b/openbb_platform/providers/fmp/openbb_fmp/__init__.py
@@ -52,7 +52,6 @@ from openbb_fmp.models.insider_trading import FMPInsiderTradingFetcher
from openbb_fmp.models.institutional_ownership import FMPInstitutionalOwnershipFetcher
from openbb_fmp.models.key_executives import FMPKeyExecutivesFetcher
from openbb_fmp.models.key_metrics import FMPKeyMetricsFetcher
-from openbb_fmp.models.market_indices import FMPMarketIndicesFetcher
from openbb_fmp.models.market_snapshots import FMPMarketSnapshotsFetcher
from openbb_fmp.models.price_performance import FMPPricePerformanceFetcher
from openbb_fmp.models.price_target import FMPPriceTargetFetcher
@@ -120,7 +119,7 @@ fmp_provider = Provider(
"InstitutionalOwnership": FMPInstitutionalOwnershipFetcher,
"KeyExecutives": FMPKeyExecutivesFetcher,
"KeyMetrics": FMPKeyMetricsFetcher,
- "MarketIndices": FMPMarketIndicesFetcher,
+ "MarketIndices": FMPIndexHistoricalFetcher,
"MarketSnapshots": FMPMarketSnapshotsFetcher,
"PricePerformance": FMPPricePerformanceFetcher,
"PriceTarget": FMPPriceTargetFetcher,
@@ -131,5 +130,6 @@ fmp_provider = Provider(
"ShareStatistics": FMPShareStatisticsFetcher,
"TreasuryRates": FMPTreasuryRatesFetcher,
"WorldNews": FMPWorldNewsFetcher,
+ "EtfHistorical": FMPEquityHistoricalFetcher,
},
)
diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/crypto_historical.py b/openbb_platform/providers/fmp/openbb_fmp/models/crypto_historical.py
index 69018d01003..ab4c7074f6c 100644
--- a/openbb_platform/providers/fmp/openbb_fmp/models/crypto_historical.py
+++ b/openbb_platform/providers/fmp/openbb_fmp/models/crypto_historical.py
@@ -1,5 +1,8 @@
"""FMP Cryptos Historical Price Model."""
+# pylint: disable=unused-argument
+
+import warnings
from datetime import datetime
from typing import Any, Dict, List, Literal, Optional
@@ -9,15 +12,24 @@ from openbb_core.provider.standard_models.crypto_historical import (
CryptoHistoricalData,
CryptoHistoricalQueryParams,
)
-from openbb_core.provider.utils.descriptions import DATA_DESCRIPTIONS
-from openbb_core.provider.utils.helpers import get_querystring
-from openbb_fmp.utils.helpers import get_data_many
-from pydantic import Field, NonNegativeInt
+from openbb_core.provider.utils.descriptions import (
+ DATA_DESCRIPTIONS,
+ QUERY_DESCRIPTIONS,
+)
+from openbb_core.provider.utils.helpers import (
+ ClientResponse,
+ amake_requests,
+ get_querystring,
+)
+from openbb_fmp.utils.helpers import get_interval
+from pydantic import Field
+
+_warn = warnings.warn
class FMPCryptoHistoricalQueryParams(CryptoHistoricalQueryParams):
- # noqa: E501
- """FMP Crypto Historical Price Query.
+ """
+ FMP Crypto Historical Price Query.
Source:
https://site.financialmodelingprep.com/developer/docs/cryptocurrency-historical-data-api/#Historical-Daily-Prices
@@ -26,11 +38,8 @@ class FMPCryptoHistoricalQueryParams(CryptoHistoricalQueryParams):
__alias_dict__ = {"start_date": "from", "end_date": "to"}
__json_schema_extra__ = {"symbol": ["multiple_items_allowed"]}
- timeseries: Optional[NonNegativeInt] = Field(
- default=None, description="Number of days to look back."
- )
- interval: Literal["1min", "5min", "15min", "30min", "1hour", "4hour", "1day"] = (
- Field(default="1day", description="Data granularity.")
+ interval: Literal["1m", "5m", "15m", "30m", "1h", "4h", "1d"] = Field(
+ default="1d", description=QUERY_DESCRIPTIONS.get("interval", "")
)
@@ -40,23 +49,15 @@ class FMPCryptoHistoricalData(CryptoHistoricalData):
adj_close: Optional[float] = Field(
default=None, description=DATA_DESCRIPTIONS.get("adj_close", "")
)
- unadjusted_volume: Optional[float] = Field(
- default=None, description="Unadjusted volume of the symbol."
- )
change: Optional[float] = Field(
default=None,
- description="Change in the price of the symbol from the previous day.",
+ description="Change in the price from the previous close.",
)
change_percent: Optional[float] = Field(
- default=None, description="Change % in the price of the symbol."
- )
-
- label: Optional[str] = Field(
- default=None, description="Human readable format of the date."
- )
- change_over_time: Optional[float] = Field(
default=None,
- description="Change % in the price of the symbol over a period of time.",
+ description="Change in the price from the previous close, as a normalized percent.",
+ alias="changeOverTime",
+ json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100},
)
@@ -91,23 +92,56 @@ class FMPCryptoHistoricalFetcher(
"""Return the raw data from the FMP endpoint."""
api_key = credentials.get("fmp_api_key") if credentials else ""
+ interval = get_interval(query.interval)
+
base_url = "https://financialmodelingprep.com/api/v3"
query_str = get_querystring(query.model_dump(), ["symbol"])
- url_params = f"{query.symbol}?{query_str}&apikey={api_key}"
- url = f"{base_url}/historical-chart/{query.interval}/{url_params}"
+ def get_url_params(symbol: str) -> str:
+ url_params = f"{symbol}?{query_str}&apikey={api_key}"
+ url = f"{base_url}/historical-chart/{interval}/{url_params}"
+ if interval == "1day":
+ url = f"{base_url}/historical-price-full/crypto/{url_params}"
+ return url
- if query.interval == "1day":
- url = f"{base_url}/historical-price-full/crypto/{url_params}"
+ # if there are more than 20 symbols, we need to increase the timeout
+ if len(query.symbol.split(",")) > 20:
+ kwargs.update({"preferences": {"request_timeout": 30}})
- return await get_data_many(url, "historical", **kwargs)
+ async def callback(response: ClientResponse, _: Any) -> List[Dict]:
+ data = await response.json()
+ symbol = response.url.parts[-1]
+ results = []
+ if not data:
+ _warn(f"No data found the the symbol: {symbol}")
+ return results
+
+ if isinstance(data, dict):
+ results = data.get("historical", [])
+
+ if "," in query.symbol:
+ for d in results:
+ d["symbol"] = symbol
+ return results
+
+ urls = [get_url_params(symbol) for symbol in query.symbol.split(",")]
+
+ return await amake_requests(urls, callback, **kwargs)
@staticmethod
def transform_data(
query: FMPCryptoHistoricalQueryParams, data: List[Dict], **kwargs: Any
) -> List[FMPCryptoHistoricalData]:
"""Return the transformed data."""
- return [
- FMPCryptoHistoricalData.model_validate(d)
- for d in sorted(data, key=lambda x: x["date"], reverse=False)
- ]
+
+ # Get rid of duplicate fields.
+ to_pop = ["label", "changePercent", "unadjustedVolume"]
+ results: List[FMPCryptoHistoricalData] = []
+
+ for d in sorted(data, key=lambda x: x["date"], reverse=False):
+ _ = [d.pop(pop) for pop in to_pop if pop in d]
+ if d.get("unadjusted_volume") == d.get("volume"):
+ _ = d.pop("unadjusted_volume")
+ results.append(FMPCryptoHistoricalData.model_validate(d))
+
+ return results
diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/currency_historical.py b/openbb_platform/providers/fmp/openbb_fmp/models/currency_historical.py
index 11b4aa780ed..3c9a9668f82 100644
--- a/openbb_platform/providers/fmp/openbb_fmp/models/currency_historical.py
+++ b/openbb_platform/providers/fmp/openbb_fmp/models/currency_historical.py
@@ -1,5 +1,8 @@
"""FMP Currency Historical Price Model."""
+# pylint: disable=unused-argument
+
+import warnings
from datetime import datetime
from typing import Any, Dict, List, Literal, Optional
@@ -9,10 +12,20 @@ from openbb_core.provider.standard_models.currency_historical import (
CurrencyHistoricalData,
CurrencyHistoricalQueryParams,
)
-from openbb_core.provider.utils.descriptions import DATA_DESCRIPTIONS
-from openbb_fmp.utils.helpers import get_data_many, get_querystring
+from openbb_core.provider.utils.descriptions import (
+ DATA_DESCRIPTIONS,
+ QUERY_DESCRIPTIONS,
+)
+from openbb_core.provider.utils.helpers import (
+ ClientResponse,
+ amake_requests,
+ get_querystring,
+)
+from openbb_fmp.utils.helpers import get_interval
from pydantic import Field
+_warn = warnings.warn
+
class FMPCurrencyHistoricalQueryParams(CurrencyHistoricalQueryParams):
"""FMP Currency Historical Price Query.
@@ -21,9 +34,10 @@ class FMPCurrencyHistoricalQueryParams(CurrencyHistoricalQueryParams):
"""
__alias_dict__ = {"start_date": "from", "end_date": "to"}
+ __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]}
- interval: Literal["1min", "5min", "15min", "30min", "1hour", "4hour", "1day"] = (
- Field(default="1day", description="Data granularity.")
+ interval: Literal["1m", "5m", "15m", "30m", "1h", "4h", "1d"] = Field(
+ default="1d", description=QUERY_DESCRIPTIONS.get("interval", "")
)
@@ -33,22 +47,15 @@ class FMPCurrencyHistoricalData(CurrencyHistoricalData):
adj_close: Optional[float] = Field(
default=None, description=DATA_DESCRIPTIONS.get("adj_close", "")
)
- unadjusted_volume: Optional[float] = Field(
- default=None, description="Unadjusted volume of the symbol."
- )
change: Optional[float] = Field(
default=None,
- description="Change in the price of the symbol from the previous day.",
+ description="Change in the price from the previous close.",
)
change_percent: Optional[float] = Field(
- default=None, description="Change % in the price of the symbol."
- )
- label: Optional[str] = Field(
- default=None, description="Human readable format of the date."
- )
- change_over_time: Optional[float] = Field(
default=None,
- description="Change % in the price of the symbol over a period of time.",
+ description="Change in the price from the previous close, as a normalized percent.",
+ alias="changeOverTime",
+ json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100},
)
@@ -83,31 +90,56 @@ class FMPCurrencyHistoricalFetcher(
"""Return the raw data from the FMP endpoint."""
api_key = credentials.get("fmp_api_key") if credentials else ""
+ interval = get_interval(query.interval)
+
base_url = "https://financialmodelingprep.com/api/v3"
query_str = get_querystring(query.model_dump(), ["symbol"])
- url_params = f"{query.symbol}?{query_str}&apikey={api_key}"
- url = f"{base_url}/historical-chart/{query.interval}/{url_params}"
+ def get_url_params(symbol: str) -> str:
+ url_params = f"{symbol}?{query_str}&apikey={api_key}"
+ url = f"{base_url}/historical-chart/{interval}/{url_params}"
+ if interval == "1day":
+ url = f"{base_url}/historical-price-full/forex/{url_params}"
+ return url
- if query.interval == "1day":
- url = f"{base_url}/historical-price-full/forex/{url_params}"
+ # if there are more than 20 symbols, we need to increase the timeout
+ if len(query.symbol.split(",")) > 20:
+ kwargs.update({"preferences": {"request_timeout": 30}})
- return await get_data_many(url, "historical", **kwargs)
+ async def callback(response: ClientResponse, _: Any) -> List[Dict]:
+ data = await response.json()
+ symbol = response.url.parts[-1]
+ results = []
+ if not data:
+ _warn(f"No data found the the symbol: {symbol}")
+ return results
+
+ if isinstance(data, dict):
+ results = data.get("historical", [])
+
+ if "," in query.symbol:
+ for d in results:
+ d["symbol"] = symbol
+ return results
+
+ urls = [get_url_params(symbol) for symbol in query.symbol.split(",")]
+
+ return await amake_requests(urls, callback, **kwargs)
@staticmethod
def transform_data(
query: FMPCurrencyHistoricalQueryParams, data: List[Dict], **kwargs: Any
) -> List[FMPCurrencyHistoricalData]:
"""Return the transformed data."""
- # pylint: disable=unused-argument
- data = [
- d
- for d in data
- if d.get("vwap") != 0
- and d.get("change") != 0
- and d.get("changeOverTime") != 0
- ]
- return [
- FMPCurrencyHistoricalData.model_validate(d)
- for d in sorted(data, key=lambda x: x["date"], reverse=False)
- ]
+
+ # Get rid of duplicate fields.
+ to_pop = ["label", "changePercent", "unadjustedVolume"]
+ results: List[FMPCurrencyHistoricalData] = []
+
+ for d in sorted(data, key=lambda x: x["date"], reverse=False):
+ _ = [d.pop(pop) for pop in to_pop if pop in d]
+ if d.get("unadjusted_volume") == d.get("volume"):
+ _ = d.pop("unadjusted_volume")
+ results.append(FMPCurrencyHistoricalData.model_validate(d))
+
+ return results
diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/equity_historical.py b/openbb_platform/providers/fmp/openbb_fmp/models/equity_historical.py
index 86cb7635e83..79651c71c2f 100644
--- a/openbb_platform/providers/fmp/openbb_fmp/models/equity_historical.py
+++ b/openbb_platform/providers/fmp/openbb_fmp/models/equity_historical.py
@@ -1,5 +1,8 @@
"""FMP Equity Historical Price Model."""
+# pylint: disable=unused-argument
+
+import warnings
from datetime import datetime
from typing import Any, Dict, List, Literal, Optional
@@ -9,14 +12,19 @@ from openbb_core.provider.standard_models.equity_historical import (
EquityHistoricalData,
EquityHistoricalQueryParams,
)
-from openbb_core.provider.utils.descriptions import DATA_DESCRIPTIONS
+from openbb_core.provider.utils.descriptions import (
+ DATA_DESCRIPTIONS,
+ QUERY_DESCRIPTIONS,
+)
from openbb_core.provider.utils.helpers import (
ClientResponse,
amake_requests,
get_querystring,
)
from openbb_fmp.utils.helpers import get_interval
-from pydantic import Field, NonNegativeInt
+from pydantic import Field
+
+_warn = warnings.warn
class FMPEquityHistoricalQueryParams(EquityHistoricalQueryParams):
@@ -28,22 +36,14 @@ class FMPEquityHistoricalQueryParams(EquityHistoricalQueryParams):
__alias_dict__ = {"start_date": "from", "end_date": "to"}
__json_schema_extra__ = {"symbol": ["multiple_items_allowed"]}
- limit: Optional[NonNegativeInt] = Field(
- default=None,
- description="Number of days to look back (Only for interval 1d).",
- alias="timeseries",
- )
interval: Literal["1m", "5m", "15m", "30m", "1h", "4h", "1d"] = Field(
- default="1d", description="Time granularity to fetch data for."
+ default="1d", description=QUERY_DESCRIPTIONS.get("interval", "")
)
class FMPEquityHistoricalData(EquityHistoricalData):
"""FMP Equity Historical Price Data."""
- label: Optional[str] = Field(
- default=None, description="Human readable format of the date."
- )
adj_close: Optional[float] = Field(
default=None, description=DATA_DESCRIPTIONS.get("adj_close", "")
)
@@ -52,14 +52,13 @@ class FMPEquityHistoricalData(EquityHistoricalData):
)
change: Optional[float] = Field(
default=None,
- description="Change in the price of the symbol from the previous day.",
+ description="Change in the price from the previous close.",
)
change_percent: Optional[float] = Field(
- default=None, description="Change % in the price of the symbol."
- )
- change_over_time: Optional[float] = Field(
default=None,
- description="Change % in the price of the symbol over a period of time.",
+ description="Change in the price from the previous close, as a normalized percent.",
+ alias="changeOverTime",
+ json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100},
)
@@ -111,17 +110,20 @@ class FMPEquityHistoricalFetcher(
kwargs.update({"preferences": {"request_timeout": 30}})
async def callback(response: ClientResponse, _: Any) -> List[Dict]:
- data: dict = await response.json()
+ data = await response.json()
symbol = response.url.parts[-1]
+ results = []
+ if not data:
+ _warn(f"No data found the the symbol: {symbol}")
+ return results
if isinstance(data, dict):
- data = data.get("historical", [])
+ results = data.get("historical", [])
if "," in query.symbol:
- for d in data:
+ for d in results:
d["symbol"] = symbol
-
- return data
+ return results
urls = [get_url_params(symbol) for symbol in query.symbol.split(",")]
@@ -132,7 +134,15 @@ class FMPEquityHistoricalFetcher(
query: FMPEquityHistoricalQueryParams, data: List[Dict], **kwargs: Any
) -> List[FMPEquityHistoricalData]:
"""Return the transformed data."""
- return [
- FMPEquityHistoricalData.model_validate(d)
- for d in sorted(data, key=lambda x: x["date"], reverse=False)
- ]
+
+ # Get rid of duplicate fields.
+ to_pop = ["label", "changePercent"]
+ results: List[FMPEquityHistoricalData] = []
+
+ for d in sorted(data, key=lambda x: x["date"], reverse=False):
+ _ = [d.pop(pop) for pop in to_pop if pop in d]
+ if d.get("unadjusted_volume") == d.get("volume"):
+ _ = d.pop("unadjusted_volume")
+ results.append(FMPEquityHistoricalData.model_validate(d))
+
+ return results
diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/etf_search.py b/openbb_platform/providers/fmp/openbb_fmp/models/etf_search.py
index 38ba113ff0e..72345bd9977 100644
--- a/openbb_platform/providers/fmp/openbb_fmp/models/etf_search.py
+++ b/openbb_platform/providers/fmp/openbb_fmp/models/etf_search.py
@@ -128,7 +128,7 @@ class FMPEtfSearchFetcher(
| etfs["industry"].str.contains(query.query, case=False)
| etfs["country"].str.contains(query.query, case=False)
]
- for col in etfs:
- if etfs[col].dtype in ("int", "float"):
- etfs[col] = etfs[col].fillna(0)
+ etfs = (
+ etfs.fillna("N/A").replace("N/A", None).replace("", None).replace(0, None)
+ )
return [FMPEtfSearchData.model_validate(d) for d in etfs.to_dict("records")]
diff --git a/openbb_platform/providers/fmp/openbb_fmp/models/index_historical.py b/openbb_platform/providers/fmp/openbb_fmp/models/index_historical.py
index 087f6fa15f7..13d5582a3f9 100644
--- a/openbb_platform/providers/fmp/openbb_fmp/models/index_historical.py
+++ b/openbb_platform/providers/fmp/openbb_fmp/models/index_historical.py
@@ -1,5 +1,8 @@
"""FMP Index Historical Model."""
+# pylint: disable=unused-argument
+
+import warnings
from datetime import datetime
from typing import Any, Dict, List, Literal, Optional
@@ -9,10 +12,20 @@ from openbb_core.provider.standard_models.index_historical import (
IndexHistoricalData,
IndexHistoricalQueryParams,
)
-from openbb_core.provider.utils.descriptions import DATA_DESCRIPTIONS
-from openbb_core.provider.utils.helpers import get_querystring
-from openbb_fmp.utils.helpers import get_data_many
-from pydantic import Field, NonNegativeInt, field_validator
+from openbb_core.provider.utils.descriptions import (
+ DATA_DESCRIPTIONS,
+ QUERY_DESCRIPTIONS,
+)
+from openbb_core.provider.utils.errors import EmptyDataError
+from openbb_core.provider.utils.helpers import (
+ ClientResponse,
+ amake_requests,
+ get_querystring,
+)
+from openbb_fmp.utils.helpers import get_interval
+from pydantic import Field
+
+_warn = warnings.warn
class FMPIndexHistoricalQueryParams(IndexHistoricalQueryParams):
@@ -22,46 +35,28 @@ class FMPIndexHistoricalQueryParams(IndexHistoricalQueryParams):
"""
__alias_dict__ = {"start_date": "from", "end_date": "to"}
+ __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]}
- timeseries: Optional[NonNegativeInt] = Field(
- default=None, description="Number of days to look back."
+ interval: Literal["1m", "5m", "15m", "30m", "1h", "4h", "1d"] = Field(
+ default="1d", description=QUERY_DESCRIPTIONS.get("interval", "")
)
- interval: Literal["1min", "5min", "15min", "30min", "1hour", "4hour", "1day"] = (
- Field(default="1day", description="Data granularity.")
- )
-
- @field_validator("interval", mode="before", check_fields=True)
- @classmethod
- def map_interval(cls, v):
- """Map the interval from standard to the FMP format."""
- return "1day" if v == "1d" else v
class FMPIndexHistoricalData(IndexHistoricalData):
"""FMP Index Historical Data."""
- adj_close: Optional[float] = Field(
- description=DATA_DESCRIPTIONS.get("adj_close", ""),
- default=None,
- )
- unadjusted_volume: Optional[float] = Field(
- description="Unadjusted volume of the symbol.",
- default=None,
+ vwap: Optional[float] = Field(
+ default=None, description=DATA_DESCRIPTIONS.get("vwap", "")
)
change: Optional[float] = Field(
- description="Change in the price of the symbol from the previous day.",
default=None,
+ description="Change in the price from the previous close.",
)
change_percent: Optional[float] = Field(
- description="Change % in the price of the symbol.",
- default=None,
- )
- label: Optional[str] = Field(
- description="Human readable format of the date.", default=None
- )
- change_over_time: Optional[float] = Field(
- description="Change % in the price of the symbol over a period of time.",
default=None,
+ description="Change in the price from the previous close, as a normalized percent.",
+ alias="changeOverTime",
+ json_schema_extra={"x-unit_measurement": "percent", "x-frontend_multiply": 100},
)
@@ -96,15 +91,43 @@ class FMPIndexHistoricalFetcher(
"""Return the raw data from the FMP endpoint."""
api_key = credentials.get("fmp_api_key") if credentials else ""
+ interval = get_interval(query.interval)
+
base_url = "https://financialmodelingprep.com/api/v3"
- query_str = get_querystring(query.model_dump(), ["symbol", "interval", "sort"])
+ query_str = get_querystring(query.model_dump(), ["symbol"])
- url_params = f"{query.symbol}?{query_str}&apikey={api_key}"
- url = f"{base_url}/historical-chart/{query.interval}/{url_params}"
+ def get_url_params(symbol: str) -> str:
+ url_params = f"{symbol}?{query_str}&apikey={api_key}"
+ url = f"{base_url}/historical-chart/{interval}/{url_params}"
+ if interval == "1day":
+ url = f"{base_url}/historical-price-full/{url_params}"
+ return url
- return await get_data_many(url, "historical", **kwargs)
+ # if there are more than 20 symbols, we need to increase the timeout
+ if len(query.symbol.split(",")) > 20:
+ kwargs.update({"preferences": {"request_timeout": 30}})
+
+ async def callback(response: ClientResponse, _: Any) -> List[Dict]:
+ data = await response.json()
+ symbol = response.url.parts[-1]
+ results = []
+ if not data:
+ _warn(f"No data found the the symbol: {symbol}")
+ return results
+
+ if isinstance(data, dict):
+ results = data.get("historical", [])
+ if isinstance(data, list):
+ results = data
+
+ if "," in query.symbol:
+ for d in results:
+ d["symbol"] = symbol
+ return results
+
+ urls = [get_url_params(symbol) for symbol in query.symbol.split(",")]
+ return await amake_requests(urls, callback, **kwargs)
- # pylint: disable=unused-argument
@staticmethod
def transform_data(
query: FMPIndexHistoricalQueryParams,
@@ -112,7 +135,17 @@ class FMPIndexHistoricalFetcher(
**kwargs: Any,
) -> List[FMPIndexHistoricalData]:
"""Return the transformed data."""
- return [
- FMPIndexHistoricalData.model_validate(d)
- for d in sorted(data, key=lambda x: x["date"], reverse=False)
- ]
+ if not data:
+ raise EmptyDataError()
+
+ # Get rid of duplicate fields.
+ to_pop = ["label", "changePercent", "unadjustedVolume", "adjClose"]
+ results: List[FMPIndexHistoricalData] = []
+
+ for d in sorted(data, key=lambda x: x["date"], reverse=False):
+ _ = [d.pop(pop) for pop in to_pop if pop in d]
+ if d.get("volume") == 0:
+ _ = d.pop("volume")
+ results.append(FMPIndexHistoricalData.model_validate(d))
+
+ return results
diff --git a/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_crypto_historical_fetcher.yaml b/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_crypto_historical_fetcher.yaml
index d69857c913e..7d0757a1590 100644
--- a/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_crypto_historical_fetcher.yaml
+++ b/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_crypto_historical_fetcher.yaml
@@ -3,38 +3,38 @@ interactions:
body: null
headers:
Accept:
- - '*/*'
+ - application/json
Accept-Encoding:
- - gzip, deflate, br
+ - gzip, deflate
Connection:
- keep-alive
method: GET
- uri: https://financialmodelingprep.com/api/v3/historical-price-full/crypto/BTCUSD?apikey=MOCK_API_KEY&from=2023-01-01&interval=1day&to=2023-01-10
+ uri: https://financialmodelingprep.com/api/v3/historical-price-full/crypto/BTCUSD?apikey=MOCK_API_KEY&from=2023-01-01&interval=1d&to=2023-01-10
response:
body:
string: !!binary |
- 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
+ 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
headers:
Access-Control-Allow-Credentials:
- 'true'
Access-Control-Allow-Headers:
- X-Requested-With, content-type, auth-token, Authorization, stripe-signature,
- APPS
+ APPS, publicauthkey, privateauthkey
Access-Control-Allow-Methods:
- GET, POST, OPTIONS
Access-Control-Allow-Origin:
@@ -48,9 +48,9 @@ interactions:
Content-Type:
- application/json; charset=utf-8
Date:
- - Mon, 16 Oct 2023 12:21:47 GMT
- ETag:
- - W/"eec-rA4PG5qrZArsSp6t/v+2L1hjzQk"
+ - Thu, 29 Feb 2024 04:42:50 GMT
+ Etag:
+ - W/"ee3-iGBRI0WlQUT/ED3Q3GcS73lQbMw"
Server:
- nginx/1.18.0 (Ubuntu)
Transfer-Encoding:
diff --git a/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_currency_historical_fetcher.yaml b/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_currency_historical_fetcher.yaml
index df015079b00..756dd1d3460 100644
--- a/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_currency_historical_fetcher.yaml
+++ b/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_currency_historical_fetcher.yaml
@@ -3,13 +3,13 @@ interactions:
body: null
headers:
Accept:
- - '*/*'
+ - application/json
Accept-Encoding:
- - gzip, deflate, br
+ - gzip, deflate
Connection:
- keep-alive
method: GET
- uri: https://financialmodelingprep.com/api/v3/historical-price-full/forex/EURUSD?apikey=MOCK_API_KEY&from=2023-01-01&interval=1day&to=2023-01-10
+ uri: https://financialmodelingprep.com/api/v3/historical-price-full/forex/EURUSD?apikey=MOCK_API_KEY&from=2023-01-01&interval=1d&to=2023-01-10
response:
body:
string: !!binary |
@@ -30,7 +30,7 @@ interactions:
- 'true'
Access-Control-Allow-Headers:
- X-Requested-With, content-type, auth-token, Authorization, stripe-signature,
- APPS
+ APPS, publicauthkey, privateauthkey
Access-Control-Allow-Methods:
- GET, POST, OPTIONS
Access-Control-Allow-Origin:
@@ -44,8 +44,8 @@ interactions:
Content-Type:
- application/json; charset=utf-8
Date:
- - Mon, 16 Oct 2023 12:21:48 GMT
- ETag:
+ - Thu, 29 Feb 2024 04:42:50 GMT
+ Etag:
- W/"cd0-Rv/ywzhqPUdb7KJ/ZDpUXIC8K1A"
Server:
- nginx/1.18.0 (Ubuntu)
diff --git a/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_index_historical_fetcher.yaml b/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_index_historical_fetcher.yaml
index e174458b9f3..92f691e9e0a 100644
--- a/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_index_historical_fetcher.yaml
+++ b/openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_index_historical_fetcher.yaml
@@ -9,22 +9,28 @@ interactions:
Connection:
- keep-alive
method: GET
- uri: https://financialmodelingprep.com/api/v3/historical-chart/1day/%5EDJI?apikey=MOCK_API_KEY&from=2023-01-01&limit=10000&to=2023-01-10
+ uri: https://financialmodelingprep.com/api/v3/historical-price-full/%5EDJI?apikey=MOCK_API_KEY&from=2023-01-01&interval=1d&to=2023-01-10
response:
body:
string: !!binary |
- H4sIAAAAAAAAA43SzU6DQBAH8HufgnBuJ/O9O30V48FoY02qmPh1ML67CyWFgtQS4MB/N/ubYW5W
- VfVdnqqqH+7ed/W2qhlZNkgbwgpx2931+riked29lCUiRg7K4Tn3yaH56gJlgoyYMvXB/ulx3yWJ
- HUwCXfrk/tC87Y4RKhCSnaLP5vDx3GbsmR3LVb7/rJetGMtWd4X2XLapNSdwb8+dWkOsgEKSzaxG
- ZZNmlTy1Cqes11h92YpmIOP29VaOSOdFDH0lPK9isLqUaFzGYHVMV1lt2UpBkCinSVs5E0P3nlGn
- O05SjiJtq+a5VFLwNVK9IPXyO/WPCUAR0IzqMaUqxvlIDl1lD0geJjSzpuia+q9VLlg1Q47RfJ3a
- agiWUEimVilzbDQCDVYSh3ZCQmdWs9L03rq6/QXH+CSaCAQAAA==
+ H4sIAAAAAAAAA42VTW/bMAyG7/0VRs6JQJH63HW7rJftMOwybICbGE2GNCny0aIo+t9HKYtkx4od
+ H3zwS8kSH77k+11VTfZvTw/b9eRTNfnz5f7rZBq+LVf7w3a3mtfh+y/+UlXv8c3aoj40IRoBaQZy
+ JiGuidr2udmwRqSlEQq9cS5py9XjMmoWjdDkwVDS1tvXKCmUwgFYJ5M0X2/3zWkdKCFB6ta6evH3
+ 85D+sl0fn4KKxqEBfpJ03PDi4/7QLH5eD5ov681jkKSzwljZus5J+t7s5s3mwBEgtPZe5V+/1s/x
+ WEZaofK6df3QxGzf15tjvXurJEwrpMnFxt9emt2PVTwWCIC4d4z4mA7jAF/AYYwSIeOo+zg8aU6b
+ J5u1hCPc2oSUFnBovpdRTlG+WwdHQU84CK1TYzj6QQnHTCojLFeLv8pjBkKRznrmwUtb9dXjAX6E
+ xywACXvfxsMUeDBPQd06z/aQcJn0/zzQe3uJMfMwxOu6HDs8CnrmYcCO8+gFJR7ahvs4fR2HZFx9
+ FopZIA6wMOPekPZGY+gCCOn5YGzugi/60hmDkyjiu4ABPac5gMUyhpKeMZD1OIqhF5RtgUay57hA
+ hmxhnUPbY4HeOgGZUZ+FvsUXcfPbeKgSD8PNSJUblQJ/2d/PjQqIuMeCMq0CTIWPxgtrvKZsto4x
+ CnomYn0s+WEivaA8N3gmGXReXkjtuUFSt+ZD8gYSz41W8fV4qHFvQNz7NhxUwqGccL7TwxMO4uGg
+ ZSdtySCap6Hln2dSGYckI0KTa83KDo6CnnHwHKRRHL2g1txAodGSupA6/gCy1svW2RMSiUq4oXZF
+ t1jkvP8JC79/3338A8bc8seKCQAA
headers:
Access-Control-Allow-Credentials:
- 'true'
Access-Control-Allow-Headers:
- X-Requested-With, content-type, auth-token, Authorization, stripe-signature,
- APPS
+ APPS, publicauthkey, privateauthkey
Access-Control-Allow-Methods:
- GET, POST, OPTIONS
Access-Control-Allow-Origin:
@@ -38,9 +44,9 @@ interactions:
Content-Type:
- application/json; charset=utf-8
Date:
- - Mon, 05 Feb 2024 12:24:48 GMT
+ - Thu, 29 Feb 2024 04:42:50 GMT
Etag:
- - W/"408-glTYZ6Uxgu2pCgKN72yd6UNBr5A"
+ - W/"98a-GaBjuPAGbArTPT5nkIcCt0/rPEw"
Server:
- nginx/1.18.0 (Ubuntu)
Transfer-Encoding:
diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/__init__.py b/openbb_platform/providers/intrinio/openbb_intrinio/__init__.py
index 2e474d74619..33f4fcca881 100644
--- a/openbb_platform/providers/intrinio/openbb_intrinio/__init__.py
+++ b/openbb_platform/providers/intrinio/openbb_intrinio/__init__.py
@@ -28,7 +28,6 @@ from openbb_intrinio.models.insider_trading import IntrinioInsiderTradingFetcher
# )
from openbb_intrinio.models.key_metrics import IntrinioKeyMetricsFetcher
from openbb_intrinio.models.latest_attributes import IntrinioLatestAttributesFetcher
-from openbb_intrinio.models.market_indices import IntrinioMarketIndicesFetcher
from openbb_intrinio.models.options_chains import IntrinioOptionsChainsFetcher
from openbb_intrinio.models.options_unusual import IntrinioOptionsUnusualFetcher
from openbb_intrinio.models.reported_financials import IntrinioReportedFinancialsFetcher
@@ -55,6 +54,7 @@ intrinio_provider = Provider(
"EquityInfo": IntrinioEquityInfoFetcher,
"EquityQuote": IntrinioEquityQuoteFetcher,
"EquitySearch": IntrinioEquitySearchFetcher,
+ "EtfHistorical": IntrinioEquityHistoricalFetcher,
"FinancialRatios": IntrinioFinancialRatiosFetcher,
"FredSeries": IntrinioFredSeriesFetcher,
"HistoricalAttributes": IntrinioHistoricalAttributesFetcher,
@@ -65,7 +65,7 @@ intrinio_provider = Provider(
# "InstitutionalOwnership": IntrinioInstitutionalOwnershipFetcher, # Disabled due to unreliable Intrinio endpoint
"KeyMetrics": IntrinioKeyMetricsFetcher,
"LatestAttributes": IntrinioLatestAttributesFetcher,
- "MarketIndices": IntrinioMarketIndicesFetcher,
+ "MarketIndices": IntrinioIndexHistoricalFetcher,
"OptionsChains": IntrinioOptionsChainsFetcher,
"OptionsUnusual": IntrinioOptionsUnusualFetcher,
"ReportedFinancials": IntrinioReportedFinancialsFetcher,
diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_historical.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_historical.py
index d6be9d79f6e..ff5f0893258 100644
--- a/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_historical.py
+++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/equity_historical.py
@@ -11,7 +11,10 @@ from openbb_core.provider.standard_models.equity_historical import (
EquityHistoricalData,
EquityHistoricalQueryParams,
)
-from openbb_core.provider.utils.descriptions import QUERY_DESCRIPTIONS
+from openbb_core.provider.utils.descriptions import (
+ DATA_DESCRIPTIONS,
+ QUERY_DESCRIPTIONS,
+)
from openbb_core.provider.utils.helpers import (
ClientResponse,
ClientSession,
@@ -41,8 +44,8 @@ class IntrinioEquityHistoricalQueryParams(EquityHistoricalQueryParams):
default=None,
description="Return intervals stopping at the specified time on the `end_date` formatted as 'HH:MM:SS'.",
)
- timezone: str = Field(
- default="UTC",
+ timezone: Optional[str] = Field(
+ default="America/New_York",
description="Timezone of the data, in the IANA format (Continent/City).",
)
source: Literal["realtime", "delayed", "nasdaq_basic"] = Field(
@@ -81,6 +84,61 @@ class IntrinioEquityHistoricalData(EquityHistoricalData):
__alias_dict__ = {"date": "time"}
+ average: Optional[float] = Field(
+ default=None,
+ description="Average trade price of an individual equity during the interval.",
+ )
+ change: Optional[float] = Field(
+ default=None,
+ description="Change in the price of the symbol from the previous day.",
+ )
+ change_percent: Optional[float] = Field(
+ default=None,
+ description="Percent change in the price of the symbol from the previous day.",
+ alias="percent_change",
+ json_schema_extra={"unit_measurement": "percent", "frontend_multiply": 100},
+ )
+ adj_open: Optional[float] = Field(
+ default=None,
+ description="The adjusted open price.",
+ )
+ adj_high: Optional[float] = Field(
+ default=None,
+ description="The adjusted high price.",
+ )
+ adj_low: Optional[float] = Field(
+ default=None,
+ description="The adjusted low price.",
+ )
+ adj_close: Optional[float] = Field(
+ default=None,
+ description=DATA_DESCRIPTIONS.get("adj_close", ""),
+ )
+ adj_volume: Optional[float] = Field(
+ default=None,
+ description="The adjusted volume.",
+ )
+ fifty_two_week_high: Optional[float] = Field(
+ default=None,
+ description="52 week high price for the symbol.",
+ )
+ fifty_two_week_low: Optional[float] = Field(
+ default=None,
+ description="52 week low price for the symbol.",
+ )
+ factor: Optional[float] = Field(
+ default=None,
+ description="factor by which to multiply equity prices before this "
+ "date, in order to calculate historically-adjusted equity prices.",
+ )
+ split_ratio: Optional[float] = Field(
+ default=None,
+ description="Ratio of the equity split, if a split occurred.",
+ )
+ dividend: Optional[float] = Field(
+ default=None,
+ description="Dividend amount, if a dividend was paid.",
+ )
close_time: Optional[datetime] = Field(
default=None,
description="The timestamp that represents the end of the interval span.",
@@ -90,14 +148,6 @@ class IntrinioEquityHistoricalData(EquityHistoricalData):
description="The data time frequency.",
alias="frequency",
)
- average: Optional[float] = Field(
- default=None,
- description="Average trade price of an individual equity during the interval.",
- )
- change: Optional[float] = Field(
- default=None,
- description="Change in the price of the symbol from the previous day.",
- )
intra_period: Optional[bool] = Field(
default=None,
description="If true, the equity price represents an unfinished period "
@@ -106,51 +156,6 @@ class IntrinioEquityHistoricalData(EquityHistoricalData):
"for the period",
alias="intraperiod",
)
- adj_open: Optional[float] = Field(
- default=None,
- description="Adjusted open price during the period.",
- )
- adj_high: Optional[float] = Field(
- default=None,
- description="Adjusted high price during the period.",
- )
- adj_low: Optional[float] = Field(
- default=None,
- description="Adjusted low price during the period.",
- )
- adj_close: Optional[float] = Field(
- default=None,
- description="Adjusted closing price during the period.",
- )
- adj_volume: Optional[float] = Field(
- default=None,
- description="Adjusted volume during the period.",
- )
- factor: Optional[float] = Field(
- default=None,
- description="factor by which to multiply equity prices before this "
- "date, in order to calculate historically-adjusted equity prices.",
- )
- split_ratio: Optional[float] = Field(
- default=None,
- description="Ratio of the equity split, if a equity split occurred.",
- )
- dividend: Optional[float] = Field(
- default=None,
- description="Dividend amount, if a dividend was paid.",
- )
- percent_change: Optional[float] = Field(
- default=None,
- description="Percent change in the price of the symbol from the previous day.",
- )
- fifty_two_week_high: Optional[float] = Field(
- default=None,
- description="52 week high price for the symbol.",
- )
- fifty_two_week_low: Optional[float] = Field(
- default=None,
- description="52 week low price for the symbol.",
- )
class IntrinioEquityHistoricalFetcher(
@@ -230,10 +235,12 @@ class IntrinioEquityHistoricalFetcher(
**kwargs: Any,
) -> List[IntrinioEquityHistoricalData]:
"""Return the transformed data."""
- try:
- sorted_data = sorted(
- data, key=lambda x: x.get("date") or x.get("time"), reverse=False
- )
- except Exception:
- sorted_data = data
- return [IntrinioEquityHistoricalData.model_validate(d) for d in sorted_data]
+ date_col = (
+ "time"
+ if query.interval in ["1m", "5m", "10m", "15m", "30m", "60m", "1h"]
+ else "date"
+ )
+ return [
+ IntrinioEquityHistoricalData.model_validate(d)
+ for d in sorted(data, key=lambda x: x[date_col], reverse=False)
+ ]
diff --git a/openbb_platform/providers/intrinio/openbb_intrinio/models/index_historical.py b/openbb_platform/providers/intrinio/openbb_intrinio/models/index_historical.py
index 16a49d890c0..fc32a1aee41 100644
--- a/openbb_platform/providers/intrinio/openbb_intrinio/models/index_historical.py
+++ b/openbb_platform/providers/intrinio/openbb_intrinio/models/index_historical.py
@@ -9,8 +9,10 @@ from openbb_core.provider.standard_models.index_historical import (
IndexHistoricalData,
IndexHistoricalQueryParams,
)
+from openbb_core.provider.utils.descriptions import QUERY_DESCRIPTIONS
from openbb_core.provider.utils.errors import EmptyDataError
from openbb_core.provider.utils.helpers import amake_requests, get_querystring
+from pydantic import Field
class IntrinioIndexHistoricalQueryParams(IndexHistoricalQueryParams):
@@ -23,6 +25,11 @@ class IntrinioIndexHistoricalQueryParams(IndexHistoricalQueryParams):
__alias_dict__ = {"limit": "page_size", "sort": "sort_order"}
__json_schema_extra__ = {"symbol": ["multiple_items_allowed"]}
+ limit: Optional[int] = Field(
+ default=10000,
+ description=QUERY_DESCRIPTIONS.get("limit", ""),
+ )
+
class IntrinioIndexHistoricalData(IndexHistoricalData):
"""Intrinio Index Historical Data."""
diff --git a/openbb_platform/providers/intrinio/tests/record/http/test_intrinio_fetchers/test_intrinio_equity_historical_fetcher.yaml b/openbb_platform/providers/intrinio/tests/record/http/test_intrinio_fetchers/test_intrinio_equity_historical_fetcher.yaml
index 91fa29c635b..f70ad2d99d6 100644
--- a/openbb_platform/providers/intrinio/tests/record/http/test_intrinio_fetchers/test_intrinio_equity_historical_fetcher.yaml
+++ b/openbb_platform/providers/intrinio/tests/record/http/test_intrinio_fetchers/test_intrinio_equity_historical_fetcher.yaml
@@ -3,30 +3,30 @@ interactions:
body: null
headers:
Accept:
- - '*/*'
+ - application/json
Accept-Encoding:
- - gzip, deflate, br
+ - gzip, deflate
Connection:
- keep-alive
method: GET
- uri: https://api-v2.intrinio.com/securities/AAPL/prices?api_key=MOCK_API_KEY&end_date=2023-01-10&end_time=23%3A59%3A59&frequency=daily&source=realtime&start_date=2023-01-01&start_time=00%3A00%3A00&timezone=UTC
+ uri: https://api-v2.intrinio.com/securities/AAPL/prices?api_key=MOCK_API_KEY&end_date=2023-01-10&end_time=23%3A59%3A59&frequency=daily&source=realtime&start_date=2023-01-01&start_time=00%3A00%3A00&timezone=America%2FNew_York
response:
body:
string: !!binary |
- H4sIADErLWUAA6yW207cMBCGX6Xy9a5lx8fsHagVqtTSA6ICVVUUZb27hpCkThZYEO/OeI9xslwQ
- cTnj8Xj8+c9MnlHdlNltUjmbmRpN/j6jadoYNEERidiY0DElaIRs0bi0Ms6WUzSZpXltRmjmzP+l
- KbIVBE9Tm68grqxMgSaUERzJEVrY+cJbdG3l5QMYkcY0GqEsL2uziVRshO7LfHkHtmQ6llQITEYo
- nd4k23xRjBXdeHY5yd6zzauw0BtHKzdVG9ex/LM0a0oHcd6oq9w2iUsbW249U3tvp6aA+xJvZou0
- mBtv+GMARWaKJjl4CeECctpZs0qahzJ5MOZ2V6xSWEe9xW3dDEv+MuphJ/Eg7FwdsDPM6R57jHUc
- YKfigF0RFRNNWR973MEeYc0D7DFmPMQOLhlSb6cfTJ29QZ1+KHX5fuqRxIQeqIP04z11HlD3ZKID
- da2U4Ir2xC7Wr9ii7uUfUueYyR510hF7O/8w7PwtsTOpPxS7GIBdYcr22MFSqoVdyRZ2INDGTmIZ
- KaK72CUWcYhd4Yh1sO8c+9wc87iDvZV/GPYxxeyI3McQRIn8UPB8kN69qHeQNJaH5g6kdQu8XMt0
- DyamlEnW6zIQJULwMCNoB7wQHfBifdsAfCv/MPAwqI7rnRL2JnYolr8XOxs2U3W7zbS7jJ9zbbmr
- A3VKI0oV9IEjM5V1ZyoL24wvv6d3wUPswQEDBc/XY+WY4Jnqw93WqwnW/TbUJv8PajDZ0tkGgD4j
- C+d6R5LOb9z8Bthm5V2VFqtkvQJGcn4lz55+wMrmt8g8bmrZBNSP86R8+u5i/yxF6i+PTqoqN5++
- Ftk629S7vvy68MbSue1LXl58Bkdjs1vj/JaTn9+2Z5e1bUwSrEwu/e6ZnVtwnJ6eEUJO42txFQVb
- OutXv6/9l1wvUmfgrdK6DiLohTjXfzREwH/eXepWSW7rxhZzNGnc0rzAbcxjk1Spp14s8/zlFQAA
- //8DAMvSMmUYCgAA
+ H4sIALYJ4GUAA6yW226cMBCGX6XyNWv5ADbsXaJWUaU2PUStElUVsljvrhMC1LBJNlHeveM9YWDT
+ qjSXM54Z29/8jHlCdVNmN2llTaZrNP3xhGaq0WiKGGF8QuiEEhQgUzRWVdqacoamc5XXOkBzq3+t
+ dJGtIXimTL6GuLLSBZpSTjATAVqaxdJZdGPl5T0YLMaUBSjLy1pvIyUP0F2Zr27BFjxOBI0iTAKk
+ Ztfprh5LMJdbz74mOXh2dSVm0daxrw1Zcbh1Has/V1lTWohzRl3lpkmtaky588zMnZnpAu5LnJkt
+ VbHQzojiAAGKTBdN2noJCWH7uZk367S5L9N7rW/2h5Vyk9Rb3J2bY86egwF2kozCHsoWO8chPWAH
+ FkkHO41a7JLIhMSUD7FHPewMRx3qyT7Fg+6a7UP3q4+Gzl+ATl8Vuvh36ExgQlvooPzkAD3sQAc0
+ grXQYymjUNKB1qNNazzokBd2oIeYhD3qMZY9qfvlx1EPN90/Qp2LIdj/oR6NoC4x5QfqYEnpUZfC
+ ow4EfOokEUySuE9dHGS7rylw0qHOcUJ71ENMZY+6V34c9QnF/IjYJxBEiXhV7uEotTtJ7xnFWLST
+ HUDHHneBufC4J5RywQcjRmy643OHXsY9uTPeAx/tx9Cx8uO4wyN1fLBTwv9APRkOoL9Q5+Pe09if
+ Mf6IcRL0xS5b6JQySiVMgSPvadJ/TwntyZ2zgdwZ62LvbDBS7zAkX9A7dzPtOPmYYDFc9Mn/hDPo
+ bGVNA0CfkIF9nSNVi2u7uAa2WXlbqWKdblbASM8vxdnjJ1jZ/hLph+1ZtgH1wyItHz/axLWlUO7y
+ 6KSqcv3mfZFtqs2c692XC2esrN118tvFW3A0JrvR1qWcfP6w27usTaPTzsr0m8uem4UBx+npGSHk
+ NLmKLlknpbd++fXKfcj1UlkNvVJ13YmgF9F5/D2GCPjHu1V2neambkyxQNPGrvQz3EY/NGmlHPVi
+ lefPvwEAAP//AwDtIUFLFAoAAA==
headers:
Connection:
- keep-alive
@@ -35,7 +35,7 @@ interactions:
Content-Type:
- application/json
Date:
- - Mon, 16 Oct 2023 12:23:13 GMT
+ - Thu, 29 Feb 2024 04:36:06 GMT
Transfer-Encoding:
- chunked
Vary:
diff --git a/openbb_platform/providers/intrinio/tests/record/http/test_intrinio_fetchers/test_intrinio_index_historical_fetcher.yaml b/openbb_platform/providers/intrinio/tests/record/http/test_intrinio_fetchers/test_intrinio_index_historical_fetcher.yaml
index 718398eb2a7..eb35d049384 100644
--- a/openbb_platform/providers/intrinio/tests/record/http/test_intrinio_fetchers/test_intrinio_index_historical_fetcher.yaml
+++ b/openbb_platform/providers/intrinio/tests/record/http/test_intrinio_fetchers/test_intrinio_index_historical_fetcher.yaml
@@ -9,19 +9,19 @@ interactions:
Connection:
- keep-alive
method: GET
- uri: https://api-v2.intrinio.com/indices/stock_market/$DJI/historical_data/level?api_key=MOCK_API_KEY&end_date=2024-02-05&interval=1d&page_size=10000&sort_order=asc&start_date=2024-01-01
+ uri: https://api-v2.intrinio.com/indices/stock_market/$DJI/historical_data/level?api_key=MOCK_API_KEY&end_date=2024-02-05&interval=1d&page_size=10000&start_date=2024-01-01
response:
body:
string: !!binary |
- H4sIAB/ZwGUAA4SUTW/bMAyG/4oh7JgRor4s5xagl/bQy7bLhsFQY3U14MidLWdNg/z3ye2ASQuB
- ATpY4gOK7yvSZ/bUz3Gc+r0b2s5Fx7bfzix9eLZlggv1kWNabMOObljSYViG4bK5RsRfRNY1auCK
- wmSOKckBGwpTBaY4SDKbLjBjAJHCbI4ZK4GTWJNjWmhAQ2DIi2yNhlpSGJaGIHBBYYVvuhHQWArT
- /30BNHkmaRCQvLDOMZE8MzWF2dJaC4byDAvPrJFAVS9ykZZzBEslE0VzNFyD0hRWNIflBiTVQ0IX
- l6oGkHonkdtmkTegSCwXaqWUdG0ybw6rTA2SUiqxuFSn/r6iRDF20mpswF5PgShHzxqtQInL9w3r
- Q+df2PbM+i7RadeK1+P96y7R8+nwMA7p9MPN3W3aB3dYM96Mv6q7Mfi5ug3dMsepd0O1O/rJ/fCJ
- 2o8h9sGHmND7cYpP1e7g1z/HW2wJcTqlyJfQR99Vn2Kqcq7GxwxantfS28fJ/1x82K905/rhlEKD
- m2P7Hu9ybfIzx+26BHDOvyZyfJj9dHSxH0M7RzfFNxz/4P8APnSlU5ck1r/E9nmV9D5KvwEAAP//
- AwCCQKM2AwUAAA==
+ H4sIAKrP4GUAA3TUPW/bMBAG4L8iEB3tw/FTojYDWZIhS9ulRSEwFtMIkKlUotw4Rv576Xghm8sm
+ iQ9I3sujzuxpWOI0D3s3dr2LjrU/zyw9eNYygUJtUWxRsw07unFNH2UjGwQu3jYfmciZ0QoUyXjO
+ NLfQqA+Mb2XBuEaQlMJcKVOD5AQTtqhASlCaYqZYEy0oalFR5IHKAieZyljdoAFpKSZzZlF/srci
+ XUQODVUpt8WiRkJDqSZXyjRgyMnqnAljwNQUy2OrpeFUfySWxRbWcaRIXmStrQBLbj/vjbrmHJBc
+ MG+O2lgNNXVOWESmhQZuKFZkZhoJSGVWXJYUrQFOsqI5lErtTd0CLJpDyXT1qB4qrl4KRAOSs/H/
+ TuDXhg2h9y+sPbOhTzK9deL1eP+6S3I5HR6mMX39cnN3m96DO1xmu5n+VndT8Et1G/p1ifPgxmp3
+ 9LP77ZPaTyEOwYeY6P00x6dqd/CXH8z72BrifEoj38MQfV99jWmHSzU9Zmh9vmy7e5z9n9WH/UX3
+ bhhPaWh0S+yu4332SxH2G/KW81YpQMQfSU4Pi5+PLg5T6Jbo5vjOeeLyGmoOfChma9hbKta/xO75
+ UtI1qn8AAAD//wMA0dGnzyoFAAA=
headers:
Connection:
- keep-alive
@@ -30,7 +30,7 @@ interactions:
Content-Type:
- application/json
Date:
- - Mon, 05 Feb 2024 12:48:31 GMT
+ - Thu, 29 Feb 2024 18:40:42 GMT
Transfer-Encoding:
- chunked
Vary:
diff --git a/openbb_platform/providers/polygon/openbb_polygon/__init__.py b/openbb_platform/providers/polygon/openbb_polygon/__init__.py
index 40ea1d4bc32..2ec5e7a4109 100644
--- a/openbb_platform/providers/polygon/openbb_polygon/__init__.py
+++ b/openbb_platform/providers/polygon/openbb_polygon/__init__.py
@@ -13,9 +13,6 @@ from openbb_polygon.models.income_statement import PolygonIncomeStatementFetcher
from openbb_polygon.models.index_historical import (
PolygonIndexHistoricalFetcher,
)
-from openbb_polygon.models.market_indices import (
- PolygonMarketIndicesFetcher,
-)
from openbb_polygon.models.market_snapshots import PolygonMarketSnapshotsFetcher
polygon_provider = Provider(
@@ -34,9 +31,10 @@ polygon_provider = Provider(
"CurrencyPairs": PolygonCurrencyPairsFetcher,
"EquityHistorical": PolygonEquityHistoricalFetcher,
"EquityNBBO": PolygonEquityNBBOFetcher,
+ "EtfHistorical": PolygonEquityHistoricalFetcher,
"IncomeStatement": PolygonIncomeStatementFetcher,
"IndexHistorical": PolygonIndexHistoricalFetcher,
- "MarketIndices": PolygonMarketIndicesFetcher,
+ "MarketIndices": PolygonIndexHistoricalFetcher,
"MarketSnapshots": PolygonMarketSnapshotsFetcher,
},
)
diff --git a/openbb_platform/providers/polygon/openbb_polygon/models/crypto_historical.py b/openbb_platform/providers/polygon/openbb_polygon/models/crypto_historical.py
index 4239e7cbab9..04a566a6250 100644
--- a/openbb_platform/providers/polygon/openbb_polygon/models/crypto_historical.py
+++ b/openbb_platform/providers/polygon/openbb_polygon/models/crypto_historical.py
@@ -39,10 +39,16 @@ class PolygonCryptoHistoricalQueryParams(CryptoHistoricalQueryParams):
__json_schema_extra__ = {"symbol": ["multiple_items_allowed"]}
interval: str = Field(
- default="1d", description=QUERY_DESCRIPTIONS.get("interval", "")
+ default="1d",
+ description=QUERY_DESCRIPTIONS.get("interval", "")
+ + " The numeric portion of the interval can be any positive integer."
+ + " The letter portion can be one of the following: s, m, h, d, W, M, Q, Y",
)
sort: Literal["asc", "desc"] = Field(
- default="desc", description="Sort order of the data."
+ default="asc",
+ description="Sort order of the data."
+ + " This impacts the results in combination with the 'limit' parameter."
+ + " The results are always returned in ascending order by date.",
)
limit: PositiveInt = Field(
default=49999, description=QUERY_DESCRIPTIONS.get("limit", "")
diff --git a/openbb_platform/providers/polygon/openbb_polygon/models/currency_historical.py b/openbb_platform/providers/polygon/openbb_polygon/models/currency_historical.py
index 44df98e9f8e..0da2b73c2f2 100644
--- a/openbb_platform/providers/polygon/openbb_polygon/models/currency_historical.py
+++ b/openbb_platform/providers/polygon/openbb_polygon/models/currency_historical.py
@@ -39,10 +39,16 @@ class PolygonCurrencyHistoricalQueryParams(CurrencyHistoricalQueryParams):
__json_schema_extra__ = {"symbol": ["multiple_items_allowed"]}
interval: str = Field(
- default="1d", description=QUERY_DESCRIPTIONS.get("interval", "")
+ default="1d",
+ description=QUERY_DESCRIPTIONS.get("interval", "")
+ + " The numeric portion of the interval can be any positive integer."
+ + " The letter portion can be one of the following: s, m, h, d, W, M, Q, Y",
)
sort: Literal["asc", "desc"] = Field(
- default="desc", description="Sort order of the data."
+ default="asc",
+ description="Sort order of the data."
+ + " This impacts the results in combination with the 'limit' parameter."
+ + " The results are always returned in ascending order by date.",
)
limit: PositiveInt = Field(
default=49999, description=QUERY_DESCRIPTIONS.get("limit", "")
diff --git a/openbb_platform/providers/polygon/openbb_polygon/models/equity_historical.py b/openbb_platform/providers/polygon/openbb_polygon/models/equity_historical.py
index 93935bcfd8d..85f4625a875 100644
--- a/openbb_platform/providers/polygon/openbb_polygon/models/equity_historical.py
+++ b/openbb_platform/providers/polygon/openbb_polygon/models/equity_historical.py
@@ -1,6 +1,6 @@
"""Polygon Equity Historical Price Model."""
-# pylint: disable=unused-argument
+# pylint: disable=unused-argument,protected-access
import warnings
from datetime import datetime
@@ -19,6 +19,7 @@ from openbb_core.provider.utils.helpers import (
ClientSession,
amake_requests,
)
+from pandas import to_datetime
from pydantic import (
Field,
PositiveInt,
@@ -39,22 +40,31 @@ class PolygonEquityHistoricalQueryParams(EquityHistoricalQueryParams):
__json_schema_extra__ = {"symbol": ["multiple_items_allowed"]}
interval: str = Field(
- default="1d", description=QUERY_DESCRIPTIONS.get("interval", "")
+ default="1d",
+ description=QUERY_DESCRIPTIONS.get("interval", "")
+ + " The numeric portion of the interval can be any positive integer."
+ + " The letter portion can be one of the following: s, m, h, d, W, M, Q, Y",
+ )
+ adjustment: Literal["splits_only", "unadjusted"] = Field(
+ default="splits_only",
+ description="The adjustment factor to apply. Default is splits only.",
+ )
+ extended_hours: bool = Field(
+ default=False,
+ description="Include Pre and Post market data.",
)
sort: Literal["asc", "desc"] = Field(
- default="desc", description="Sort order of the data."
+ default="asc",
+ description="Sort order of the data."
+ + " This impacts the results in combination with the 'limit' parameter."
+ + " The results are always returned in ascending order by date.",
)
limit: PositiveInt = Field(
default=49999, description=QUERY_DESCRIPTIONS.get("limit", "")
)
- adjusted: bool = Field(
- default=True,
- description="Output time series is adjusted by historical split and dividend events.",
- )
_multiplier: PositiveInt = PrivateAttr(default=None)
_timespan: str = PrivateAttr(default=None)
- # pylint: disable=protected-access
@model_validator(mode="after")
@classmethod
def get_api_interval_params(cls, values: "PolygonEquityHistoricalQueryParams"):
@@ -125,12 +135,12 @@ class PolygonEquityHistoricalFetcher(
) -> List[Dict]:
"""Return the raw data from the Polygon endpoint."""
api_key = credentials.get("polygon_api_key") if credentials else ""
-
+ adjustment = query.adjustment == "splits_only"
urls = [
(
"https://api.polygon.io/v2/aggs/ticker/"
f"{symbol.upper()}/range/{query._multiplier}/{query._timespan}/"
- f"{query.start_date}/{query.end_date}?adjusted={query.adjusted}"
+ f"{query.start_date}/{query.end_date}?adjusted={adjustment}"
f"&sort={query.sort}&limit={query.limit}&apiKey={api_key}"
)
for symbol in query.symbol.split(",")
@@ -178,7 +188,21 @@ class PolygonEquityHistoricalFetcher(
"""Transform the data from the Polygon endpoint."""
if not data:
raise EmptyDataError()
+ if query.extended_hours is True or query._timespan not in [
+ "second",
+ "minute",
+ "hour",
+ ]:
+ return [
+ PolygonEquityHistoricalData.model_validate(d)
+ for d in sorted(data, key=lambda x: x["t"], reverse=False)
+ ]
+
return [
PolygonEquityHistoricalData.model_validate(d)
for d in sorted(data, key=lambda x: x["t"], reverse=False)
+ if to_datetime(d["t"]).time()
+ >= datetime.strptime("09:30:00", "%H:%M:%S").time()
+ and to_datetime(d["t"]).time()
+ <= datetime.strptime("16:00:00", "%H:%M:%S").time()
]
diff --git a/openbb_platform/providers/polygon/openbb_polygon/models/index_historical.py b/openbb_platform/providers/polygon/openbb_polygon/models/index_historical.py
index 0b34c48d8c5..01320ddfc75 100644
--- a/openbb_platform/providers/polygon/openbb_polygon/models/index_historical.py
+++ b/openbb_platform/providers/polygon/openbb_polygon/models/index_historical.py
@@ -39,10 +39,16 @@ class PolygonIndexHistoricalQueryParams(IndexHistoricalQueryParams):
__json_schema_extra__ = {"symbol": ["multiple_items_allowed"]}
interval: str = Field(
- default="1d", description=QUERY_DESCRIPTIONS.get("interval", "")
+ default="1d",
+ description=QUERY_DESCRIPTIONS.get("interval", "")
+ + " The numeric portion of the interval can be any positive integer."
+ + " The letter portion can be one of the following: s, m, h, d, W, M, Q, Y",
)
sort: Literal["asc", "desc"] = Field(
- default="desc", description="Sort order of the data."
+ default="asc",
+ description="Sort order of the data."
+ + " This impacts the results in combination with the 'limit' parameter."
+ + " The results are always returned in ascending order by date.",
)
limit: PositiveInt = Field(
default=49999, description=QUERY_DESCRIPTIONS.get("limit", "")
diff --git a/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_crypto_historical_fetcher.yaml b/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_crypto_historical_fetcher.yaml
index ce8f46b4411..3489418223c 100644
--- a/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_crypto_historical_fetcher.yaml
+++ b/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_crypto_historical_fetcher.yaml
@@ -9,21 +9,21 @@ interactions:
Connection:
- keep-alive
method: GET
- uri: https://api.polygon.io/v2/aggs/ticker/X:BTCUSD/range/1/day/2023-01-01/2023-01-10?apiKey=MOCK_API_KEY&limit=49999&sort=desc
+ uri: https://api.polygon.io/v2/aggs/ticker/X:BTCUSD/range/1/day/2023-01-01/2023-01-10?apiKey=MOCK_API_KEY&limit=49999&sort=asc
response:
body:
string: !!binary |
- H4sIAAAAAAAA/0zUTavbRhQG4P8ya3E43x9aNt110UVbKJRSnGuHpA0JseWUcrn/vcjSjOzdGOHH
- 7zmv5rUtn17+uVzb3H6ff/j13W+//Nim9u1+uf737uv9y9JmwqldL7f75+X29M3p/Pf9tlzObV6u
- 98t4os1/vLbvbeZkZUCuigg3FZ/a93/bTCEkYB4yta/rkSKgdGov60FVQH1qH9eDoU/t8+MZNaCp
- rbKHCGbi+pnalzabByK9TQ9VQiMgjALZxMU6yqoQhtRRpV188LmLuv7mJiJDxSCZWQ/SjUh9J4lI
- EryIXDmUtXbTKwgCUzfTawuxqWxAXaWkTfUiBD2CkjgeKleZ2a66eYFJaBkHE5cNVQzUmLpq1FUv
- ZZDYVK/CrqKA5VBRy59ULmXd1XWpDsalSF7uGV1NRcBDTTaIoSZg3yn3CbsHQnJXuVz4UDUsqC91
- G51nhZVSBA+UHbi4Dzi1QHZ0/QNee9TM3NEwBBxr5Qx/apJkmGGPWuIIxC7OJoSeQxWDyvBdda8R
- NVVBeY+K2FVXgzzUKHwqkxFnVleJUYEry0zX5mykJwJK6SBzBF157TtN6tO1KvBD3ME9ZzhjXykZ
- cQGvIEqVigy0GIxwoGSDdFj7tpEonVQGOxbqFE81EkuunpJYEEHITETIi4dpWmA6gppwN4keHf24
- zVN3U9cS76AJ8fPbwmL69ufUbstpud/a3H7+qa3X1Lf75bb89enc5san0+n9+w8ZLyImcjaWiFN+
- MCY6n9nb1F76jff2fwAAAP//OenW5ykFAAA=
+ H4sIAAAAAAAA/0zUzYobRxAH8Hfp81DUd3XNMZtbDjkkgUAIRpZkvPayy0qjNWbZdzcjdbdmTt3D
+ wG/+VdX9XpbH/ffjqczl3/m3vx/++ev3MpXXy/H08+Hl8ryUmXAqp+P58rScN292h2+X83I8lHk5
+ XY7jizL/917eykwsiCBkJiLkyTKVtx9lJjdNME2dyst1KzyV/bpyIrA6la/XjepUntaVJk5lRT3Y
+ hBjXZyrPZeZkMf2YbqARJ3BNM5RMlQF6MhhhB52sg+6Q1sCK0kBTBuNhOoXfTbHKmc1kYlTgXFGt
+ OsCKgDISuleQQSZodHKt443MBB9ioOJGDGfsKTnFEYhdfC0Geu1oFYOs4QNNiIZWVVC+oYFYG+pq
+ UOOuZmOvqhHX2nOSpxp4zbBUiuCBsgMn96RVcyStbODZk9aOhiHgHa3hdRO1hhn2qJXVwTgVydN9
+ /dWmKgIaU1fZRtTUCugtKmOvrwdCvbc0XTZjpGFB1FQ3TzAJTeNg4nU+bmqKgd7VNAIaKoP0rmZ2
+ NVGuA31TBTU3g8ScymN4iaSCJ5Erh7LmUIMgsPYKr31oahAbUDsvQZW6SghKQyVx3B6ZNLOmSmgE
+ hFEgm7j0qMGqEIYtapAOMgKyk9rLG4QMOZoqzLyZJDci9U1TGZAzI8JNxbspJGAe0s1V0saqCmjv
+ qq39vbG3YjRVsG5GyTwQ6eP/qZyX3XI5l7n8+UdZr6nXy/G8fHo8lLlI7gjzsKvHPX3ZhdgO6YB7
+ 4887ZFEpU9n3G+/jVwAAAP//yGhUvikFAAA=
headers:
Connection:
- keep-alive
@@ -34,7 +34,7 @@ interactions:
Content-Type:
- application/json
Date:
- - Fri, 02 Feb 2024 00:32:56 GMT
+ - Thu, 29 Feb 2024 04:34:31 GMT
Server:
- nginx/1.19.2
Strict-Transport-Security:
@@ -42,7 +42,7 @@ interactions:
Vary:
- Accept-Encoding
X-Request-Id:
- - 2aaabbf87c33533d52377a8f5211dd26
+ - 39a109da8ec1fa735a01d0c52ba02343
status:
code: 200
message: OK
diff --git a/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_currency_historical_fetcher.yaml b/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_currency_historical_fetcher.yaml
index a706bc34071..5db353ecc56 100644
--- a/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_currency_historical_fetcher.yaml
+++ b/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_currency_historical_fetcher.yaml
@@ -9,29 +9,29 @@ interactions:
Connection:
- keep-alive
method: GET
- uri: https://api.polygon.io/v2/aggs/ticker/C:EURUSD/range/1/day/2023-01-01/2023-01-10?apiKey=MOCK_API_KEY&limit=49999&sort=desc
+ uri: https://api.polygon.io/v2/aggs/ticker/C:EURUSD/range/1/day/2023-01-01/2023-01-10?apiKey=MOCK_API_KEY&limit=49999&sort=asc
response:
body:
string: !!binary |
- H4sIAAAAAAAA/2yUQWsbPRCG/8ucxYdmpJmR9pqvpx4KLTmVUjbrDU0bEuLdTSnB/73IkTQ61Cch
- 5Ofx6H3lN9gfll/rGSa4mT7cfr798j84eDnW85+b5+Nphwm9g/O6HY/7NuzMp5/Htq8nmPbzsfYT
- MH19g1eYyBNHdvD6Gyb8z2uIDp7rktjBUtcpOPjxvuYcHDy+r9FB8YiG4FPy5ePgqWEvrjqYVM3h
- pTlEKJqj+KpDsCmEu4KI4qgo1KqIGrALylcqP/rU+CIkjS9C2gXBa1dgEG+KQm0zDPRg+DjQB3hn
- lwMV7WOW4df3u9FUtiqcGRucyWej4z/oMVFueMoSaLycgm0O9ByDObRnLJ6lOZjQJKFLGEPqkqQy
- hnzlNgnlmKNJcuqDxHJjSxOag3uP2O6JNPsx5Su2OYJIsCJxsqBVelmvfa6OhDaHjaHVUBVXalVo
- xGgG0V5V9aUyS9uOvarW1NirSoI6hH2FVgEOTco9bEmxh63Z3po9NdFkA3DAIWykyzcH2z7vxwYT
- fPoI5Zm/HOu2f384wQSCeZ7lXu4wzUsOeLeEOablfuE087oSOFjaP8blbwAAAP//JClhEWkEAAA=
+ H4sIAAAAAAAA/2SUTWvcMBCG/8ucRdHHfEi+pj31UGjJqZSS7mpJ2pCQtZ1Swv73Ins1I8iehDHP
+ 43fe0b7B8nD4U88wwc306fbr7beP4OBlred/N8/r0wJT8A7OdV4fl3l4cnf8vc5LPcK0nNeqb8D0
+ /Q1eYQrRwetfmMIHzyU4eN6PGYuDw3aWkhzc2/Fxf0NydtAcLJFSiL79HDw15MVtbMGAYnjhjhcf
+ peNZGJUfFI+kdA7CRt+gV0FMzMkMlEkDCFM3UGPdX3OpgYJ9v3j0ZtipXRELFjRFyV1BSElDeFMk
+ 0iERojnKVbI7Nmx3BE+YzCGoMTyxxoghmCRajmRBsnAeJBu3S7zk9rxLSMum6LVsZnOwOjDHoo7C
+ aSh7x3aHld2GcM3QhnAw5Ds625SSxzJ03RcJJYUBbWSfBzQPbFF48qL0kHjouVF1OBTFFkm8ripz
+ 1M+XFLVmYdtVXdUUYxxL3qiqiNsidkXSkndsV2S7bWTXrd2MqyP5PHa8YS8/HMzL3bLOMMGXz9Cu
+ +cta5+XnwxEmOFXkEE4VfcZUciU+0qn4UH7VUy6M4ODQ/zEu/wMAAP//aa3BEGkEAAA=
headers:
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Length:
- - '455'
+ - '449'
Content-Type:
- application/json
Date:
- - Fri, 02 Feb 2024 00:32:57 GMT
+ - Thu, 29 Feb 2024 04:34:31 GMT
Server:
- nginx/1.19.2
Strict-Transport-Security:
@@ -39,7 +39,7 @@ interactions:
Vary:
- Accept-Encoding
X-Request-Id:
- - 619aa6f6b18ac931bc3a48cfc58a5ee2
+ - fe4611fe4084398e56d5f9019bef8964
status:
code: 200
message: OK
diff --git a/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_equity_historical_fetcher.yaml b/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_equity_historical_fetcher.yaml
index 1880542b7ea..42cf040362f 100644
--- a/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_equity_historical_fetcher.yaml
+++ b/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_equity_historical_fetcher.yaml
@@ -3,34 +3,34 @@ interactions:
body: null
headers:
Accept:
- - '*/*'
+ - application/json
Accept-Encoding:
- gzip, deflate
Connection:
- keep-alive
method: GET
- uri: https://api.polygon.io/v2/aggs/ticker/AAPL/range/1/day/2023-01-01/2023-01-10?adjusted=True&apiKey=MOCK_API_KEY&limit=49999&sort=desc
+ uri: https://api.polygon.io/v2/aggs/ticker/AAPL/range/1/day/2023-01-01/2023-01-10?adjusted=True&apiKey=MOCK_API_KEY&limit=49999&sort=asc
response:
body:
string: !!binary |
- H4sIAAAAAAAA/1TSQWvcPBAG4P8y14hhZqSZkXQL3/ErtPdSyq5XS9KGhKztlBL2vxfXqr3xaTAy
- j99X8w7T4/CzXaDC/f2XTxDgdW6X3/+9zM8TVAtwaeP8NI37i8PpxzxO7QR1usxtOwD16zu8QTWM
- uRirtjvyAG+/oLIUzCIBXqByJBQLMKyjxwAPy8goFi3A03I8I0uACSqbxyiWaXkCPENVTSXRNfy1
- HMkLZY43VmQ0KTuWTDeNtWsRE3erYC6bJYnSblnSaNqtjO6anD/kysgld0sMiVdKCpp0ilBKp9IN
- JSWz7JQzq9BGkbNlyreUIeUcO+XIsVOK1ClxdN8ot43KJd00aKZJ80YVJrIYP1KWLG2plp8e1nG5
- oYc1uKn+wxQp7xjlmwrdiZJ0jJGF2ZNzu1u+WDVFF913I++5fKtwb5B9k1zWAleJSZhMr98CjNNh
- mkeo8Pl/WPbzdW7j9P3xBBWG4Sgtykn1ICQ2uJy5nYse7ejl2M4QYOibfv0TAAD//5fmLtkbAwAA
+ H4sIAAAAAAAA/1TSwWrdSgwG4HfRNoOQNDOSZnbhLm+h3ZdSjI9L04aEHNspJZx3L46HseOlMP78
+ /9IbLA/j7+kKFe7vv3yCAC/rdP373/P6tEDVANdpXh+X+RgMl1/rvEwXqMt1nfoLUL++wStURhZm
+ S8bTHXmA1z9QWTKa5ADPUDkSigcY9zFZgJ/7tAR43IYJ2QIsUFlNTITenwBPUJmESfMtvFOOhYk0
+ xulu+8wuKWrStFOi6KVRilF3Shw1Z2taxu0vm+bk6dDMiJJ0jIzVyT9i5B4bZsjxyCUNMzTrwUwP
+ qiQ/KNWcsnfKLCfjfKYcubj0XMSNKqjSK5Sjwy14o4qznFIxZ6FGGZIVcj5XGBlVivRtJc27FQk5
+ Nyti4maVkxUl0alBTTn2dSlGL8r5Q6yCLgcl2iWLTWIU3Vb32FqQbkXRU4U5p5Lo9i3AvAzLOkOF
+ z//Ddp8v6zQv3x8uUCGWVEhlGPXHMKRyGT16jEMZpkli8RECjO3Sb/8CAAD//xVsoR0bAwAA
headers:
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Length:
- - '399'
+ - '396'
Content-Type:
- application/json
Date:
- - Tue, 26 Sep 2023 19:08:11 GMT
+ - Thu, 29 Feb 2024 04:34:30 GMT
Server:
- nginx/1.19.2
Strict-Transport-Security:
@@ -38,7 +38,7 @@ interactions:
Vary:
- Accept-Encoding
X-Request-Id:
- - ccb2e32d55a2026c72f1ef95b6b79bef
+ - 3949062ac6faa49dc83833a9aee2398c
status:
code: 200
message: OK
diff --git a/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_index_historical_fetcher.yaml b/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_index_historical_fetcher.yaml
index 5d27a705e3e..ddcefef812d 100644
--- a/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_index_historical_fetcher.yaml
+++ b/openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_index_historical_fetcher.yaml
@@ -9,51 +9,51 @@ interactions:
Connection:
- keep-alive
method: GET
- uri: https://api.polygon.io/v2/aggs/ticker/I:NDX/range/1/day/2023-01-01/2023-05-10?apiKey=MOCK_API_KEY&limit=49999&sort=desc
+ uri: https://api.polygon.io/v2/aggs/ticker/I:NDX/range/1/day/2023-01-01/2023-05-10?apiKey=MOCK_API_KEY&limit=49999&sort=asc
response:
body:
string: !!binary |
- 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
+ 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
headers:
Connection:
- keep-alive
@@ -62,7 +62,7 @@ interactions:
Content-Type:
- application/json
Date:
- - Fri, 02 Feb 2024 00:35:30 GMT
+ - Thu, 29 Feb 2024 04:34:30 GMT
Server:
- nginx/1.19.2
Strict-Transport-Security:
@@ -72,7 +72,7 @@ interactions:
Vary:
- Accept-Encoding
X-Request-Id:
- - 1ab70490ebcfe654deb56d619924d97d
+ - e77b0c116bbca37bc4af1d1977e9fc7f
status:
code: 200
message: OK
diff --git a/openbb_platform/providers/tiingo/openbb_tiingo/__init__.py b/openbb_platform/providers/tiingo/openbb_tiingo/__init__.py
index 4bcc7d18f4e..98a6562a198 100644
--- a/openbb_platform/providers/tiingo/openbb_tiingo/__init__.py
+++ b/openbb_platform/providers/tiingo/openbb_tiingo/__init__.py
@@ -15,6 +15,7 @@ tiingo_provider = Provider(
credentials=["token"],
fetcher_dict={
"EquityHistorical": TiingoEquityHistoricalFetcher,
+ "EtfHistorical": TiingoEquityHistoricalFetcher,
"CompanyNews": TiingoCompanyNewsFetcher,
"WorldNews": TiingoWorldNewsFetcher,
"CryptoHistorical": TiingoCryptoHistoricalFetcher,
diff --git a/openbb_platform/providers/tiingo/openbb_tiingo/models/crypto_historical.py b/openbb_platform/providers/tiingo/openbb_tiingo/models/crypto_historical.py
index d0ae6599206..bd70bab32cd 100644
--- a/openbb_platform/providers/tiingo/openbb_tiingo/models/crypto_historical.py
+++ b/openbb_platform/providers/tiingo/openbb_tiingo/models/crypto_historical.py
@@ -1,5 +1,8 @@
"""Tiingo Crypto Historical Price Model."""
+# pylint: disable=unused-argument
+
+import warnings
from datetime import datetime
from typing import Any, Dict, List, Literal, Optional
@@ -9,9 +12,15 @@ from openbb_core.provider.standard_models.crypto_historical import (
CryptoHistoricalData,
CryptoHistoricalQueryParams,
)
-from openbb_core.provider.utils.helpers import get_querystring
-from openbb_tiingo.utils.helpers import get_data_one
-from pydantic import Field
+from openbb_core.provider.utils.descriptions import QUERY_DESCRIPTIONS
+from openbb_core.provider.utils.helpers import (
+ ClientResponse,
+ amake_requests,
+ get_querystring,
+)
+from pydantic import Field, PrivateAttr, model_validator
+
+_warn = warnings.warn
class TiingoCryptoHistoricalQueryParams(CryptoHistoricalQueryParams):
@@ -24,19 +33,40 @@ class TiingoCryptoHistoricalQueryParams(CryptoHistoricalQueryParams):
"symbol": "tickers",
"start_date": "startDate",
"end_date": "endDate",
+ "interval": "resampleFreq",
}
+ __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]}
- interval: Literal["1min", "5min", "15min", "30min", "1hour", "4hour", "1day"] = (
- Field(default="1day", description="Data granularity.", alias="resampleFreq")
+ interval: Literal["1m", "5m", "15m", "30m", "1h", "4h", "1d"] = Field(
+ default="1d", description=QUERY_DESCRIPTIONS.get("interval", "")
)
-
exchanges: Optional[List[str]] = Field(
default=None,
description=(
"To limit the query to a subset of exchanges e.g. ['POLONIEX', 'GDAX']"
),
)
+ _frequency: Literal["daily", "weekly", "monthly", "annually"] = PrivateAttr(
+ default=None
+ )
+
# pylint: disable=protected-access
+ @model_validator(mode="after") # type: ignore[arg-type]
+ @classmethod
+ def set_time_params(cls, values: "TiingoCryptoHistoricalQueryParams"):
+ """Set the default start & end date and time params for Tiingo API."""
+ frequency_dict = {
+ "1d": "1Day",
+ "1m": "1Min",
+ "5m": "5Min",
+ "15m": "15Min",
+ "30m": "30Min",
+ "1h": "1Hour",
+ "4h": "4Hour",
+ }
+ values._frequency = frequency_dict[values.interval] # type: ignore[assignment]
+
+ return values
class TiingoCryptoHistoricalData(CryptoHistoricalData):
@@ -81,9 +111,9 @@ class TiingoCryptoHistoricalFetcher(
return TiingoCryptoHistoricalQueryParams(**transformed_params)
- # pylint: disable=protected-access,unused-argument
+ # pylint: disable=protected-access
@staticmethod
- def extract_data(
+ async def aextract_data(
query: TiingoCryptoHistoricalQueryParams,
credentials: Optional[Dict[str, str]],
**kwargs: Optional[Any],
@@ -92,13 +122,32 @@ class TiingoCryptoHistoricalFetcher(
api_key = credentials.get("tiingo_token") if credentials else ""
base_url = "https://api.tiingo.com/tiingo/crypto/prices"
- query_str = get_querystring(query.model_dump(by_alias=True), [])
- url = f"{base_url}?{query_str}&token={api_key}"
- data = get_data_one(url).get("priceData", [])
+ query_str = get_querystring(
+ query.model_dump(by_alias=False), ["tickers", "resampleFreq"]
+ )
+ results = []
- return data
+ async def callback(response: ClientResponse, _: Any) -> List[Dict]:
+ result = await response.json()
+ symbol = response.url.query.get("tickers", "")
+ if not result:
+ _warn(f"No data found the the symbol: {symbol}")
+ return results
+ data = result[0].get("priceData")
+ if "," in query.symbol:
+ for d in data:
+ d["symbol"] = symbol.upper() if symbol else None
+ if len(data) > 0:
+ results.extend(data)
+ return results
+
+ urls = [
+ f"{base_url}?tickers={symbol}&{query_str}&resampleFreq={query._frequency}&token={api_key}"
+ for symbol in query.symbol.split(",")
+ ]
+
+ return await amake_requests(urls, callback, **kwargs)
- # pylint: disable=unused-argument
@staticmethod
def transform_data(
query: TiingoCryptoHistoricalQueryParams,
@@ -106,4 +155,7 @@ class TiingoCryptoHistoricalFetcher(
**kwargs: Any,
) -> List[TiingoCryptoHistoricalData]:
"""Return the transformed data."""
- return [TiingoCryptoHistoricalData.model_validate(d) for d in data]
+ return [
+ TiingoCryptoHistoricalData.model_validate(d)
+ for d in sorted(data, key=lambda x: x["date"], reverse=True)
+ ]
diff --git a/openbb_platform/providers/tiingo/openbb_tiingo/models/currency_historical.py b/openbb_platform/providers/tiingo/openbb_tiingo/models/currency_historical.py
index 748f782c803..aa0387cfd70 100644
--- a/openbb_platform/providers/tiingo/openbb_tiingo/models/currency_historical.py
+++ b/openbb_platform/providers/tiingo/openbb_tiingo/models/currency_historical.py
@@ -1,5 +1,8 @@
"""Tiingo Currency Historical Price Model."""
+# pylint: disable=unused-argument
+
+import warnings
from datetime import datetime
from typing import Any, Dict, List, Literal, Optional
@@ -9,9 +12,15 @@ from openbb_core.provider.standard_models.currency_historical import (
CurrencyHistoricalData,
CurrencyHistoricalQueryParams,
)
-from openbb_core.provider.utils.helpers import get_querystring
-from openbb_tiingo.utils.helpers import get_data_many
-from pydantic import Field
+from openbb_core.provider.utils.descriptions import QUERY_DESCRIPTIONS
+from openbb_core.provider.utils.helpers import (
+ ClientResponse,
+ amake_requests,
+ get_querystring,
+)
+from pydantic import Field, PrivateAttr, model_validator
+
+_warn = warnings.warn
class TiingoCurrencyHistoricalQueryParams(CurrencyHistoricalQueryParams):
@@ -24,16 +33,41 @@ class TiingoCurrencyHistoricalQueryParams(CurrencyHistoricalQueryParams):
"symbol": "tickers",
"start_date": "startDate",
"end_date": "endDate",
+ "interval": "resampleFreq",
}
+ __json_schema_extra__ = {"symbol": ["multiple_items_allowed"]}
- interval: Literal["1min", "5min", "15min", "30min", "1hour", "4hour", "1day"] = (
- Field(default="1day", description="Data granularity.", alias="resampleFreq")
+ interval: Literal["1m", "5m", "15m", "30m", "1h", "4h", "1d"] = Field(
+ default="1d", description=QUERY_DESCRIPTIONS.get("interval", "")
)
+ _frequency: Literal["daily", "weekly", "monthly", "annually"] = PrivateAttr(
+ default=None
+ )
+
+ # pylint: disable=protected-access
+ @model_validator(mode="after") # type: ignore[arg-type]
+ @classmethod
+ def set_time_params(cls, values: "TiingoCurrencyHistoricalQueryParams"):
+ """Set the default start & end date and time params for Tiingo API."""
+ frequency_dict = {
+ "1d": "1Day",
+ "1m": "1Min",
+ "5m": "5Min",
+ "15m": "15Min",
+ "30m": "30Min",
+ "1h": "1Hour",
+ "4h": "4Hour",
+ }
+ values._frequency = frequency_dict[values.interval] # type: ignore[assignment]
+
+ return values
class TiingoCurrencyHistoricalData(CurrencyHistoricalData):
"""Tiingo Currency Historical Price Data."""
+ __alias_dict__ = {"symbol": "ticker"}
+
class TiingoCurrencyHistoricalFetcher(
Fetcher[
@@ -59,22 +93,44 @@ class TiingoCurrencyHistoricalFetcher(
# pylint: disable=protected-access,unused-argument
@staticmethod
- def extract_data(
+ async def aextract_data(
query: TiingoCurrencyHistoricalQueryParams,
credentials: Optional[Dict[str, str]],
**kwargs: Any,
) -> List[Dict]:
"""Return the raw data from the Tiingo endpoint."""
+
api_key = credentials.get("tiingo_token") if credentials else ""
base_url = "https://api.tiingo.com/tiingo/fx/prices"
- query_str = get_querystring(query.model_dump(by_alias=True), [])
- url = f"{base_url}?{query_str}&token={api_key}"
- data = get_data_many(url)
+ query_str = get_querystring(
+ query.model_dump(by_alias=False), ["tickers", "resampleFreq"]
+ )
+ results = []
- return data
+ async def callback(response: ClientResponse, _: Any) -> List[Dict]:
+ result = await response.json()
+ symbol = response.url.query.get("tickers", "")
+ if not result:
+ _warn(f"No data found the the symbol: {symbol}")
+ return results
+ data = result
+ if len(data) > 0:
+ if "," not in query.symbol:
+ _ = [d.pop("ticker") for d in data]
+ else:
+ for d in data:
+ d["ticker"] = d["ticker"].upper()
+ results.extend(data)
+ return results
+
+ urls = [
+ f"{base_url}?tickers={symbol}&{query_str}&resampleFreq={query._frequency}&token={api_key}"
+ for symbol in query.symbol.split(",")
+ ]
+
+ return await amake_requests(urls, callback, **kwargs)
- # pylint: disable=unused-argument
@staticmethod
def transform_data(
query: TiingoCurrencyHistoricalQueryParams,
diff --git a/openbb_platform/providers/tiingo/openbb_tiingo/models/equity_historical.py b/openbb_platform/providers/tiingo/openbb_tiingo/models/equity_historical.py
index 12f508df906..401f1f14c01 100644
--- a/openbb_platform/providers/tiingo/openbb_tiingo/models/equity_historical.py
+++ b/openbb_platform/providers/tiingo/openbb_tiingo/models/equity_historical.py
@@ -1,5 +1,8 @@
"""Tiingo Equity Historical Price Model."""
+# pylint: disable=unused-argument
+
+import warnings
from datetime import datetime
from typing import Any, Dict, List, Literal, Optional
@@ -9,10 +12,19 @@ from openbb_core.provider.standard_models.equity_historical import (
EquityHistoricalData,
EquityHistoricalQueryParams,
)
-from openbb_core.provider.utils.descriptions import QUERY_DESCRIPTIONS
-from openbb_core.provider.utils.helpers import amake_request, get_querystring
+from openbb_core.provider.utils.descriptions import (
+ DATA_DESCRIPTIONS,
+ QUERY_DESCRIPTIONS,
+)
+from openbb_core.provider.utils.helpers import (
+ ClientResponse,
+ amake_requests,
+ get_querystring,
+)
from pydantic import Field, PrivateAttr, model_validator
+_warn = warnings.warn
+
class TiingoEquityHistoricalQueryParams(EquityHistoricalQueryParams):
"""Tiingo Equity Historical Price Query.
@@ -29,8 +41,8 @@ class TiingoEquityHistoricalQueryParams(EquityHistoricalQueryParams):
interval: Literal["1d", "1W", "1M", "1Y"] = Field(
default="1d", description=QUERY_DESCRIPTIONS.get("interval", "")
)
- _frequency: Literal["daily", "weekly", "monthly", "quarterly", "yearly"] = (
- PrivateAttr(default=None)
+ _frequency: Literal["daily", "weekly", "monthly", "annually"] = PrivateAttr(
+ default=None
)
# pylint: disable=protected-access
@@ -42,8 +54,7 @@ class TiingoEquityHistoricalQueryParams(EquityHistoricalQueryParams):
"1d": "daily",
"1W": "weekly",
"1M": "monthly",
- "1Q": "quarterly",
- "1Y": "yearly",
+ "1Y": "annually",
}
values._frequency = frequency_dict[values.interval] # type: ignore[assignment]
@@ -56,32 +67,32 @@ class TiingoEquityHistoricalData(EquityHistoricalData):
adj_open: Optional[float] = Field(
default=None,
- description="Adjusted open price during the period.",
+ description="The adjusted open price.",
alias="adjOpen",
)
adj_high: Optional[float] = Field(
default=None,
- description="Adjusted high price during the period.",
+ description="The adjusted high price.",
alias="adjHigh",
)
adj_low: Optional[float] = Field(
default=None,
- description="Adjusted low price during the period.",
+ description="The adjusted low price.",
alias="adjLow",
)
adj_close: Optional[float] = Field(
default=None,
- description="Adjusted closing price during the period.",
+ description=DATA_DESCRIPTIONS.get("adj_close", ""),
alias="adjClose",
)
adj_volume: Optional[float] = Field(
default=None,
- description="Adjusted volume during the period.",
+ description="The adjusted volume.",
alias="adjVolume",
)
split_ratio: Optional[float] = Field(
default=None,
- description="Ratio of the equity split, if a equity split occurred.",
+ description="Ratio of the equity split, if a split occurred.",
alias="splitFactor",
)
dividend: Optional[float] = Field(
@@ -127,20 +138,30 @@ class TiingoEquityHistoricalFetcher(
query_str = get_querystring(
query.model_dump(by_alias=True), ["symbol", "interval"]
)
- data: List[Dict] = []
- for symbol in query.symbol.split(","):
- url = f"{base_url}/{symbol}/prices?{query_str}&resampleFreq={query._frequency}&token={api_key}"
- d = await amake_request(url, **kwargs)
+
+ async def callback(response: ClientResponse, _: Any) -> List[Dict]:
+ data = await response.json()
+ symbol = response.url.parts[-2]
+ results = []
+ if not data:
+ _warn(f"No data found the the symbol: {symbol}")
+ return results
+
+ if isinstance(data, List):
+ results = data
if "," in query.symbol:
- for item in d:
- item["symbol"] = symbol
+ for d in results:
+ d["symbol"] = symbol
+ return results
- data += d
+ urls = [
+ f"{base_url}/{symbol}/prices?{query_str}&resampleFreq={query._frequency}&token={api_key}"
+ for symbol in query.symbol.split(",")
+ ]
- return data
+ return await amake_requests(urls, callback, **kwargs)
- # pylint: disable=unused-argument
@staticmethod
def transform_data(
query: TiingoEquityHistoricalQueryParams,
diff --git a/openbb_platform/providers/tiingo/tests/record/http/test_tiingo_fetchers/test_tiingo_crypto_historical_fetcher.yaml b/openbb_platform/providers/tiingo/tests/record/http/test_tiingo_fetchers/test_tiingo_crypto_historical_fetcher.yaml
index ef065193379..53657fbb4cf 100644
--- a/openbb_platform/providers/tiingo/tests/record/http/test_tiingo_fetchers/test_tiingo_crypto_historical_fetcher.yaml
+++ b/openbb_platform/providers/tiingo/tests/record/http/test_tiingo_fetchers/test_tiingo_crypto_historical_fetcher.yaml
@@ -3,28 +3,28 @@ interactions:
body: null
headers:
Accept:
- - '*/*'
+ - application/json
Accept-Encoding:
- - gzip, deflate, br
+ - gzip, deflate
Connection:
- keep-alive
method: GET
- uri: https://api.tiingo.com/tiingo/crypto/prices?endDate=2023-06-06&resampleFreq=1day&startDate=2023-01-01&tickers=BTCUSD&token=MOCK_TOKEN
+ uri: https://api.tiingo.com/tiingo/crypto/prices?endDate=2023-06-06&resampleFreq=1Day&startDate=2023-01-01&tickers=BTCUSD&token=MOCK_TOKEN
response:
body:
string: '[{"ticker":"btcusd","baseCurrency":"btc","quoteCurrency":"usd","priceData":[{"date":"2023-01-01T00:00:00+00:00","open":16534.758508538427,"high":16622.870558446135,"low":16492.287893194825,"close":16610.40117718445,"volume":110346.5693071621,"volumeNotional":1832900784.7179508,"tradesDone":2812901.0},{"date":"2023-01-02T00:00:00+00:00","open":16610.892883605946,"high":16792.022463375222,"low":16542.456230097472,"close":16666.42070337159,"volume":139190.34028523602,"volumeNotional":2319804769.039194,"tradesDone":3586445.0},{"date":"2023-01-03T00:00:00+00:00","open":16666.425770956354,"high":16772.008176728094,"low":16600.462687819214,"close":16670.2239959582,"volume":182632.56007866,"volumeNotional":3044525685.4665556,"tradesDone":4392043.0},{"date":"2023-01-04T00:00:00+00:00","open":16670.492558854425,"high":16985.44143125503,"low":16647.613841053073,"close":16845.3620428872,"volume":254928.102217694,"volumeNotional":4294356176.7632103,"tradesDone":5662266.0},{"date":"2023-01-05T00:00:00+00:00","open":16845.34346331706,"high":16874.57078229087,"low":16748.352864565408,"close":16825.22744905322,"volume":182315.91906806597,"volumeNotional":3067506805.903389,"tradesDone":4181793.0},{"date":"2023-01-06T00:00:00+00:00","open":16825.356660535454,"high":17033.021856610823,"low":16672.387166794186,"close":16943.062497969404,"volume":239812.614435073,"volumeNotional":4063160114.1748815,"tradesDone":4719899.0},{"date":"2023-01-07T00:00:00+00:00","open":16942.30531964883,"high":16974.006096954814,"low":16900.429739245064,"close":16935.606463508877,"volume":111958.584354078,"volumeNotional":1896086524.8322272,"tradesDone":2704933.0},{"date":"2023-01-08T00:00:00+00:00","open":16935.99943944265,"high":17168.020164038557,"low":16903.27274222517,"close":17121.282112787987,"volume":148123.123651652,"volumeNotional":2536057787.4673123,"tradesDone":3456234.0},{"date":"2023-01-09T00:00:00+00:00","open":17121.57061012745,"high":17390.76578282186,"low":17097.311813958935,"close":17172.208908019893,"volume":310183.262251941,"volumeNotional":5326531779.161452,"tradesDone":5881651.0},{"date":"2023-01-10T00:00:00+00:00","open":17172.797115007168,"high":17493.595691785365,"low":17139.96726397043,"close":17436.2637252567,"volume":255246.05909687202,"volumeNotional":4450537601.245518,"tradesDone":5000575.0},{"date":"2023-01-11T00:00:00+00:00","open":17436.280208162683,"high":17994.80360990724,"low":17309.4444175157,"close":17936.958420493294,"volume":301326.40384703095,"volumeNotional":5404879176.800964,"tradesDone":5156459.0},{"date":"2023-01-12T00:00:00+00:00","open":17937.23178217057,"high":19111.686238683895,"low":17887.70292419522,"close":18843.615393985634,"volume":546194.156613748,"volumeNotional":10292272617.671824,"tradesDone":8515248.0},{"date":"2023-01-13T00:00:00+00:00","open":18843.702644737696,"high":19996.242779748394,"low":18710.313626706644,"close":19925.507116903274,"volume":445054.043296865,"volumeNotional":8867927507.118261,"tradesDone":7738164.0},{"date":"2023-01-14T00:00:00+00:00","open":19925.46402800475,"high":21260.3129558461,"low":19885.518587547882,"close":20946.42909671108,"volume":475917.1693841831,"volumeNotional":9968765244.413227,"tradesDone":8814695.0},{"date":"2023-01-15T00:00:00+00:00","open":20944.38103412309,"high":21040.41314056405,"low":20542.15697053462,"close":20860.213701599645,"volume":213663.78927575698,"volumeNotional":4457072304.585845,"tradesDone":5169848.0},{"date":"2023-01-16T00:00:00+00:00","open":20861.34285941691,"high":21461.509652455217,"low":20603.222622679405,"close":21178.20240975164,"volume":344480.687747793,"volumeNotional":7295481731.373212,"tradesDone":6682521.0},{"date":"2023-01-17T00:00:00+00:00","open":21177.07334134622,"high":21628.41751210442,"low":20832.822616861344,"close":21125.716720343295,"volume":317891.67411837686,"volumeNotional":6715689455.180516,"tradesDone":6108968.0},{"date":"2023-01-18T00:00:00+00:00","open":21123.508789269184,"high":21639.834325639462,"low":20394.387947494208,"close":20669.66398713652,"volume":399287.363072815,"volumeNotional":8253135629.024868,"tradesDone":7306519.0},{"date":"2023-01-19T00:00:00+00:00","open":20669.667255804423,"high":21186.72047920568,"low":20650.451074363024,"close":21067.169977846763,"volume":280914.929889477,"volumeNotional":5918082577.296517,"tradesDone":5390518.0},{"date":"2023-01-20T00:00:00+00:00","open":21067.318845244237,"high":22747.54274303515,"low":20854.487051634573,"close":22659.49889848295,"volume":383260.33795678604,"volumeNotional":8684487205.763996,"tradesDone":6964724.0},{"date":"2023-01-21T00:00:00+00:00","open":22658.741683860597,"high":23365.612176433126,"low":22415.414658865433,"close":22777.866458104367,"volume":393591.21135730395,"volumeNotional":8965168051.3802,"tradesDone":7340650.0},{"date":"2023-01-22T00:00:00+00:00","open":22777.786814010415,"high":23070.80216753831,"low":22291.02015218942,"close":22706.6567041434,"volume":287904.65037854103,"volumeNotional":6537352059.67196,"tradesDone":6152631.0},{"date":"2023-01-23T00:00:00+00:00","open":22705.023761257806,"high":23177.64120280451,"low":22495.040780156975,"close":22914.806544240204,"volume":334985.914643084,"volumeNotional":7676137429.091631,"tradesDone":6689264.0},{"date":"2023-01-24T00:00:00+00:00","open":22916.213812975722,"high":23160.337734320918,"low":22458.873414989514,"close":22631.297007531946,"volume":341607.57040865096,"volumeNotional":7731022385.939561,"tradesDone":6912892.0},{"date":"2023-01-25T00:00:00+00:00","open":22630.35882328906,"high":23815.402364488167,"low":22299.05184661137,"close":23058.887712962543,"volume":398687.62187728495,"volumeNotional":9193293105.416382,"tradesDone":7487613.0},{"date":"2023-01-26T00:00:00+00:00","open":23058.54405024964,"high":23280.685861431793,"low":22848.58534793659,"close":23009.407018044218,"volume":323698.13523062505,"volumeNotional":7448102144.50337,"tradesDone":6453592.0},{"date":"2023-01-27T00:00:00+00:00","open":23007.85085501095,"high":23498.853019121838,"low":22578.236382525603,"close":23074.906999829804,"volume":284459.814003024,"volumeNotional":6563883753.308663,"tradesDone":5859985.0},{"date":"2023-01-28T00:00:00+00:00","open":23074.56872156852,"high":23189.26405811895,"low":22876.64747411179,"close":23027.41455681704,"volume":145082.87347243898,"volumeNotional":3340883472.544086,"tradesDone":3461693.0},{"date":"2023-01-29T00:00:00+00:00","open":23022.479105202696,"high":23965.235948533962,"low":22966.640963715956,"close":23747.019042121985,"volume":296682.5813472069,"volumeNotional":7045326908.718027,"tradesDone":6033555.0},{"date":"2023-01-30T00:00:00+00:00","open":23747.74358095152,"high":23804.554993231297,"low":22504.088155533067,"close":22833.288374006806,"volume":318186.1375034659,"volumeNotional":7265235834.22802,"tradesDone":6866289.0},{"date":"2023-01-31T00:00:00+00:00","open":22834.34868719895,"high":23323.165558785888,"low":22717.46523452395,"close":23129.71238462947,"volume":294786.55345481803,"volumeNotional":6818328196.266142,"tradesDone":6291240.0},{"date":"2023-02-01T00:00:00+00:00","open":23129.60734979065,"high":23822.940259567993,"low":22775.455317329255,"close":23748.088923078056,"volume":341733.46495692,"volumeNotional":8115516713.788515,"tradesDone":7150155.0},{"date":"2023-02-02T00:00:00+00:00","open":23747.0872030901,"high":24262.102952024463,"low":23367.25434031797,"close":23491.2274576747,"volume":394680.288277346,"volumeNotional":9271524424.983757,"tradesDone":8218546.0},{"date":"2023-02-03T00:00:00+00:00","open":23491.928051755865,"high":23747.077662050582,"low":23211.68416433434,"close":23436.420261583615,"volume":355423.665510659,"volumeNotional":8329858395.820326,"tradesDone":7051300.0},{"date":"2023-02-04T00:00:00+00:00","open":23436.514729027833,"high":23598.81510929699,"low":23254.097741367463,"close":23353.810507945356,"volume":174061.56393647002,"volumeNotional":4065000780.888936,"tradesDone":4282100.0},{"date":"2023-02-05T00:00:00+00:00","open":23354.211922806222,"high":23498.76637636073,"low":22750.479134986206,"close":22955.052298862247,"volume":222521.450994416,"volumeNotional":5107991545.195532,"tradesDone":5260451.0},{"date":"2023-02-06T00:00:00+00:00","open":22954.81271990142,"high":23158.324821368344,"low":22634.657513798375,"close":22766.908081381862,"volume":284031.2601124471,"volumeNotional":6466513591.219145,"tradesDone":6061109.0},{"date":"2023-02-07T00:00:00+00:00","open":22766.946866931554,"high":23349.111314865186,"low":22751.77838080674,"close":23244.890157805403,"volume":326719.584936721,"volumeNotional":7594560864.257853,"tradesDone":7332769.0},{"date":"2023-02-08T00:00:00+00:00","open":23243.04282353539,"high":23456.15056067334,"low":22666.32378169172,"close":22967.39589438958,"volume":296785.900615876,"volumeNotional":6816399275.317785,"tradesDone":6863165.0},{"date":"2023-02-09T00:00:00+00:00","open":22966.23326482415,"high":23015.73874123728,"low":21692.99680676366,"close":21806.785634220563,"volume":437322.539375191,"volumeNotional":9536598869.16777,"tradesDone":8646010.0},{"date":"2023-02-10T00:00:00+00:00","open":21808.339830547367,"high":21956.961142582437,"low":21458.412880304477,"close":21629.589423115016,"volume":361572.229258134,"volumeNotional":7820658865.653852,"tradesDone":6343721.0},{"date":"2023-02-11T00:00:00+00:00","open":21629.56994239977,"high":21912.57758626528,"low":21606.285495750766,"close":21868.469120508347,"volume":185398.990533929,"volumeNotional":4054392099.464646,"tradesDone":3717975.0},{"date":"2023-02-12T00:00:00+00:00","open":21868.92047543776,"high":22094.33927435566,"low":21635.239865646385,"close":21785.92248542488,"volume":215986.308771281,"volumeNotional":4705460980.804172,"tradesDone":4028782.0},{"date":"2023-02-13T00:00:00+00:00","open":21784.961342118844,"high":21901.667037425694,"low":21364.02496161614,"close":21789.100791446246,"volume":321054.7047442801,"volumeNotional":6995493321.241134,"tradesDone":5795945.0},{"date":"2023-02-14T00:00:00+00:00","open":21789.813889905905,"high":22334.904152432726,"low":21548.09009000796,"close":22200.10689875198,"volume":388077.974555726,"volumeNotional":8615372520.188267,"tradesDone":6677024.0},{"date":"2023-02-15T00:00:00+00:00","open":22200.25645853632,"high":24384.62829397166,"low":22053.983193218235,"close":24331.147433807317,"volume":414707.982965513,"volumeNotional":10090321075.51075,"tradesDone":7527313.0},{"date":"2023-02-16T00:00:00+00:00","open":24330.07392682627,"high":25231.587838856147,"low":23494.70937538958,"close":23506.73478761036,"volume":494987.637211754,"volumeNotional":11635543111.082594,"tradesDone":10017567.0},{"date":"2023-02-17T00:00:00+00:00","open":23506.500363758303,"high":25023.454206492523,"low":23333.031972129258,"close":24579.63020419649,"volume":535465.0397492789,"volumeNotional":13161532664.312649,"tradesDone":9876808.0},{"date":"2023-02-18T00:00:00+00:00","open":24578.04586250838,"high":24884.206935482573,"low":24431.85754839516,"close":24636.835983572786,"volume":226346.40309056902,"volumeNotional":5576459208.414001,"tradesDone":5587301.0},{"date":"2023-02-19T00:00:00+00:00","open":24636.960781383248,"high":25192.516211187314,"low":24197.513424917393,"close":24279.314507001585,"volume":319962.408439316,"volumeNotional":7768467944.915851,"tradesDone":6819798.0},{"date":"2023-02-20T00:00:00+00:00","open":24279.82212524917,"high":25121.10976908513,"low":23847.92533372801,"close":24844.512855441255,"volume":370089.7517008561,"volumeNotional":9194699593.79898,"tradesDone":8912465.0},{"date":"2023-02-21T00:00:00+00:00","open":24845.961542510562,"high":25253.691856111283,"low":24153.678570217904,"close":24456.85051691342,"volume":408337.32267434703,"volumeNotional":9986644861.123146,"tradesDone":9645034.0},{"date":"2023-02-22T00:00:00+00:00","open":24455.532273815614,"high":24487.54482763843,"low":23579.58845207356,"close":24190.23629090606,"volume":412202.607884278,"volumeNotional":9971278484.448383,"tradesDone":10006318.0},{"date":"2023-02-23T00:00:00+00:00","open":24189.261865227578,"high":24603.99633281332,"low":23612.852511785713,"close":23942.64086692768,"volume":429154.11443397193,"volumeNotional":10275082838.456974,"tradesDone":9578353.0},{"date":"2023-02-24T00:00:00+00:00","open":23942.8014480139,"high":24131.65220176608,"low":22821.76108661926,"close":23187.7594074938,"volume":378410.5775526979,"volumeNotional":8774493429.542732,"tradesDone":8872408.0},{"date":"2023-02-25T00:00:00+00:00","open":23186.532860926316,"high":23223.65221829308,"low":22727.54442118508,"close":23161.79691640286,"volume":203126.375823149,"volumeNotional":4704771865.1807,"tradesDone":5788856.0},{"date":"2023-02-26T00:00:00+00:00","open":23161.794958186474,"high":23698.716825376534,"low":23059.296256018395,"close":23557.24304450421,"volume":214691.089723741,"volumeNotional":5057530180.111627,"tradesDone":6187090.0},{"date":"2023-02-27T00:00:00+00:00","open":23557.238213359717,"high":23899.96014698971,"low":23102.92724625777,"close":23491.09651011545,"volume":306302.1805658,"volumeNotional":7195374084.9300165,"tradesDone":8383090.0},{"date":"2023-02-28T00:00:00+00:00","open":23492.04498127966,"high":23600.002394182917,"low":23021.69308328172,"close":23143.86643650886,"volume":280682.00044089096,"volumeNotional":6496066729.336101,"tradesDone":7350756.0},{"date":"2023-03-01T00:00:00+00:00","open":23144.27814122816,"high":23999.76013244346,"low":23020.584899482204,"close":23633.620866618927,"volume":337141.683397634,"volumeNotional":7967878723.753355,"tradesDone":8204359.0},{"date":"2023-03-02T00:00:00+00:00","open":23634.45572366933,"high":23803.56478707363,"low":23193.889885658158,"close":23465.50232382252,"volume":256409.812836994,"volumeNotional":6016785058.97738,"tradesDone":6713059.0},{"date":"2023-03-03T00:00:00+00:00","open":23465.668271156672,"high":23479.360293301717,"low":21980.487424792944,"close":22355.051813818725,"volume":354871.338496905,"volumeNotional":7933167159.337515,"tradesDone":7529497.0},{"date":"2023-03-04T00:00:00+00:00","open":22354.712279160834,"high":22413.38098047793,"low":22162.598529893046,"close":22348.10163881476,"volume":126410.68585299602,"volumeNotional":2825038855.675038,"tradesDone":3669199.0},{"date":"2023-03-05T00:00:00+00:00","open":22348.557517145302,"high":22663.786358985504,"low":22189.803438091967,"close":22433.141901199633,"volume":164977.92274369,"volumeNotional":3700973151.474348,"tradesDone":4365140.0},{"date":"2023-03-06T00:00:00+00:00","open":22432.42079890968,"high":22604.158075918673,"low":22260.755639498268,"close":22407.856206357712,"volume":220051.03349124696,"volumeNotional":4930871916.532267,"tradesDone":5579208.0},{"date":"2023-03-07T00:00:00+00:00","open":22407.78544494383,"high":22557.75346609151,"low":21925.38651659266,"close":22196.01333077293,"volume":312923.36840575404,"volumeNotional":6945651256.644485,"tradesDone":6805051.0},{"date":"2023-03-08T00:00:00+00:00","open":22196.516231385245,"high":22286.67148021186,"low":21576.22476428865,"close":21701.066618080036,"volume":324288.55411497195,"volumeNotional":7037407516.329859,"tradesDone":7199547.0},{"date":"2023-03-09T00:00:00+00:00","open":21700.130678069694,"high":21828.4485783622,"low":20033.532707329286,"close":20358.80594538473,"volume":469177.988154495,"volumeNotional":9551903614.68338,"tradesDone":9012340.0},{"date":"2023-03-10T00:00:00+00:00","open":20359.015298201055,"high":20364.28409489808,"low":19550.79323447636,"close":20217.025364156147,"volume":607665.151521093,"volumeNotional":12285181781.215725,"tradesDone":10043791.0},{"date":"2023-03-11T00:00:00+00:00","open":20216.013994410965,"high":20885.787417853026,"low":19887.294073306668,"close":20608.31095556546,"volume":433044.25016966,"volumeNotional":8924310565.016033,"tradesDone":8816837.0},{"date":"2023-03-12T00:00:00+00:00","open":20607.832859580714,"high":22336.149681645147,"low":20431.527006945962,"close":22192.69281286857,"volume":473717.985748779,"volumeNotional":10513077737.653503,"tradesDone":8901607.0},{"date":"2023-03-13T00:00:00+00:00","open":22193.987921282795,"high":24623.733257081625,"low":21885.82323429922,"close":24187.655049850575,"volume":755439.36759096,"volumeNotional":18272306834.36741,"tradesDone":13707875.0},{"date":"2023-03-14T00:00:00+00:00","open":24186.731084713705,"high":26498.513239674518,"low":24039.102900934104,"close":24734.138121488864,"volume":778704.6162816129,"volumeNotional":19260587534.9504,"tradesDone":14163547.0},{"date":"2023-03-15T00:00:00+00:00","open":24733.515542517143,"high":25311.99304916627,"low":23932.543907568026,"close":24382.07161143555,"volume":637435.3612997518,"volumeNotional":15541994626.871841,"tradesDone":11908088.0},{"date":"2023-03-16T00:00:00+00:00","open":24382.048799054122,"high":25208.935406751192,"low":24203.02849180725,"close":25030.48921556089,"volume":480833.26540094096,"volumeNotional":12035491864.101181,"tradesDone":9792622.0},{"date":"2023-03-17T00:00:00+00:00","open":25030.814468696008,"high":27830.562262254385,"low":24910.982306554783,"close":27446.279838770355,"volume":696402.6093887371,"volumeNotional":19113660897.733162,"tradesDone":12506946.0},{"date":"2023-03-18T00:00:00+00:00","open":27446.866546782778,"high":27781.46442110656,"low":26653.825538874808,"close":26982.051577725462,"volume":405178.53545737796,"volumeNotional":10932548141.898237,"tradesDone":9478941.0},{"date":"2023-03-19T00:00:00+00:00","open":26981.87986819447,"high":28478.71097386288,"low":26891.905934720326,"close":28050.330386850223,"volume":407187.529512644,"volumeNotional":11421744732.23499,"tradesDone":9220811.0},{"date":"2023-03-20T00:00:00+00:00","open":28051.118058643577,"high":28568.40049592391,"low":27216.594834584925,"close":27798.536291386794,"volume":525578.2631171329,"volumeNotional":14610306421.225657,"tradesDone":11461901.0},{"date":"2023-03-21T00:00:00+00:00","open":27798.3081589649,"high":28517.532566468268,"low":27403.888624347812,"close":28197.93305049566,"volume":452952.937069486,"volumeNotional":12772336594.51074,"tradesDone":11028812.0},{"date":"2023-03-22T00:00:00+00:00","open":28198.416014978484,"high":28891.57656419918,"low":26670.92195447159,"close":27314.896197671238,"volume":285080.68233111,"volumeNotional":7786949245.835559,"tradesDone":3962082.0},{"date":"2023-03-23T00:00:00+00:00","open":27314.60316990628,"high":28785.648117353863,"low":27185.628461519915,"close":28352.68633491559,"volume":178047.573365239,"volumeNotional":5048127000.3174925,"tradesDone":2708870.0},{"date":"2023-03-24T00:00:00+00:00","open":28353.33311100366,"high":28430.37142628591,"low":27049.98379295986,"close":27492.777830911058,"volume":113222.070595023,"volumeNotional":3112789232.424695,"tradesDone":1906189.0},{"date":"2023-03-25T00:00:00+00:00","open":27493.125286740007,"high":27851.600766038853,"low":27186.682682331964,"close":27492.53961942098,"volume":69834.353792928,"volumeNotional":1919923738.4487348,"tradesDone":1389686.0},{"date":"2023-03-26T00:00:00+00:00","open":27491.960826601942,"high":28227.84618347879,"low":27448.148946565314,"close":27995.420380192507,"volume":70316.739717935,"volumeNotional":1968546688.1681693,"tradesDone":1388686.0},{"date":"2023-03-27T00:00:00+00:00","open":27995.87566058183,"high":28049.44273343421,"low":26527.468611635708,"close":27146.81184455866,"volume":122776.79240064991,"volumeNotional":3332998482.1788826,"tradesDone":1954887.0},{"date":"2023-03-28T00:00:00+00:00","open":27146.892507791785,"high":27534.93745888457,"low":26664.19516746953,"close":27281.456202201356,"volume":106381.114770002,"volumeNotional":2902231723.339165,"tradesDone":2018099.0},{"date":"2023-03-29T00:00:00+00:00","open":27281.696342306175,"high":28656.79795532486,"low":27256.464858025658,"close":28359.403692552256,"volume":125638.37105392481,"volumeNotional":3563029283.9929256,"tradesDone":2278145.0},{"date":"2023-03-30T00:00:00+00:00","open":28359.58817500611,"high":29189.82244560705,"low":27708.593117492306,"close":28043.67866711094,"volume":142451.4687043699,"volumeNotional":3994863214.0033603,"tradesDone":2467444.0},{"date":"2023-03-31T00:00:00+00:00","open":28043.621161111594,"high":28660.65978578988,"low":27523.643876505976,"close":28477.839146521797,"volume":112214.00252795599,"volumeNotional":3195612313.978521,"tradesDone":1981453.0},{"date":"2023-04-01T00:00:00+00:00","open":28477.905325187417,"high":28826.764796371815,"low":28233.755997156444,"close":28467.52709041305,"volume":43822.84443634101,"volumeNotional":1247528011.1704943,"tradesDone":1087709.0},{"date":"2023-04-02T00:00:00+00:00","open":28467.092297308955,"high":28543.025888069165,"low":27870.760616689717,"close":28189.1954953179,"volume":51730.560743851995,"volumeNotional":1458242889.8908617,"tradesDone":1150207.0},{"date":"2023-04-03T00:00:00+00:00","open":28189.388861355168,"high":28514.89738857829,"low":27236.953917904593,"close":27813.068652742673,"volume":114956.22506374688,"volumeNotional":3197285379.75813,"tradesDone":2029381.0},{"date":"2023-04-04T00:00:00+00:00","open":27812.232569697495,"high":28447.977603275915,"low":27666.683963937794,"close":28179.550977743347,"volume":75262.597812757,"volumeNotional":2120866211.7819808,"tradesDone":1448132.0},{"date":"2023-04-05T00:00:00+00:00","open":28178.620174199867,"high":28790.93640051994,"low":27826.742800553253,"close":28182.40014485109,"volume":89303.4162063269,"volumeNotional":2516784609.8288846,"tradesDone":1600226.0},{"date":"2023-04-06T00:00:00+00:00","open":28181.226809797674,"high":28197.726297182675,"low":27722.80454397576,"close":28050.389287798567,"volume":60027.9693645,"volumeNotional":1683807908.8302715,"tradesDone":1254152.0},{"date":"2023-04-07T00:00:00+00:00","open":28049.129848845587,"high":28119.83006175765,"low":27779.958930234556,"close":27922.12348951081,"volume":36082.033404931,"volumeNotional":1007486992.4851375,"tradesDone":935208.0},{"date":"2023-04-08T00:00:00+00:00","open":27925.471526652775,"high":28172.54241430878,"low":27876.380087775582,"close":27956.293725887004,"volume":26598.338776819997,"volumeNotional":743590971.4654299,"tradesDone":804911.0},{"date":"2023-04-09T00:00:00+00:00","open":27956.573935229786,"high":28548.688569693295,"low":27817.042769722506,"close":28342.495064276176,"volume":44545.56860263101,"volumeNotional":1262532558.255445,"tradesDone":945568.0},{"date":"2023-04-10T00:00:00+00:00","open":28342.43055809878,"high":29779.67080827219,"low":28179.520213701635,"close":29656.61244743198,"volume":97128.765063421,"volumeNotional":2880510142.9835477,"tradesDone":1573253.0},{"date":"2023-04-11T00:00:00+00:00","open":29654.745199677203,"high":30557.198540379464,"low":29607.81561929335,"close":30225.469359186805,"volume":102481.52329064399,"volumeNotional":3097552142.104149,"tradesDone":1764534.0},{"date":"2023-04-12T00:00:00+00:00","open":30225.72508003706,"high":30504.601472108952,"low":29665.183850285972,"close":29911.02891865836,"volume":88613.49615458502,"volumeNotional":2650520846.0632143,"tradesDone":1596619.0},{"date":"2023-04-13T00:00:00+00:00","open":29911.141658694414,"high":30624.794090043593,"low":29875.267309562558,"close":30404.18681745729,"volume":75353.70665377901,"volumeNotional":2291068174.4893713,"tradesDone":1428219.0},{"date":"2023-04-14T00:00:00+00:00","open":30405.125538135544,"high":31034.785606224243,"low":29995.595089877344,"close":30495.442509464345,"volume":111628.49694776098,"volumeNotional":3404160411.0883613,"tradesDone":1952515.0},{"date":"2023-04-15T00:00:00+00:00","open":30495.835509853812,"high":30617.760587500758,"low":30232.21078718001,"close":30324.025972602365,"volume":36559.415698781995,"volumeNotional":1108628671.1930318,"tradesDone":1014796.0},{"date":"2023-04-16T00:00:00+00:00","open":30323.057441695695,"high":30577.531689790554,"low":30154.372637969736,"close":30328.186035822226,"volume":39591.095855641004,"volumeNotional":1200726120.4719508,"tradesDone":931312.0},{"date":"2023-04-17T00:00:00+00:00","open":30328.46552367096,"high":30346.16421998582,"low":29259.615981469815,"close":29448.489131984712,"volume":80986.505868898,"volumeNotional":2384930237.917659,"tradesDone":1381824.0},{"date":"2023-04-18T00:00:00+00:00","open":29448.619649516146,"high":30500.077279004283,"low":29116.796212942845,"close":30395.098257947626,"volume":87379.820628146,"volumeNotional":2655918233.7543364,"tradesDone":1438908.0},{"date":"2023-04-19T00:00:00+00:00","open":30395.16846215601,"high":30432.61094176216,"low":28567.995115067748,"close":28837.519850419303,"volume":124291.059136961,"volumeNotional":3584245885.0917525,"tradesDone":2064860.0},{"date":"2023-04-20T00:00:00+00:00","open":28838.508789484225,"high":29108.99807458294,"low":28005.488361156542,"close":28265.954795955946,"volume":106434.8614682109,"volumeNotional":3008482982.9742827,"tradesDone":1743454.0},{"date":"2023-04-21T00:00:00+00:00","open":28262.11974001594,"high":28380.135302684113,"low":27522.026597208638,"close":27715.097450066816,"volume":69773.45753696091,"volumeNotional":1933778175.0649705,"tradesDone":1185713.0},{"date":"2023-04-22T00:00:00+00:00","open":27263.391881269803,"high":27897.267786210876,"low":27141.596883538572,"close":27824.698633288474,"volume":12400.066247519999,"volumeNotional":345028106.3700562,"tradesDone":347581.0},{"date":"2023-04-23T00:00:00+00:00","open":27826.59679673722,"high":27826.602068722957,"low":27340.997971129862,"close":27599.502225204586,"volume":13307.54968058,"volumeNotional":367281747.02118826,"tradesDone":346658.0},{"date":"2023-04-24T00:00:00+00:00","open":27599.621634474883,"high":28005.278188531087,"low":26969.491026015952,"close":27525.23964615514,"volume":23992.601999789997,"volumeNotional":660402119.7790407,"tradesDone":480639.0},{"date":"2023-04-25T00:00:00+00:00","open":27523.69657396147,"high":28411.067894674634,"low":27199.679087188597,"close":28310.70962548191,"volume":22104.650063540004,"volumeNotional":625798329.3217714,"tradesDone":508476.0},{"date":"2023-04-26T00:00:00+00:00","open":28310.715696425294,"high":30046.94055832169,"low":27241.41319681689,"close":28430.996052002098,"volume":54794.776898359996,"volumeNotional":1557870085.6676087,"tradesDone":834063.0},{"date":"2023-04-27T00:00:00+00:00","open":28434.628926772093,"high":29902.782139278817,"low":28393.613034007954,"close":29487.236634049434,"volume":44510.0519411,"volumeNotional":1312478434.181047,"tradesDone":759196.0},{"date":"2023-04-28T00:00:00+00:00","open":29486.731825257353,"high":29608.814453889314,"low":28906.43362397016,"close":29341.341111277394,"volume":23478.47756923,"volumeNotional":688890019.1322523,"tradesDone":521039.0},{"date":"2023-04-29T00:00:00+00:00","open":29340.749529400142,"high":29473.660631063864,"low":29062.075256318374,"close":29252.946894678757,"volume":8090.212709180001,"volumeNotional":236662562.74829772,"tradesDone":282658.0},{"date":"2023-04-30T00:00:00+00:00","open":29253.783344011357,"high":29974.598381346354,"low":29107.38104905114,"close":29253.429147353683,"volume":14291.112259460002,"volumeNotional":418064039.9189908,"tradesDone":352101.0},{"date":"2023-05-01T00:00:00+00:00","open":29247.47953069144,"high":29352.1852811805,"low":27671.833637914755,"close":28087.66078391997,"volume":30373.589957109998,"volumeNotional":853123091.5051839,"tradesDone":609569.0},{"date":"2023-05-02T00:00:00+00:00","open":28087.902753940016,"high":28909.88961857747,"low":27890.097757422976,"close":28701.565610101043,"volume":22091.20594578,"volumeNotional":634052196.8590589,"tradesDone":560143.0},{"date":"2023-05-03T00:00:00+00:00","open":28704.26371631166,"high":29283.411816217427,"low":28137.263985393343,"close":29048.476020954815,"volume":27598.15038133,"volumeNotional":801684209.5747695,"tradesDone":621582.0},{"date":"2023-05-04T00:00:00+00:00","open":29048.255579948236,"high":29393.889437573434,"low":28685.527053446334,"close":28875.94775363128,"volume":18918.530587769998,"volumeNotional":546290500.8279217,"tradesDone":477635.0},{"date":"2023-05-05T00:00:00+00:00","open":28873.201416660264,"high":29717.353487988858,"low":28814.370750031427,"close":29552.746275608606,"volume":24331.01272661,"volumeNotional":719048245.7381092,"tradesDone":543637.0},{"date":"2023-05-06T00:00:00+00:00","open":29555.801043590734,"high":29867.763769028694,"low":28421.402957684157,"close":28970.22784016688,"volume":15712.83635088,"volumeNotional":455204449.10024995,"tradesDone":404158.0},{"date":"2023-05-07T00:00:00+00:00","open":28965.276678162198,"high":29243.84742076087,"low":28565.865042788984,"close":28696.722203602185,"volume":9987.49573574,"volumeNotional":286608390.6381922,"tradesDone":310619.0},{"date":"2023-05-08T00:00:00+00:00","open":28472.541377523143,"high":28675.263918379515,"low":27282.739121348808,"close":27695.29097613682,"volume":19715.42092036,"volumeNotional":546024319.1063855,"tradesDone":454006.0},{"date":"2023-05-09T00:00:00+00:00","open":27693.557653515818,"high":27837.148489330437,"low":27367.338185714238,"close":27647.14135749171,"volume":11886.394124100001,"volumeNotional":328624818.57985157,"tradesDone":326762.0},{"date":"2023-05-10T00:00:00+00:00","open":27647.929683865335,"high":28335.057311092238,"low":26803.82655311878,"close":27623.148526039015,"volume":23298.802386069998,"volumeNotional":643586278.7892437,"tradesDone":403650.0},{"date":"2023-05-11T00:00:00+00:00","open":27621.319171040424,"high":27651.261883478175,"low":26713.825715273088,"close":26989.29358627093,"volume":17071.37896,"volumeNotional":460744458.67392844,"tradesDone":363044.0},{"date":"2023-05-12T00:00:00+00:00","open":26987.750999734784,"high":27101.05092687869,"low":25816.344886340754,"close":26808.83648070762,"volume":23175.62035248,"volumeNotional":621311416.3685958,"tradesDone":442896.0},{"date":"2023-05-13T00:00:00+00:00","open":26808.573459713167,"high":27065.32502367204,"low":26700.990076284368,"close":26788.95717195767,"volume":5978.35866155,"volumeNotional":160153994.14286512,"tradesDone":222213.0},{"date":"2023-05-14T00:00:00+00:00","open":26787.70541614048,"high":27217.80454267041,"low":26584.98549063506,"close":26929.750351193816,"volume":5325.23155407,"volumeNotional":143407156.31340498,"tradesDone":216690.0},{"date":"2023-05-15T00:00:00+00:00","open":26929.856052445924,"high":27678.363087021284,"low":26739.767346563985,"close":27172.140952780337,"volume":14778.894882440001,"volumeNotional":401574214.8719837,"tradesDone":340076.0},{"date":"2023-05-16T00:00:00+00:00","open":27167.37180420204,"high":27304.486816110348,"low":26861.79601276833,"close":27038.70675406801,"volume":13401.24438209,"volumeNotional":362352316.9869329,"tradesDone":306961.0},{"date":"2023-05-17T00:00:00+00:00","open":27040.01868472971,"high":27516.069168144164,"low":26552.424937236,"close":27409.062924636062,"volume":17194.46485198,"volumeNotional":471284169.0833629,"tradesDone":328612.0},{"date":"2023-05-18T00:00:00+00:00","open":27409.553499459897,"high":27488.153460471985,"low":26365.38242974328,"close":26824.636480646677,"volume":16108.27923974,"volumeNotional":432098734.93477315,"tradesDone":327274.0},{"date":"2023-05-19T00:00:00+00:00","open":26820.999682086232,"high":27188.324159971864,"low":26634.591305349826,"close":26890.761192095222,"volume":9119.23955382,"volumeNotional":245223293.0952826,"tradesDone":266717.0},{"date":"2023-05-20T00:00:00+00:00","open":26890.796718191526,"high":27174.697399748005,"low":26837.657549591877,"close":27113.860537351844,"volume":3976.86769966,"volumeNotional":107828236.18408048,"tradesDone":168960.0},{"date":"2023-05-21T00:00:00+00:00","open":27114.704406744604,"high":27286.46917984799,"low":26670.045070663025,"close":26753.03816675353,"volume":6930.686227840001,"volumeNotional":185416913.1751966,"tradesDone":190327.0},{"date":"2023-05-22T00:00:00+00:00","open":26751.422279237282,"high":27105.811537252463,"low":26535.979585871653,"close":26855.41485048113,"volume":10058.69892581,"volumeNotional":270130532.50871646,"tradesDone":255036.0},{"date":"2023-05-23T00:00:00+00:00","open":26854.944218919427,"high":27502.248011734497,"low":26804.574850073415,"close":27224.00254892539,"volume":13529.55216089,"volumeNotional":368328562.51388836,"tradesDone":306007.0},{"date":"2023-05-24T00:00:00+00:00","open":27223.47150621644,"high":27225.56663765902,"low":26069.99356361116,"close":26323.143527303786,"volume":20340.303927930003,"volumeNotional":535420739.6838824,"tradesDone":361731.0},{"date":"2023-05-25T00:00:00+00:00","open":26323.16013830477,"high":26624.593469542837,"low":25866.18001135021,"close":26479.757462389596,"volume":14245.59330562,"volumeNotional":377219855.64065844,"tradesDone":310426.0},{"date":"2023-05-26T00:00:00+00:00","open":26480.37889292411,"high":26948.061915079623,"low":26336.790891938206,"close":26717.25710800466,"volume":12383.845352429998,"volumeNotional":330862380.26664084,"tradesDone":278847.0},{"date":"2023-05-27T00:00:00+00:00","open":26713.903175083964,"high":26934.43250818705,"low":26560.75062578429,"close":26869.686068549425,"volume":4345.55878206,"volumeNotional":116763800.26638019,"tradesDone":166510.0},{"date":"2023-05-28T00:00:00+00:00","open":26872.62671434272,"high":28274.59197224525,"low":26784.175033765834,"close":28075.96264143509,"volume":13205.203105560002,"volumeNotional":370748789.06426525,"tradesDone":257003.0},{"date":"2023-05-29T00:00:00+00:00","open":28074.02273842439,"high":28471.035133920494,"low":27537.401911366873,"close":27746.122340239403,"volume":13667.199090490001,"volumeNotional":379211778.01314425,"tradesDone":281796.0},{"date":"2023-05-30T00:00:00+00:00","open":27745.4370434407,"high":28056.471343790403,"low":27557.275664111574,"close":27700.88977281828,"volume":14133.71955223,"volumeNotional":391516607.3962498,"tradesDone":312104.0},{"date":"2023-05-31T00:00:00+00:00","open":27701.991855086773,"high":27844.222073245546,"low":26843.812147761822,"close":27222.163647614194,"volume":18281.035789470003,"volumeNotional":497649347.90884435,"tradesDone":355318.0},{"date":"2023-06-01T00:00:00+00:00","open":27221.91634087899,"high":27358.634040967616,"low":26614.083702803593,"close":26827.381582501104,"volume":14371.844910249998,"volumeNotional":385558967.451803,"tradesDone":350869.0},{"date":"2023-06-02T00:00:00+00:00","open":26826.88998267247,"high":27307.312997414876,"low":26507.710424894784,"close":27251.151462640217,"volume":14637.30025375,"volumeNotional":398883286.2190833,"tradesDone":342946.0},{"date":"2023-06-03T00:00:00+00:00","open":27252.733037080354,"high":27341.05910613207,"low":26924.580105079418,"close":27076.886752617964,"volume":4702.83227989,"volumeNotional":127338057.05913767,"tradesDone":186200.0},{"date":"2023-06-04T00:00:00+00:00","open":27077.725008848007,"high":27468.432085113214,"low":26960.673160533373,"close":27122.291618814626,"volume":5188.868145299999,"volumeNotional":140733995.00840434,"tradesDone":194052.0},{"date":"2023-06-05T00:00:00+00:00","open":27122.018337875525,"high":27135.91269814294,"low":25395.269396851225,"close":25737.608234366533,"volume":23068.073136000003,"volumeNotional":593717029.096083,"tradesDone":508512.0},{"date":"2023-06-06T00:00:00+00:00","open":25739.44609922973,"high":27367.30342715931,"low":25352.44191369581,"close":27242.45212263633,"volume":23623.905409249997,"volumeNotional":643573112.0611824,"tradesDone":492875.0}]}]'
headers:
- allow:
+ Allow:
- GET, HEAD, OPTIONS
- content-length:
+ Content-Length:
- '35202'
- content-type:
+ Content-Type:
- application/json
- date:
- - Wed, 15 Nov 2023 18:05:34 GMT
- server:
+ Date:
+ - Thu, 29 Feb 2024 04:25:59 GMT
+ Server:
- nginx/1.18.0 (Ubuntu)
- vary:
+ Vary:
- Accept, Cookie, Origin
x-frame-options:
- SAMEORIGIN
diff --git a/openbb_platform/providers/tiingo/tests/record/http/test_tiingo_fetchers/test_tiingo_currency_historical_fetcher.yaml b/openbb_platform/providers/tiingo/tests/record/http/test_tiingo_fetchers/test_tiingo_currency_historical_fetcher.yaml
index 3e71853ea64..c52c5778263 100644
--- a/openbb_platform/providers/tiingo/tests/record/http/test_tiingo_fetchers/test_tiingo_currency_historical_fetcher.yaml
+++ b/openbb_platform/providers/tiingo/tests/record/http/test_tiingo_fetchers/test_tiingo_currency_historical_fetcher.yaml
@@ -3,28 +3,28 @@ interactions:
body: null
headers:
Accept:
- - '*/*'
+ - application/json
Accept-Encoding:
- - gzip, deflate, br
+ - gzip, deflate
Connection:
- keep-alive
method: GET
- uri: https://api.tiingo.com/tiingo/fx/prices?endDate=2023-06-06&resampleFreq=1day&startDate=2023-01-01&tickers=EURUSD&token=MOCK_TOKEN
+ uri: https://api.tiingo.com/tiingo/fx/prices?endDate=2023-06-06&resampleFreq=1Day&startDate=2023-01-01&tickers=EURUSD&token=MOCK_TOKEN
response:
body:
string: '[{"date":"2023-01-01T00:00:00.000Z","ticker":"eurusd","open":1.070235,"high":1.070235,"low":1.070235,"close":1.070235},{"date":"2023-01-02T00:00:00.000Z","ticker":"eurusd","open":1.070595,"high":1.07094,"low":1.065015,"close":1.067685},{"date":"2023-01-03T00:00:00.000Z","ticker":"eurusd","open":1.06768,"high":1.06804,"low":1.051965,"close":1.05457},{"date":"2023-01-04T00:00:00.000Z","ticker":"eurusd","open":1.054575,"high":1.063555,"low":1.054555,"close":1.06063},{"date":"2023-01-05T00:00:00.000Z","ticker":"eurusd","open":1.060635,"high":1.063155,"low":1.051515,"close":1.052105},{"date":"2023-01-06T00:00:00.000Z","ticker":"eurusd","open":1.05211,"high":1.06483,"low":1.04827,"close":1.06439},{"date":"2023-01-08T00:00:00.000Z","ticker":"eurusd","open":1.064195,"high":1.0663,"low":1.063835,"close":1.066285},{"date":"2023-01-09T00:00:00.000Z","ticker":"eurusd","open":1.06629,"high":1.076065,"low":1.065175,"close":1.073295},{"date":"2023-01-10T00:00:00.000Z","ticker":"eurusd","open":1.07329,"high":1.075935,"low":1.071225,"close":1.07387},{"date":"2023-01-11T00:00:00.000Z","ticker":"eurusd","open":1.073865,"high":1.077655,"low":1.07257,"close":1.076555},{"date":"2023-01-12T00:00:00.000Z","ticker":"eurusd","open":1.07656,"high":1.086705,"low":1.073125,"close":1.085985},{"date":"2023-01-13T00:00:00.000Z","ticker":"eurusd","open":1.086005,"high":1.086805,"low":1.078055,"close":1.08336},{"date":"2023-01-15T00:00:00.000Z","ticker":"eurusd","open":1.083365,"high":1.0834,"low":1.082035,"close":1.082285},{"date":"2023-01-16T00:00:00.000Z","ticker":"eurusd","open":1.08229,"high":1.087435,"low":1.080165,"close":1.082985},{"date":"2023-01-17T00:00:00.000Z","ticker":"eurusd","open":1.08298,"high":1.086955,"low":1.07748,"close":1.078955},{"date":"2023-01-18T00:00:00.000Z","ticker":"eurusd","open":1.07896,"high":1.088755,"low":1.07662,"close":1.079755},{"date":"2023-01-19T00:00:00.000Z","ticker":"eurusd","open":1.079765,"high":1.084015,"low":1.07824,"close":1.083365},{"date":"2023-01-20T00:00:00.000Z","ticker":"eurusd","open":1.08337,"high":1.085905,"low":1.080245,"close":1.085645},{"date":"2023-01-22T00:00:00.000Z","ticker":"eurusd","open":1.0864,"high":1.086985,"low":1.08615,"close":1.086435},{"date":"2023-01-23T00:00:00.000Z","ticker":"eurusd","open":1.08643,"high":1.092705,"low":1.084635,"close":1.08715},{"date":"2023-01-24T00:00:00.000Z","ticker":"eurusd","open":1.08716,"high":1.08982,"low":1.08352,"close":1.089005},{"date":"2023-01-25T00:00:00.000Z","ticker":"eurusd","open":1.089015,"high":1.09238,"low":1.085735,"close":1.09209},{"date":"2023-01-26T00:00:00.000Z","ticker":"eurusd","open":1.092085,"high":1.092945,"low":1.085055,"close":1.08933},{"date":"2023-01-27T00:00:00.000Z","ticker":"eurusd","open":1.089335,"high":1.090045,"low":1.08378,"close":1.086915},{"date":"2023-01-29T00:00:00.000Z","ticker":"eurusd","open":1.08622,"high":1.087295,"low":1.08614,"close":1.087205},{"date":"2023-01-30T00:00:00.000Z","ticker":"eurusd","open":1.087195,"high":1.091395,"low":1.083925,"close":1.085005},{"date":"2023-01-31T00:00:00.000Z","ticker":"eurusd","open":1.08501,"high":1.087505,"low":1.08021,"close":1.086085},{"date":"2023-02-01T00:00:00.000Z","ticker":"eurusd","open":1.086075,"high":1.103335,"low":1.08524,"close":1.101285},{"date":"2023-02-02T00:00:00.000Z","ticker":"eurusd","open":1.10129,"high":1.10269,"low":1.088555,"close":1.09048},{"date":"2023-02-03T00:00:00.000Z","ticker":"eurusd","open":1.090475,"high":1.094015,"low":1.079275,"close":1.07941},{"date":"2023-02-05T00:00:00.000Z","ticker":"eurusd","open":1.079055,"high":1.07985,"low":1.078555,"close":1.078955},{"date":"2023-02-06T00:00:00.000Z","ticker":"eurusd","open":1.07894,"high":1.079895,"low":1.07094,"close":1.072915},{"date":"2023-02-07T00:00:00.000Z","ticker":"eurusd","open":1.07291,"high":1.076665,"low":1.066925,"close":1.073045},{"date":"2023-02-08T00:00:00.000Z","ticker":"eurusd","open":1.07305,"high":1.076085,"low":1.070955,"close":1.071555},{"date":"2023-02-09T00:00:00.000Z","ticker":"eurusd","open":1.071545,"high":1.07909,"low":1.070965,"close":1.073925},{"date":"2023-02-10T00:00:00.000Z","ticker":"eurusd","open":1.07393,"high":1.075285,"low":1.06664,"close":1.067705},{"date":"2023-02-12T00:00:00.000Z","ticker":"eurusd","open":1.06812,"high":1.06826,"low":1.06713,"close":1.067735},{"date":"2023-02-13T00:00:00.000Z","ticker":"eurusd","open":1.06774,"high":1.073245,"low":1.065565,"close":1.073115},{"date":"2023-02-14T00:00:00.000Z","ticker":"eurusd","open":1.073105,"high":1.08031,"low":1.070685,"close":1.073545},{"date":"2023-02-15T00:00:00.000Z","ticker":"eurusd","open":1.07354,"high":1.074465,"low":1.066065,"close":1.069155},{"date":"2023-02-16T00:00:00.000Z","ticker":"eurusd","open":1.069175,"high":1.072245,"low":1.065465,"close":1.066555},{"date":"2023-02-17T00:00:00.000Z","ticker":"eurusd","open":1.06656,"high":1.069845,"low":1.061285,"close":1.069415},{"date":"2023-02-19T00:00:00.000Z","ticker":"eurusd","open":1.068945,"high":1.06934,"low":1.068265,"close":1.068425},{"date":"2023-02-20T00:00:00.000Z","ticker":"eurusd","open":1.06843,"high":1.070475,"low":1.067045,"close":1.068245},{"date":"2023-02-21T00:00:00.000Z","ticker":"eurusd","open":1.06824,"high":1.069825,"low":1.06375,"close":1.065145},{"date":"2023-02-22T00:00:00.000Z","ticker":"eurusd","open":1.06514,"high":1.066415,"low":1.059925,"close":1.060555},{"date":"2023-02-23T00:00:00.000Z","ticker":"eurusd","open":1.060565,"high":1.062795,"low":1.05772,"close":1.05978},{"date":"2023-02-24T00:00:00.000Z","ticker":"eurusd","open":1.059775,"high":1.061445,"low":1.05362,"close":1.054585},{"date":"2023-02-26T00:00:00.000Z","ticker":"eurusd","open":1.05471,"high":1.055545,"low":1.05469,"close":1.055355},{"date":"2023-02-27T00:00:00.000Z","ticker":"eurusd","open":1.05535,"high":1.061995,"low":1.053315,"close":1.060975},{"date":"2023-02-28T00:00:00.000Z","ticker":"eurusd","open":1.060965,"high":1.06453,"low":1.057425,"close":1.057695},{"date":"2023-03-01T00:00:00.000Z","ticker":"eurusd","open":1.057705,"high":1.069165,"low":1.056545,"close":1.06688},{"date":"2023-03-02T00:00:00.000Z","ticker":"eurusd","open":1.066875,"high":1.067295,"low":1.057655,"close":1.059855},{"date":"2023-03-03T00:00:00.000Z","ticker":"eurusd","open":1.05985,"high":1.06387,"low":1.058855,"close":1.063405},{"date":"2023-03-05T00:00:00.000Z","ticker":"eurusd","open":1.06283,"high":1.06294,"low":1.062365,"close":1.062585},{"date":"2023-03-06T00:00:00.000Z","ticker":"eurusd","open":1.06259,"high":1.069445,"low":1.062235,"close":1.068565},{"date":"2023-03-07T00:00:00.000Z","ticker":"eurusd","open":1.06856,"high":1.069455,"low":1.054615,"close":1.05485},{"date":"2023-03-08T00:00:00.000Z","ticker":"eurusd","open":1.054855,"high":1.0574,"low":1.052455,"close":1.054915},{"date":"2023-03-09T00:00:00.000Z","ticker":"eurusd","open":1.05492,"high":1.059125,"low":1.053815,"close":1.058565},{"date":"2023-03-10T00:00:00.000Z","ticker":"eurusd","open":1.05857,"high":1.070065,"low":1.0574,"close":1.06399},{"date":"2023-03-12T00:00:00.000Z","ticker":"eurusd","open":1.068065,"high":1.07037,"low":1.06779,"close":1.06812},{"date":"2023-03-13T00:00:00.000Z","ticker":"eurusd","open":1.068125,"high":1.074865,"low":1.065045,"close":1.072305},{"date":"2023-03-14T00:00:00.000Z","ticker":"eurusd","open":1.07231,"high":1.074965,"low":1.067895,"close":1.072705},{"date":"2023-03-15T00:00:00.000Z","ticker":"eurusd","open":1.07271,"high":1.075995,"low":1.051625,"close":1.058185},{"date":"2023-03-16T00:00:00.000Z","ticker":"eurusd","open":1.05819,"high":1.063565,"low":1.055145,"close":1.06137},{"date":"2023-03-17T00:00:00.000Z","ticker":"eurusd","open":1.061375,"high":1.06853,"low":1.061175,"close":1.066485},{"date":"2023-03-19T00:00:00.000Z","ticker":"eurusd","open":1.068485,"high":1.06886,"low":1.06665,"close":1.068085},{"date":"2023-03-20T00:00:00.000Z","ticker":"eurusd","open":1.068095,"high":1.07309,"low":1.063135,"close":1.071875},{"date":"2023-03-21T00:00:00.000Z","ticker":"eurusd","open":1.07189,"high":1.078845,"low":1.070415,"close":1.07728},{"date":"2023-03-22T00:00:00.000Z","ticker":"eurusd","open":1.077275,"high":1.091255,"low":1.075915,"close":1.08691},{"date":"2023-03-23T00:00:00.000Z","ticker":"eurusd","open":1.086935,"high":1.092975,"low":1.082445,"close":1.08347},{"date":"2023-03-24T00:00:00.000Z","ticker":"eurusd","open":1.083475,"high":1.083725,"low":1.07137,"close":1.07587},{"date":"2023-03-26T00:00:00.000Z","ticker":"eurusd","open":1.077265,"high":1.07799,"low":1.07658,"close":1.077775},{"date":"2023-03-27T00:00:00.000Z","ticker":"eurusd","open":1.07776,"high":1.08079,"low":1.07451,"close":1.080645},{"date":"2023-03-28T00:00:00.000Z","ticker":"eurusd","open":1.080635,"high":1.084865,"low":1.08037,"close":1.08391},{"date":"2023-03-29T00:00:00.000Z","ticker":"eurusd","open":1.083925,"high":1.087125,"low":1.081835,"close":1.08428},{"date":"2023-03-30T00:00:00.000Z","ticker":"eurusd","open":1.084285,"high":1.09263,"low":1.08237,"close":1.090425},{"date":"2023-03-31T00:00:00.000Z","ticker":"eurusd","open":1.090415,"high":1.092585,"low":1.083705,"close":1.084245},{"date":"2023-04-02T00:00:00.000Z","ticker":"eurusd","open":1.084275,"high":1.08453,"low":1.080145,"close":1.080265},{"date":"2023-04-03T00:00:00.000Z","ticker":"eurusd","open":1.080295,"high":1.091665,"low":1.07883,"close":1.090695},{"date":"2023-04-04T00:00:00.000Z","ticker":"eurusd","open":1.090705,"high":1.097335,"low":1.08831,"close":1.095775},{"date":"2023-04-05T00:00:00.000Z","ticker":"eurusd","open":1.09579,"high":1.096965,"low":1.08911,"close":1.090315},{"date":"2023-04-06T00:00:00.000Z","ticker":"eurusd","open":1.09033,"high":1.09377,"low":1.08848,"close":1.091985},{"date":"2023-04-07T00:00:00.000Z","ticker":"eurusd","open":1.091995,"high":1.09241,"low":1.08764,"close":1.09031},{"date":"2023-04-09T00:00:00.000Z","ticker":"eurusd","open":1.090365,"high":1.091365,"low":1.090145,"close":1.09132},{"date":"2023-04-10T00:00:00.000Z","ticker":"eurusd","open":1.09134,"high":1.091725,"low":1.083145,"close":1.0869},{"date":"2023-04-11T00:00:00.000Z","ticker":"eurusd","open":1.086895,"high":1.0928,"low":1.086725,"close":1.09164},{"date":"2023-04-12T00:00:00.000Z","ticker":"eurusd","open":1.09165,"high":1.100035,"low":1.091485,"close":1.0997},{"date":"2023-04-13T00:00:00.000Z","ticker":"eurusd","open":1.099705,"high":1.106775,"low":1.097705,"close":1.10518},{"date":"2023-04-14T00:00:00.000Z","ticker":"eurusd","open":1.105195,"high":1.10758,"low":1.09725,"close":1.099455},{"date":"2023-04-16T00:00:00.000Z","ticker":"eurusd","open":1.09929,"high":1.09962,"low":1.098345,"close":1.098465},{"date":"2023-04-17T00:00:00.000Z","ticker":"eurusd","open":1.098455,"high":1.099975,"low":1.090925,"close":1.092465},{"date":"2023-04-18T00:00:00.000Z","ticker":"eurusd","open":1.092475,"high":1.0983,"low":1.092245,"close":1.097505},{"date":"2023-04-19T00:00:00.000Z","ticker":"eurusd","open":1.09751,"high":1.098415,"low":1.091745,"close":1.09519},{"date":"2023-04-20T00:00:00.000Z","ticker":"eurusd","open":1.095195,"high":1.098965,"low":1.093355,"close":1.09678},{"date":"2023-04-21T00:00:00.000Z","ticker":"eurusd","open":1.096755,"high":1.09938,"low":1.093815,"close":1.09895},{"date":"2023-04-24T00:00:00.000Z","ticker":"eurusd","open":1.102605,"high":1.105725,"low":1.102055,"close":1.105725},{"date":"2023-04-25T00:00:00.000Z","ticker":"eurusd","open":1.10572,"high":1.106715,"low":1.096435,"close":1.097815},{"date":"2023-04-26T00:00:00.000Z","ticker":"eurusd","open":1.09781,"high":1.109545,"low":1.096855,"close":1.104535},{"date":"2023-04-27T00:00:00.000Z","ticker":"eurusd","open":1.104525,"high":1.106355,"low":1.09922,"close":1.103175},{"date":"2023-04-28T00:00:00.000Z","ticker":"eurusd","open":1.103185,"high":1.104505,"low":1.096265,"close":1.10168},{"date":"2023-04-30T00:00:00.000Z","ticker":"eurusd","open":1.10229,"high":1.10231,"low":1.101015,"close":1.101075},{"date":"2023-05-01T00:00:00.000Z","ticker":"eurusd","open":1.101095,"high":1.10356,"low":1.09645,"close":1.096875},{"date":"2023-05-02T00:00:00.000Z","ticker":"eurusd","open":1.096885,"high":1.101395,"low":1.094225,"close":1.10109},{"date":"2023-05-03T00:00:00.000Z","ticker":"eurusd","open":1.101085,"high":1.10914,"low":1.1005,"close":1.106865},{"date":"2023-05-04T00:00:00.000Z","ticker":"eurusd","open":1.106875,"high":1.10916,"low":1.098625,"close":1.102305},{"date":"2023-05-05T00:00:00.000Z","ticker":"eurusd","open":1.102315,"high":1.104795,"low":1.096685,"close":1.10188},{"date":"2023-05-07T00:00:00.000Z","ticker":"eurusd","open":1.102015,"high":1.102385,"low":1.101445,"close":1.101835},{"date":"2023-05-08T00:00:00.000Z","ticker":"eurusd","open":1.10185,"high":1.105375,"low":1.099545,"close":1.099665},{"date":"2023-05-09T00:00:00.000Z","ticker":"eurusd","open":1.099645,"high":1.100085,"low":1.094125,"close":1.096475},{"date":"2023-05-10T00:00:00.000Z","ticker":"eurusd","open":1.09648,"high":1.100695,"low":1.094165,"close":1.098285},{"date":"2023-05-11T00:00:00.000Z","ticker":"eurusd","open":1.09828,"high":1.09982,"low":1.090025,"close":1.091255},{"date":"2023-05-12T00:00:00.000Z","ticker":"eurusd","open":1.091245,"high":1.09356,"low":1.084805,"close":1.084995},{"date":"2023-05-14T00:00:00.000Z","ticker":"eurusd","open":1.085515,"high":1.08559,"low":1.08424,"close":1.085295},{"date":"2023-05-15T00:00:00.000Z","ticker":"eurusd","open":1.085305,"high":1.08909,"low":1.08483,"close":1.087375},{"date":"2023-05-16T00:00:00.000Z","ticker":"eurusd","open":1.08738,"high":1.090465,"low":1.085515,"close":1.086555},{"date":"2023-05-17T00:00:00.000Z","ticker":"eurusd","open":1.08655,"high":1.087365,"low":1.081045,"close":1.083805},{"date":"2023-05-18T00:00:00.000Z","ticker":"eurusd","open":1.083795,"high":1.08481,"low":1.076265,"close":1.077515},{"date":"2023-05-19T00:00:00.000Z","ticker":"eurusd","open":1.077525,"high":1.082885,"low":1.076015,"close":1.08059},{"date":"2023-05-21T00:00:00.000Z","ticker":"eurusd","open":1.080745,"high":1.08243,"low":1.080695,"close":1.08221},{"date":"2023-05-22T00:00:00.000Z","ticker":"eurusd","open":1.082215,"high":1.083135,"low":1.07957,"close":1.081065},{"date":"2023-05-23T00:00:00.000Z","ticker":"eurusd","open":1.081085,"high":1.082065,"low":1.076045,"close":1.07694},{"date":"2023-05-24T00:00:00.000Z","ticker":"eurusd","open":1.076925,"high":1.080125,"low":1.074235,"close":1.075575},{"date":"2023-05-25T00:00:00.000Z","ticker":"eurusd","open":1.07558,"high":1.07558,"low":1.070745,"close":1.072365},{"date":"2023-05-26T00:00:00.000Z","ticker":"eurusd","open":1.072355,"high":1.075875,"low":1.070185,"close":1.072565},{"date":"2023-05-28T00:00:00.000Z","ticker":"eurusd","open":1.07239,"high":1.07294,"low":1.071845,"close":1.072175},{"date":"2023-05-29T00:00:00.000Z","ticker":"eurusd","open":1.072145,"high":1.074355,"low":1.070575,"close":1.070695},{"date":"2023-05-30T00:00:00.000Z","ticker":"eurusd","open":1.070665,"high":1.074665,"low":1.067265,"close":1.073185},{"date":"2023-05-31T00:00:00.000Z","ticker":"eurusd","open":1.073175,"high":1.073575,"low":1.063525,"close":1.069355},{"date":"2023-06-01T00:00:00.000Z","ticker":"eurusd","open":1.069365,"high":1.076855,"low":1.066195,"close":1.076065},{"date":"2023-06-02T00:00:00.000Z","ticker":"eurusd","open":1.07607,"high":1.077905,"low":1.070535,"close":1.07075},{"date":"2023-06-04T00:00:00.000Z","ticker":"eurusd","open":1.07093,"high":1.07103,"low":1.069395,"close":1.069705},{"date":"2023-06-05T00:00:00.000Z","ticker":"eurusd","open":1.069695,"high":1.07226,"low":1.067465,"close":1.071145},{"date":"2023-06-06T00:00:00.000Z","ticker":"eurusd","open":1.07115,"high":1.073295,"low":1.066715,"close":1.069875}]'
headers:
- allow:
+ Allow:
- GET, HEAD, OPTIONS
- content-length:
+ Content-Length:
- '15623'
- content-type:
+ Content-Type:
- application/json
- date:
- - Wed, 15 Nov 2023 18:05:34 GMT
- server:
+ Date:
+ - Thu, 29 Feb 2024 04:26:42 GMT
+ Server:
- nginx/1.18.0 (Ubuntu)
- vary:
+ Vary:
- Accept, Cookie, Origin
x-frame-options:
- SAMEORIGIN
diff --git a/openbb_platform/providers/tmx/openbb_tmx/__init__.py b/openbb_platform/providers/tmx/openbb_tmx/__init__.py
index 63ffe49f201..4372506aa23 100644
--- a/openbb_platform/providers/tmx/openbb_tmx/__init__.py
+++ b/openbb_platform/providers/tmx/openbb_tmx/__init__.py
@@ -55,6 +55,7 @@ tmx_provider = Provider(
"EtfHoldings": TmxEtfHoldingsFetcher,
"EtfSectors": TmxEtfSectorsFetcher,
"EtfCountries": TmxEtfCountriesFetcher,
+ "EtfHistorical": TmxEquityHistoricalFetcher,
"EtfInfo": TmxEtfInfoFetcher,
"EquityGainers": TmxGainersFetcher,
"HistoricalDividends": TmxHistoricalDividendsFetcher,
diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/__init__.py b/openbb_platform/providers/yfinance/openbb_yfinance/__init__.py
index dc8195cf4f4..ad777281871 100644
--- a/openbb_platform/providers/yfinance/openbb_yfinance/__init__.py
+++ b/openbb_platform/providers/yfinance/openbb_yfinance/__init__.py
@@ -12,7 +12,6 @@ from openbb_yfinance.models.currency_historical import YFinanceCurrencyHistorica
from openbb_yfinance.models.equity_historical import YFinanceEquityHistoricalFetcher
from openbb_yfinance.models.equity_profile import YFinanceEquityProfileFetcher
from openbb_yfinance.models.equity_quote import YFinanceEquityQuoteFetcher
-from openbb_yfinance.models.etf_historical import YFinanceEtfHistoricalFetcher
from openbb_yfinance.models.etf_info import YFinanceEtfInfoFetcher
from openbb_yfinance.models.futures_curve import YFinanceFuturesCurveFetcher
from openbb_yfinance.models.futures_historical import YFinanceFuturesHistoricalFetcher
@@ -62,7 +61,7 @@ yfinance_provider = Provider(
"EquityQuote": YFinanceEquityQuoteFetcher,
"EquityUndervaluedGrowth": YFUndervaluedGrowthEquitiesFetcher,
"EquityUndervaluedLargeCaps": YFUndervaluedLargeCapsFetcher,
- "EtfHistorical": YFinanceEtfHistoricalFetcher,
+ "EtfHistorical": YFinanceEquityHistoricalFetcher,
"EtfInfo": YFinanceEtfInfoFetcher,
"FuturesCurve": YFinanceFuturesCurveFetcher,
"FuturesHistorical": YFinanceFuturesHistoricalFetcher,
@@ -72,7 +71,7 @@ yfinance_provider = Provider(
"IndexHistorical": YFinanceIndexHistoricalFetcher,
"KeyExecutives": YFinanceKeyExecutivesFetcher,
"KeyMetrics": YFinanceKeyMetricsFetcher,
- "MarketIndices": YFinanceMarketIndicesFetcher,
+ "MarketIndices": YFinanceIndexHistoricalFetcher,
"PriceTargetConsensus": YFinancePriceTargetConsensusFetcher,
"ShareStatistics": YFinanceShareStatisticsFetcher,
},
diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/crypto_historical.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/crypto_historical.py
index 845b5215147..e6958bcf5cb 100644
--- a/openbb_platform/providers/yfinance/openbb_yfinance/models/crypto_historical.py
+++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/crypto_historical.py
@@ -1,10 +1,11 @@
"""Yahoo Finance Crypto Historical Price Model."""
+# pylint: disable=unused-argument
# ruff: noqa: SIM105
-from datetime import datetime, timedelta
-from typing import Any, Dict, List, Optional
+from datetime import datetime
+from typing import Any, Dict, List, Literal, Optional
from dateutil.relativedelta import relativedelta
from openbb_core.provider.abstract.fetcher import Fetcher
@@ -15,8 +16,7 @@ from openbb_core.provider.standard_models.crypto_historical import (
from openbb_core.provider.utils.descriptions import QUERY_DESCRIPTIONS
from openbb_core.provider.utils.errors import EmptyDataError
from openbb_yfinance.utils.helpers import yf_download
-from openbb_yfinance.utils.references import INTERVALS, PERIODS
-from pandas import to_datetime
+from openbb_yfinance.utils.references import INTERVALS_DICT
from pydantic import Field
@@ -28,9 +28,23 @@ class YFinanceCryptoHistoricalQueryParams(CryptoHistoricalQueryParams):
__json_schema_extra__ = {"symbol": ["multiple_items_allowed"]}
- interval: Optional[INTERVALS] = Field(default="1d", description="Data granularity.")
- period: Optional[PERIODS] = Field(
- default="max", description=QUERY_DESCRIPTIONS.get("period", "")
+ interval: Literal[
+ "1m",
+ "2m",
+ "5m",
+ "15m",
+ "30m",
+ "60m",
+ "90m",
+ "1h",
+ "1d",
+ "5d",
+ "1W",
+ "1M",
+ "1Q",
+ ] = Field(
+ default="1d",
+ description=QUERY_DESCRIPTIONS.get("interval", ""),
)
@@ -62,7 +76,7 @@ class YFinanceCryptoHistoricalFetcher(
@staticmethod
def extract_data(
- query: YFinanceCryptoHistoricalQueryParams, # pylint: disable=unused-argument
+ query: YFinanceCryptoHistoricalQueryParams,
credentials: Optional[Dict[str, str]],
**kwargs: Any,
) -> List[Dict]:
@@ -81,38 +95,17 @@ class YFinanceCryptoHistoricalFetcher(
data = yf_download(
symbols,
- start=query.start_date,
- end=query.end_date,
- interval=query.interval,
- period=query.period,
+ start_date=query.start_date,
+ end_date=query.end_date,
+ interval=INTERVALS_DICT.get(query.interval, "1d"), # type: ignore
auto_adjust=False,
actions=False,
+ prepost=True,
)
if data.empty:
raise EmptyDataError()
- days = (
- 1
- if query.interval in ["1m", "2m", "5m", "15m", "30m", "60m", "1h", "90m"]
- else 0
- )
- if query.start_date:
- if "date" in data.columns:
- data.set_index("date", inplace=True)
- data.index = to_datetime(data.index)
-
- data = data[
- (data.index >= to_datetime(query.start_date))
- & (data.index <= to_datetime(query.end_date + timedelta(days=days)))
- ]
-
- data.reset_index(inplace=True)
- data.rename(columns={"index": "date"}, inplace=True)
-
- if query.interval in ["1d", "1W", "1M", "3M"]:
- data["date"] = data["date"].dt.strftime("%Y-%m-%d")
-
return data.to_dict("records")
@staticmethod
diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/currency_historical.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/currency_historical.py
index 749a6d1ebfd..1c93f165b1e 100644
--- a/openbb_platform/providers/yfinance/openbb_yfinance/models/currency_historical.py
+++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/currency_historical.py
@@ -3,8 +3,8 @@
# ruff: noqa: SIM105
# pylint: disable=unused-argument
-from datetime import datetime, timedelta
-from typing import Any, Dict, List, Optional
+from datetime import datetime
+from typing import Any, Dict, List, Literal, Optional
from dateutil.relativedelta import relativedelta
from openbb_core.provider.abstract.fetcher import Fetcher
@@ -15,8 +15,7 @@ from openbb_core.provider.standard_models.currency_historical import (
from openbb_core.provider.utils.descriptions import QUERY_DESCRIPTIONS
from openbb_core.provider.utils.errors import EmptyDataError
from openbb_yfinance.utils.helpers import yf_download
-from openbb_yfinance.utils.references import INTERVALS, PERIODS
-from pandas import to_datetime
+from openbb_yfinance.utils.references import INTERVALS_DICT
from pydantic import Field
@@ -28,9 +27,23 @@ class YFinanceCurrencyHistoricalQueryParams(CurrencyHistoricalQueryParams):
__json_schema_extra__ = {"symbol": ["multiple_items_allowed"]}
- interval: Optional[INTERVALS] = Field(default="1d", description="Data granularity.")
- period: Optional[PERIODS] = Field(
- default="max", description=QUERY_DESCRIPTIONS.get("period", "")
+ interval: Literal[
+ "1m",
+ "2m",
+ "5m",
+ "15m",
+ "30m",
+ "60m",
+ "90m",
+ "1h",
+ "1d",
+ "5d",
+ "1W",
+ "1M",
+ "1Q",
+ ] = Field(
+ default="1d",
+ description=QUERY_DESCRIPTIONS.get("interval", ""),
)
@@ -78,37 +91,17 @@ class YFinanceCurrencyHistoricalFetcher(
"""Return the raw data from the Yahoo Finance endpoint."""
data = yf_download(
query.symbol,
- start=query.start_date,
- end=query.end_date,
- interval=query.interval,
- period=query.period,
+ start_date=query.start_date,
+ end_date=query.end_date,
+ interval=INTERVALS_DICT.get(query.interval, "1d"), # type: ignore
auto_adjust=False,
actions=False,
+ prepost=True,
)
if data.empty:
raise EmptyDataError()
- days = (
- 1
- if query.interval in ["1m", "2m", "5m", "15m", "30m", "60m", "1h", "90m"]
- else 0
- )
- if query.start_date:
- if "date" in data.columns:
- data.set_index("date", inplace=True)
- data.index = to_datetime(data.index)
-
- data = data[
- (data.index >= to_datetime(query.start_date))
- & (data.index <= to_datetime(query.end_date + timedelta(days=days)))
- ]
-
- data.reset_index(inplace=True)
- data.rename(columns={"index": "date"}, inplace=True)
- if query.interval in ["1d", "1W", "1M", "3M"]:
- data["date"] = data["date"].dt.strftime("%Y-%m-%d")
-
return data.to_dict("records")
@staticmethod
diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_historical.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_historical.py
index bd6253fa92e..bf9dceecdb5 100644
--- a/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_historical.py
+++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/equity_historical.py
@@ -3,8 +3,9 @@
# pylint: disable=unused-argument
# ruff: noqa: SIM105
-from datetime import datetime, timedelta
+from datetime import datetime
from typing import Any, Dict, List, Literal, Optional
+from warnings import warn
from dateutil.relativedelta import relativedelta
from openbb_core.provider.abstract.fetcher import Fetcher
@@ -15,9 +16,9 @@ from openbb_core.provider.standard_models.equity_historical import (
from openbb_core.provider.utils.descriptions import QUERY_DESCRIPTIONS
from openbb_core.provider.utils.errors import EmptyDataError
from openbb_yfinance.utils.helpers import yf_download
-from openbb_yfinance.utils.references import PERIODS
-from pandas import Timestamp, to_datetime
-from pydantic import Field, PrivateAttr, field_validator
+from openbb_yfinance.utils.references import INTERVALS_DICT, PERIODS
+from pandas import DataFrame, Timestamp
+from pydantic import Field, PrivateAttr, field_validator, model_validator
class YFinanceEquityHistoricalQueryParams(EquityHistoricalQueryParams):
@@ -28,47 +29,76 @@ class YFinanceEquityHistoricalQueryParams(EquityHistoricalQueryParams):
__json_schema_extra__ = {"symbol": ["multiple_items_allowed"]}
- interval: Optional[
- Literal[
- "1m",
- "2m",
- "5m",
- "15m",
- "30m",
- "60m",
- "90m",
- "1h",
- "1d",
- "5d",
- "1W",
- "1M",
- "3M",
- ]
+ interval: Literal[
+ "1m",
+ "2m",
+ "5m",
+ "15m",
+ "30m",
+ "60m",
+ "90m",
+ "1h",
+ "1d",
+ "5d",
+ "1W",
+ "1M",
+ "1Q",
] = Field(
default="1d",
description=QUERY_DESCRIPTIONS.get("interval", ""),
)
- prepost: bool = Field(
- default=False, description="Include Pre and Post market data."
+ extended_hours: bool = Field(
+ default=False,
+ description="Include Pre and Post market data.",
)
- include: bool = Field(
- default=True, description="Include Dividends and Stock Splits in results."
+ include_actions: bool = Field(
+ default=True,
+ description="Include dividends and stock splits in results.",
+ )
+ adjustment: Literal["splits_only", "splits_and_dividends"] = Field(
+ default="splits_only",
+ description="The adjustment factor to apply. Default is splits only.",
)
adjusted: bool = Field(
default=False,
- description="Adjust all OHLC data automatically.",
+ exclude=True,
+ description="This field is deprecated (4.1.5) and will be removed in a future version."
+ + " Use 'adjustment' set as 'splits_and_dividends' instead.",
+ json_schema_extra={"deprecated": True},
)
- ignore_tz: bool = Field(
- default=True,
- description="When combining from different timezones, ignore that part of datetime.",
+ prepost: bool = Field(
+ default=False,
+ exclude=True,
+ description="This field is deprecated (4.1.5) and will be removed in a future version."
+ + " Use 'extended_hours' as True instead.",
+ json_schema_extra={"deprecated": True},
)
+
+ _ignore_tz: bool = PrivateAttr(default=True)
_progress: bool = PrivateAttr(default=False)
_keepna: bool = PrivateAttr(default=False)
- _period: Optional[PERIODS] = PrivateAttr(default="max")
- _rounding: bool = PrivateAttr(default=True)
+ _period: PERIODS = PrivateAttr(default="max")
+ _rounding: bool = PrivateAttr(default=False)
_repair: bool = PrivateAttr(default=False)
_group_by: Literal["ticker", "column"] = PrivateAttr(default="ticker")
+ @model_validator(mode="before")
+ @classmethod
+ def validate_deprecated_params(cls, values):
+ """Validate the deprecated parameters."""
+ for k, v in values.copy().items():
+ if k in ["adjusted"] and v is True:
+ warn(
+ f"The '{k}' parameter is deprecated and will be removed in a future version."
+ )
+ values["adjustment"] = "splits_and_dividends"
+ if k in ["prepost"] and v is True:
+ warn(
+ f"The '{k}' parameter is deprecated and will be removed in a future version."
+ )
+ values["extended_hours"] = True
+ return values
+
class YFinanceEquityHistoricalData(EquityHistoricalData):
"""Yahoo Finance Equity Historical Price Data."""
@@ -122,74 +152,48 @@ class YFinanceEquityHistoricalFetcher(
query: YFinanceEquityHistoricalQueryParams,
credentials: Optional[Dict[str, str]],
**kwargs: Any,
- ) -> List[Dict]:
+ ) -> DataFrame:
"""Return the raw data from the Yahoo Finance endpoint."""
- if query.interval == "1W":
- query.interval = "1wk"
- elif query.interval == "1M":
- query.interval = "1mo"
- elif query.interval == "3M":
- query.interval = "3mo"
- kwargs = (
- {"auto_adjust": True, "back_adjust": True} if query.adjusted is True else {}
- )
+ adjusted = query.adjustment == "splits_and_dividends"
+ kwargs = {"auto_adjust": True, "back_adjust": True} if adjusted is True else {}
# pylint: disable=protected-access
data = yf_download(
symbol=query.symbol,
start_date=query.start_date,
end_date=query.end_date,
- interval=query.interval,
+ interval=INTERVALS_DICT[query.interval], # type: ignore
period=query._period,
- prepost=query.prepost,
- actions=query.include,
+ prepost=query.extended_hours,
+ actions=query.include_actions,
progress=query._progress,
- ignore_tz=query.ignore_tz,
+ ignore_tz=query._ignore_tz,
keepna=query._keepna,
repair=query._repair,
rounding=query._rounding,
group_by=query._group_by,
- adjusted=query.adjusted,
+ adjusted=adjusted,
**kwargs,
)
if data.empty:
raise EmptyDataError()
- query.end_date = (
- datetime.now().date() if query.end_date is None else query.end_date
- )
- days = (
- 1
- if query.interval in ["1m", "2m", "5m", "15m", "30m", "60m", "1h", "90m"]
- else 0
- )
- if query.start_date:
- if "date" in data.columns:
- data.set_index("date", inplace=True)
- data.index = to_datetime(data.index)
-
- data = data[
- (data.index >= to_datetime(query.start_date))
- & (data.index <= to_datetime(query.end_date + timedelta(days=days)))
- ]
-
- data.reset_index(inplace=True)
- data.rename(columns={"index": "date"}, inplace=True)
- if query.interval in ["1d", "1W", "1M", "3M"]:
- data["date"] = data["date"].dt.strftime("%Y-%m-%d")
-
- if "dividends" in data.columns and data.dividends.sum() == 0:
- data.drop(columns=["dividends"], inplace=True)
- if "stock_splits" in data.columns and all(data.stock_splits) == 0:
- data.drop(columns=["stock_splits"], inplace=True)
-
- return data.to_dict("records")
+ return data
@staticmethod
def transform_data(
query: YFinanceEquityHistoricalQueryParams,
- data: List[Dict],
+ data: DataFrame,
**kwargs: Any,
) -> List[YFinanceEquityHistoricalData]:
"""Transform the data to the standard format."""
- return [YFinanceEquityHistoricalData.model_validate(d) for d in data]
+ if "capital_gains" in data.columns:
+ data = (
+ data.drop(columns=["capital_gains"])
+ if query.include_actions is False
+ else data
+ )
+ return [
+ YFinanceEquityHistoricalData.model_validate(d)
+ for d in data.to_dict("records")
+ ]
diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/futures_historical.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/futures_historical.py
index da1cb731ac5..55637fde0b7 100644
--- a/openbb_platform/providers/yfinance/openbb_yfinance/models/futures_historical.py
+++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/futures_historical.py
@@ -3,8 +3,8 @@
# pylint: disable=unused-argument
# ruff: noqa: SIM105
-from datetime import datetime, timedelta
-from typing import Any, Dict, List, Optional
+from datetime import datetime
+from typing import Any, Dict, List, Literal, Optional
from dateutil.relativedelta import relativedelta
from openbb_core.provider.abstract.fetcher import Fetcher
@@ -15,8 +15,8 @@ from openbb_core.provider.standard_models.futures_historical import (
from openbb_core.provider.utils.descriptions import QUERY_DESCRIPTIONS
from openbb_core.provider.utils.errors import EmptyDataError
from openbb_yfinance.utils.helpers import get_futures_data, yf_download
-from openbb_yfinance.utils.references import INTERVALS, MONTHS, PERIODS
-from pandas import Timestamp, to_datetime
+from openbb_yfinance.utils.references import INTERVALS_DICT, MONTHS
+from pandas import Timestamp
from pydantic import Field, field_validator
@@ -28,9 +28,23 @@ class YFinanceFuturesHistoricalQueryParams(FuturesHistoricalQueryParams):
__json_schema_extra__ = {"symbol": ["multiple_items_allowed"]}
- interval: Optional[INTERVALS] = Field(default="1d", description="Data granularity.")
- period: Optional[PERIODS] = Field(
- default=None, description=QUERY_DESCRIPTIONS.get("period", "")
+ interval: Literal[
+ "1m",
+ "2m",
+ "5m",
+ "15m",
+ "30m",
+ "60m",
+ "90m",
+ "1h",
+ "1d",
+ "5d",
+ "1W",
+ "1M",
+ "1Q",
+ ] = Field(
+ default="1d",
+ description=QUERY_DESCRIPTIONS.get("interval", ""),
)
@@ -112,7 +126,7 @@ class YFinanceFuturesHistoricalFetcher(
query.symbol,
start=query.start_date,
end=query.end_date,
- interval=query.interval, # type: ignore
+ interval=INTERVALS_DICT[query.interval], # type: ignore
prepost=True,
auto_adjust=False,
actions=False,
@@ -121,23 +135,6 @@ class YFinanceFuturesHistoricalFetcher(
if data.empty:
raise EmptyDataError()
- days = (
- 1
- if query.interval in ["1m", "2m", "5m", "15m", "30m", "60m", "1h", "90m"]
- else 0
- )
- if "date" in data.columns:
- data.set_index("date", inplace=True)
- data.index = to_datetime(data.index)
- if query.start_date:
- data = data[
- (data.index >= to_datetime(query.start_date))
- & (data.index <= to_datetime(query.end_date + timedelta(days=days)))
- ]
-
- data.reset_index(inplace=True)
- data.rename(columns={"index": "date"}, inplace=True)
-
return data.to_dict("records")
@staticmethod
diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/models/index_historical.py b/openbb_platform/providers/yfinance/openbb_yfinance/models/index_historical.py
index e78fd3f301f..ea1ea0d9fbb 100644
--- a/openbb_platform/providers/yfinance/openbb_yfinance/models/index_historical.py
+++ b/openbb_platform/providers/yfinance/openbb_yfinance/models/index_historical.py
@@ -3,8 +3,9 @@
# ruff: noqa: SIM105
# pylint: disable=unused-argument
-from datetime import datetime, timedelta
-from typing import Any, Dict, List, Optional
+import warnings
+from datetime import datetime
+from typing import Any, Dict, List, Literal, Optional
import pandas as pd
from dateutil.relativedelta import relativedelta
@@ -16,10 +17,11 @@ from openbb_core.provider.standard_models.index_historical import (
from openbb_core.provider.utils.descriptions import QUERY_DESCRIPTIONS
from openbb_core.provider.utils.errors import EmptyDataError
from openbb_yfinance.utils.helpers import yf_download
-from openbb_yfinance.utils.references import INDICES, INTERVALS, PERIODS
-from pandas import to_datetime
+from openbb_yfinance.utils.references import INDICES, INTERVALS_DICT
from pydantic import Field
+_warn = warnings.warn
+
class YFinanceIndexHistoricalQueryParams(IndexHistoricalQueryParams):
"""YFinance Index Historical Query.
@@ -29,12 +31,24 @@ class YFinanceIndexHistoricalQueryParams(IndexHistoricalQueryParams):
__json_schema_extra__ = {"symbol": ["multiple_items_allowed"]}
- interval: Optional[INTERVALS] = Field(default="1d", description="Data granularity.")
- period: Optional[PERIODS] = Field(
- default="max", description=QUERY_DESCRIPTIONS.get("period", "")
+ interval: Literal[
+ "1m",
+ "2m",
+ "5m",
+ "15m",
+ "30m",
+ "60m",
+ "90m",
+ "1h",
+ "1d",
+ "5d",
+ "1W",
+ "1M",
+ "1Q",
+ ] = Field(
+ default="1d",
+ description=QUERY_DESCRIPTIONS.get("interval", ""),
)
- prepost: bool = Field(default=True, description="Include Pre and Post market data.")
- rounding: bool = Field(default=True, description="Round prices to two decimals?")
class YFinanceIndexHistoricalData(IndexHistoricalData):
@@ -61,7 +75,7 @@ class YFinanceIndexHistoricalFetcher(
if params.get("end_date") is None:
transformed_params["end_date"] = now
- tickers = params.get("symbol").lower().split(",")
+ tickers = params.get("symbol").lower().split(",") # type: ignore
new_tickers = []
for ticker in tickers:
@@ -83,6 +97,8 @@ class YFinanceIndexHistoricalFetcher(
if _ticker != "":
new_tickers.append(_ticker)
+ else:
+ _warn(f"Symbol Error: {ticker} is not a supported index.")
transformed_params["symbol"] = ",".join(new_tickers)
@@ -99,36 +115,13 @@ class YFinanceIndexHistoricalFetcher(
symbol=query.symbol,
start_date=query.start_date,
end_date=query.end_date,
- interval=query.interval,
- period=query.period,
- prepost=query.prepost,
- rounding=query.rounding,
+ interval=INTERVALS_DICT[query.interval], # type: ignore
+ prepost=True,
)
if data.empty:
raise EmptyDataError()
- days = (
- 1
- if query.interval in ["1m", "2m", "5m", "15m", "30m", "60m", "1h", "90m"]
- else 0
- )
-
- if query.start_date:
- if "date" in data.columns:
- data.set_index("date", inplace=True)
- data.index = to_datetime(data.index)
-
- data = data[
- (data.index >= to_datetime(query.start_date))
- & (data.index <= to_datetime(query.end_date + timedelta(days=days)))
- ]
-
- data.reset_index(inplace=True)
- data.rename(columns={"index": "date"}, inplace=True)
- if query.interval in ["1d", "1W", "1M", "3M"]:
- data["date"] = data["date"].dt.strftime("%Y-%m-%d")
-
return data.to_dict("records")
@staticmethod
diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/utils/helpers.py b/openbb_platform/providers/yfinance/openbb_yfinance/utils/helpers.py
index 79edb717334..dbc2ebe3c28 100644
--- a/openbb_platform/providers/yfinance/openbb_yfinance/utils/helpers.py
+++ b/openbb_platform/providers/yfinance/openbb_yfinance/utils/helpers.py
@@ -12,7 +12,7 @@ import pandas as pd
import yfinance as yf
from dateutil.relativedelta import relativedelta
from openbb_core.provider.utils.errors import EmptyDataError
-from openbb_yfinance.utils.references import MONTHS
+from openbb_yfinance.utils.references import INTERVALS, MONTHS, PERIODS
def get_futures_data() -> pd.DataFrame:
@@ -84,8 +84,8 @@ def yf_download(
symbol: str,
start_date: Optional[Union[str, dateType]] = None,
end_date: Optional[Union[str, dateType]] = None,
- interval: str = "1d",
- period: str = "max",
+ interval: INTERVALS = "1d",
+ period: PERIODS = "max",
prepost: bool = False,
actions: bool = False,
progress: bool = False,
@@ -93,7 +93,7 @@ def yf_download(
keepna: bool = False,
repair: bool = False,
rounding: bool = False,
- group_by: Literal["symbol", "column"] = "symbol",
+ group_by: Literal["ticker", "column"] = "ticker",
adjusted: bool = False,
**kwargs: Any,
) -> pd.DataFrame:
@@ -143,29 +143,32 @@ def yf_download(
_data = pd.DataFrame()
for ticker in tickers:
temp = data[ticker].copy().dropna(how="all")
- for i in temp.index:
- temp.loc[i, "symbol"] = ticker
- temp = temp.reset_index().rename(
- columns={"Date": "date", "Datetime": "date"}
- )
- _data = pd.concat([_data, temp])
- index_keys = ["date", "symbol"] if "symbol" in _data.columns else ["date"]
- _data = _data.set_index(index_keys).sort_index()
- data = _data
+ if len(temp) > 0:
+ temp.loc[:, "symbol"] = ticker
+ temp = temp.reset_index().rename(
+ columns={"Date": "date", "Datetime": "date", "index": "date"}
+ )
+ _data = pd.concat([_data, temp])
+ if not _data.empty:
+ index_keys = ["date", "symbol"] if "symbol" in _data.columns else "date"
+ _data = _data.set_index(index_keys).sort_index()
+ data = _data
if not data.empty:
data = data.reset_index()
data = data.rename(columns={"Date": "date", "Datetime": "date"})
- data["date"] = pd.to_datetime(data["date"])
+ data["date"] = data["date"].apply(pd.to_datetime)
data = data[data["Open"] > 0]
if start_date is not None:
data = data[data["date"] >= pd.to_datetime(start_date)]
- if end_date is not None and pd.to_datetime(end_date) > pd.to_datetime(
- start_date
- ):
- data = data[
- data["date"] <= (pd.to_datetime(end_date) + relativedelta(days=1))
- ]
+ if (
+ end_date is not None
+ and start_date is not None
+ and pd.to_datetime(end_date) > pd.to_datetime(start_date)
+ ):
+ data = data[
+ data["date"] <= (pd.to_datetime(end_date) + relativedelta(days=1))
+ ]
if period not in [
"max",
diff --git a/openbb_platform/providers/yfinance/openbb_yfinance/utils/references.py b/openbb_platform/providers/yfinance/openbb_yfinance/utils/references.py
index 4663f4fe5f9..59c96cfbcbf 100644
--- a/openbb_platform/providers/yfinance/openbb_yfinance/utils/references.py
+++ b/openbb_platform/providers/yfinance/openbb_yfinance/utils/references.py
@@ -3,9 +3,25 @@
from typing import Literal
INTERVALS = Literal[
- "1m", "2m", "5m", "15m", "30m", "60m", "90m", "1h", "1d", "5d", "1wk", "1mo", "3mo"
+ "1m", "2m", "5m", "15m", "30m", "60m", "90m", "1h", "1d", "5d", "1W", "1M", "1Q"
]
+INTERVALS_DICT = {
+ "1m": "1m",
+ "2m": "2m",
+ "5m": "5m",
+ "15m": "15m",
+ "30m": "30m",
+ "60m": "60m",
+ "90m": "90m",
+ "1h": "1h",
+ "1d": "1d",
+ "5d": "5d",
+ "1W": "1wk",
+ "1M": "1mo",
+ "1Q": "3mo",
+}
+
PERIODS = Literal[
"1d", "5d", "1mo", "3mo", "6mo", "1y", "2y", "5y", "10y", "ytd", "max"
]
diff --git a/openbb_platform/providers/yfinance/tests/record/http/test_yfinance_fetchers/test_y_finance_crypto_historical_fetcher.yaml b/openbb_platform/providers/yfinance/tests/record/http/test_yfinance_fetchers/test_y_finance_crypto_historical_fetcher.yaml
index 95082322fef..485987ce8e8 100644
--- a/openbb_platform/providers/yfinance/tests/record/http/test_yfinance_fetchers/test_y_finance_crypto_historical_fetcher.yaml
+++ b/openbb_platform/providers/yfinance/tests/record/http/test_yfinance_fetchers/test_y_finance_crypto_historical_fetcher.yaml
@@ -5,7 +5,155 @@ interactions:
Accept:
- '*/*'
Accept-Encoding:
- - gzip, deflate, br
+ - gzip, deflate
+ Connection:
+ - keep-alive
+ method: GET
+ uri: https://fc.yahoo.com/
+ response:
+ body:
+ string: "\n\n
\n \n \n Yahoo\n
+ \ \n
+ \ \n \n \n
+ \ \n \n \n \n
+ \ \n \n \n \n \n \n\n"
+ headers:
+ Cache-Control:
+ - no-store
+ Connection:
+ - keep-alive
+ Content-Language:
+ - en
+ Content-Length:
+ - '4342'
+ Content-Type:
+ - text/html
+ Date:
+ - Thu, 29 Feb 2024 18:53:11 GMT
+ Expect-CT:
+ - max-age=31536000, report-uri="http://csp.yahoo.com/beacon/csp?src=yahoocom-expect-ct-report-only"
+ Server:
+ - ATS
+ Set-Cookie:
+ - A3=d=AQABBJfS4GUCEPWhsZ66ffyYtcUhguRf9QIFEgEBAQEk4mXqZSXUxyMA_eMAAA&S=AQAAAtiMT9HBmA99jKqiX525ARU;
+ Expires=Sat, 1 Mar 2025 00:53:11 GMT; Max-Age=31557600; Domain=.yahoo.com;
+ Path=/; SameSite=None; Secure; HttpOnly
+ Strict-Transport-Security:
+ - max-age=31536000
+ X-Content-Type-Options:
+ - nosniff
+ X-XSS-Protection:
+ - 1; mode=block
+ status:
+ code: 500
+ message: Cannot find server.
+- request:
+ body: null
+ headers:
+ Accept:
+ - '*/*'
+ Accept-Encoding:
+ - gzip, deflate
+ Connection:
+ - keep-alive
+ Cookie:
+ - MOCK_COOKIE
+ method: GET
+ uri: https://query1.finance.yahoo.com/v1/test/getcrumb
+ response:
+ body:
+ string: VrBo.ZBbspc
+ headers:
+ Age:
+ - '0'
+ Connection:
+ - keep-alive
+ Expect-CT:
+ - max-age=31536000, report-uri="http://csp.yahoo.com/beacon/csp?src=yahoocom-expect-ct-report-only"
+ Referrer-Policy:
+ - no-referrer-when-downgrade
+ Strict-Transport-Security:
+ - max-age=31536000
+ Transfer-Encoding:
+ - chunked
+ X-Content-Type-Options:
+ - nosniff
+ X-XSS-Protection:
+ - 1; mode=block
+ cache-control:
+ - private
+ content-type:
+ - text/plain;charset=utf-8
+ date:
+ - Thu, 29 Feb 2024 18:53:11 GMT
+ server:
+ - ATS
+ x-envoy-decorator-operation:
+ - finance-yql--mtls-default-production-gq1.finance-k8s.svc.yahoo.local:4080/*
+ x-envoy-upstream-service-time:
+ - '1'
+ x-frame-options:
+ - SAMEORIGIN
+ status:
+ code: 200
+ message: OK
+- request:
+ body: null
+ headers:
+ Accept:
+ - '*/*'
+ Accept-Encoding:
+ - gzip, deflate
Connection:
- keep-alive
Cookie:
@@ -14,7 +162,7 @@ interactions:
uri: https://query2.finance.yahoo.com/v8/finance/chart/BTC-USD?crumb=MOCK_CRUMB&interval=1d&range=1d
response:
body:
- string: '{"chart":{"result":[{"meta":{"currency":"USD","symbol":"BTC-USD","exchangeName":"CCC","instrumentType":"CRYPTOCURRENCY","firstTradeDate":1410912000,"regularMarketTime":1704714060,"gmtoffset":0,"timezone":"UTC","exchangeTimezoneName":"UTC","regularMarketPrice":44256.08,"chartPreviousClose":43948.707,"priceHint":2,"currentTradingPeriod":{"pre":{"timezone":"UTC","start":1704672000,"end":1704672000,"gmtoffset":0},"regular":{"timezone":"UTC","start":1704672000,"end":1704758340,"gmtoffset":0},"post":{"timezone":"UTC","start":1704758340,"end":1704758340,"gmtoffset":0}},"dataGranularity":"1d","range":"1d","validRanges":["1d","5d","1mo","3mo","6mo","1y","2y","5y","10y","ytd","max"]},"timestamp":[1704714060],"indicators":{"quote":[{"volume":[25173131264],"open":[43948.70703125],"low":[43306.7890625],"close":[44256.078125],"high":[44256.078125]}],"adjclose":[{"adjclose":[44256.078125]}]}}],"error":null}}'
+ string: '{"chart":{"result":[{"meta":{"currency":"USD","symbol":"BTC-USD","exchangeName":"CCC","instrumentType":"CRYPTOCURRENCY","firstTradeDate":1410912000,"regularMarketTime":1709232720,"hasPrePostMarketData":false,"gmtoffset":0,"timezone":"UTC","exchangeTimezoneName":"UTC","regularMarketPrice":60567.367,"chartPreviousClose":62499.184,"priceHint":2,"currentTradingPeriod":{"pre":{"timezone":"UTC","start":1709164800,"end":1709164800,"gmtoffset":0},"regular":{"timezone":"UTC","start":1709164800,"end":1709251140,"gmtoffset":0},"post":{"timezone":"UTC","start":1709251140,"end":1709251140,"gmtoffset":0}},"dataGranularity":"1d","range":"1d","validRanges":["1d","5d","1mo","3mo","6mo","1y","2y","5y","10y","ytd","max"]},"timestamp":[1709232720],"indicators":{"quote":[{"volume":[69035991040],"low":[60567.3671875],"close":[60567.3671875],"open":[62499.18359375],"high":[63447.20703125]}],"adjclose":[{"adjclose":[60567.3671875]}]}}],"error":null}}'
headers:
Age:
- '0'
@@ -33,11 +181,11 @@ interactions:
cache-control:
- public, max-age=10, stale-while-revalidate=20
content-length:
- - '906'
+ - '940'
content-type:
- application/json;charset=utf-8
date:
- - Mon, 08 Jan 2024 11:43:38 GMT
+ - Thu, 29 Feb 2024 18:53:11 GMT
server:
- ATS
vary:
@@ -45,7 +193,7 @@ interactions:
x-envoy-decorator-operation:
- finance-chart-api--mtls-production-gq1.finance-k8s.svc.yahoo.local:4080/*
x-envoy-upstream-service-time:
- - '2'
+ - '4'
status:
code: 200
message: OK
@@ -55,2137 +203,261 @@ interactions:
Accept:
- '*/*'
Accept-Encoding:
- - gzip, deflate, br
+ - gzip, deflate
Connection:
- keep-alive
Cookie:
- MOCK_COOKIE
method: GET
- uri: https://query2.finance.yahoo.com/v8/finance/chart/BTC-USD?crumb=MOCK_CRUMB&events=div%2Csplits%2CcapitalGains&includePrePost=False&interval=1d&period1=MOCK_PERIOD_1&period2=MOCK_PERIOD_2
+ uri: https://query2.finance.yahoo.com/v8/finance/chart/BTC-USD?crumb=MOCK_CRUMB&events=div%2Csplits%2CcapitalGains&includePrePost=True&interval=1d&period1=MOCK_PERIOD_1&period2=MOCK_PERIOD_2
response:
body:
string: !!binary |
- H4sIAAAAAAAAAJSdTe81x3HdvwvXN8ZMv7eXoYNkE0dQ5IUReMFItEJEJBXykWFF8HdP/U71ackw
- kCBIQJf+z517Z2q6T1fVqZc/ffXr//HNT1+++us/ffXTtz//4Xch/bc/ffX9t1++4U+//sNPP337
- w6//+NVff/V3//Vvvvp89fMfv//vP/4u/ue//9XX/y7/9O0/xzf88Ntv//ab77+Nf/j666/jj9/9
- 8POXn/7w/bc/fPnVH3+vP//y73/xq//y9d/98pf/4W+//vv4xD9+99PPX3710ze/+fZvvvkSn3jb
- ++y3PM/ziTv57R9+981P//mbn/7nt19+9R3f+86nzbc9I/75t99/+fEf//Hnb+Ne4399iX//3z/+
- wI/83a++/osb+tX5h3Nj+Y//6qt/8dN3v45/aq308VfP+qQufvHTt//03Y9/+Pnr3/34M//a51/V
- 2j5f/Z5P/6fvfoifLZ+jGj3Bdz/89hff/vTdj79BZb//6Vv+z7+5q5+/SM08x5j5mN/+8Jt//Ye/
- fLB/uff6//11s6/a/u3X/f7Hn7/8v77Ll/7fvyu+7DfffPnmP/70zQ/c4HdfWCDvb1Avio//EeI/
- ffO7737zS/73z7Gm8p87/3m//zH+W/Xfof++f4z/FP7T+c/78N8/fuHD33/zz1/9w7/kW477/P73
- 8V1/sVQk7tVSfJ/V1hHfyScklj7HEWtr57K31ceX9Xf4svFUXzbW9mWTL0hxjeLLdlvnsvLUfi4r
- 8f/OZaU867G427ms1PX4snx3EnuvvmxwjylO/Q+JK/6/xb192V79XFafaZXUt1sltTSrpNZqldT2
- WiW1P1ZJ7dsqqWNaJXUOq6SuZpXUXa2S9hSrJN6GVdLebZW0uPdzWavDKmmtWyUhWSVtFKsk9rtV
- wiP4srWskranVdKfbpX0+LpzWS/VKun1tUrix6yS3rZV0vu0SvoYVkmf3SqJjWCVxG9ZJXGJVTIk
- pfguq2SUYZWM2q2S0ZpVMnqxSsZ4rZIxH6tkzGWVjDWtkqEfkwgGnMtCZVbJLK9VMutjlcy6rZLZ
- plUy+7BK5uhWyZzVKpl6nhT3a5XMva2SWNNWycp7k1i6VRIwYpWsWBC+rL9WyRqPVbKkshTntEri
- xVslazerZD/VKklMSLE8Vsku2yrZdVoluw2rZOutpDiqVRJryyrZ67VK9tpWScIOYvzbPCopT6ye
- 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
- WSX9UlshGl7zQDripbbChDG8rnGprdhWhtc1LrUVouGVMJdVMi61tcaltta41FYoxPAaVpLhlXVs
- lcxLba15qa01L7UVNrzhNTxpw2v4mIbXNS+1FaLhdc1LbcXVhte1LrW11qW2WLJWybrUVoiG17Uu
- tbXWpbbWutRWvDTD61qX2goUNLyufamtEA2va19qK64yvPIMVsm+1FZoyfAaR7vhNUTD69qX2lr7
- Ulvh/BpeCTkeleznUlvhjBteMzxs0fAaFqvhdT+X2opVZnjdz6W29nOpLaKaRyX7vdTWfi+1td9L
- be33Ulv7vdTWfi+1td9Lbe33Ulv7vdTWfi+1td9Lbe1yqa1dLrW1y6W2drnU1i6X2trlUlu7XGpr
- l0tt7XKprV0utbXLpbZ2udTWrpfa2vVSW7teamvXS23teqmtXS+1teultna91Naul9ra9VJbu15q
- a7dLbe12qa3dLrW126W2drvU1m6X2trtUlu7XWprt0tt7Xaprd0utbXbpbZ2v9TW7pfa2v1SW7tf
- amv3S23tfqmt3S+1tfultna/1Nbul9ra/VJbe1xqa49Lbe1xqa09LrW1x6W29rjU1h6X2trjUlt7
- XGprj0tt7XGprT0utbXnpbb2vNTWnpfa2vNSW3teamvPS23teamtPS+1teeltva81Nael9ra61Jb
- e11qa69Lbe11qa29LrW116W29rrU1l6X2trrUlt7XWprr0tt7XWprb0vtbX3pbb2vtTW3pfa2vtS
- W3tfamvvS23tfamtvS+1tfeltva+1NbeprbCcjK11SEcUiUhmtoK0dRWiKa2oEUOvCIeeA3R1FY/
- X5uiqa0QTW315zW1FaKprRDLgVfEA69iXoovM7UVoqmtfu48RVNbIZraQjzwGqKpLRyuA68hmtqC
- 3KlWSTG1Je/OKimmtkI0tRWiqa0QTW2FaGorRFNbPQ781yqpprYQl1VSTW31o/8UTW2FaGorRFNb
- IZraQtxWSTW1JYrKKmmmtkI0tdXPK07R1Bbitkqaqa0QTW2FaGorRFNbsGDFKmmmtvrTTW31s4pS
- NLUVoqmtEE1thWhqK0RTWwo1WyXd1FaIprZCNLXVz0KVOExthWhqC7bltUqGqa0QTW2FaGoL0O5W
- yTC11bGirJJhaitEU1uIyyqZprZCNLUFbdWskmlqS3ShVTJNbSFuq2Sa2grR1FaIprZCNLUVOje1
- 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
- BQA=
+ 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
headers:
Age:
- - '1'
+ - '0'
Connection:
- keep-alive
Expect-CT:
@@ -2207,7 +479,7 @@ interactions:
content-type:
- application/json;charset=utf-8
date:
- - Mon, 08 Jan 2024 11:43:38 GMT
+ - Thu, 29 Feb 2024 18:53:11 GMT
server:
- ATS
vary:
@@ -2215,7 +487,7 @@ interactions:
x-envoy-decorator-operation:
- finance-chart-api--mtls-production-gq1.finance-k8s.svc.yahoo.local:4080/*
x-envoy-upstream-service-time:
- - '41'
+ - '5'
status:
code: 200
message: OK
diff --git a/openbb_platform/providers/yfinance/tests/record/http/test_yfinance_fetchers/test_y_finance_currency_historical_fetcher.yaml b/openbb_platform/providers/yfinance/tests/record/http/test_yfinance_fetchers/test_y_finance_currency_historical_fetcher.yaml
index d6ff268535a..9ec1bca73ae 100644
--- a/openbb_platform/providers/yfinance/tests/record/http/test_yfinance_fetchers/test_y_finance_currency_historical_fetcher.yaml
+++ b/openbb_platform/providers/yfinance/tests/record/http/test_yfinance_fetchers/test_y_finance_currency_historical_fetcher.yaml
@@ -5,7 +5,155 @@ interactions:
Accept:
- '*/*'
Accept-Encoding:
- - gzip, deflate, br
+ - gzip, deflate
+ Connection:
+ - keep-alive
+ method: GET
+ uri: https://fc.yahoo.com/
+ response:
+ body:
+ string: "\n\n \n \n \n Yahoo\n
+ \ \n
+ \ \n \n \n
+ \ \n \n \n \n
+ \ \n \n \n \n \n \n\n"
+ headers:
+ Cache-Control:
+ - no-store
+ Connection:
+ - keep-alive
+ Content-Language:
+ - en
+ Content-Length:
+ - '4342'
+ Content-Type:
+ - text/html
+ Date:
+ - Thu, 29 Feb 2024 18:46:30 GMT
+ Expect-CT:
+ - max-age=31536000, report-uri="http://csp.yahoo.com/beacon/csp?src=yahoocom-expect-ct-report-only"
+ Server:
+ - ATS
+ Set-Cookie:
+ - A3=d=AQABBAbR4GUCELeJe1n6AL4-ApMjkSsG9ocFEgEBAQEi4mXqZSXUxyMA_eMAAA&S=AQAAAgkCW_2obvUS0Zhpoa8HG2o;
+ Expires=Sat, 1 Mar 2025 00:46:30 GMT; Max-Age=31557600; Domain=.yahoo.com;
+ Path=/; SameSite=None; Secure; HttpOnly
+ Strict-Transport-Security:
+ - max-age=31536000
+ X-Content-Type-Options:
+ - nosniff
+ X-XSS-Protection:
+ - 1; mode=block
+ status:
+ code: 500
+ message: Cannot find server.
+- request:
+ body: null
+ headers:
+ Accept:
+ - '*/*'
+ Accept-Encoding:
+ - gzip, deflate
+ Connection:
+ - keep-alive
+ Cookie:
+ - MOCK_COOKIE
+ method: GET
+ uri: https://query1.finance.yahoo.com/v1/test/getcrumb
+ response:
+ body:
+ string: tJRlib4RiaN
+ headers:
+ Age:
+ - '1'
+ Connection:
+ - keep-alive
+ Expect-CT:
+ - max-age=31536000, report-uri="http://csp.yahoo.com/beacon/csp?src=yahoocom-expect-ct-report-only"
+ Referrer-Policy:
+ - no-referrer-when-downgrade
+ Strict-Transport-Security:
+ - max-age=31536000
+ Transfer-Encoding:
+ - chunked
+ X-Content-Type-Options:
+ - nosniff
+ X-XSS-Protection:
+ - 1; mode=block
+ cache-control:
+ - private
+ content-type:
+ - text/plain;charset=utf-8
+ date:
+ - Thu, 29 Feb 2024 18:46:30 GMT
+ server:
+ - ATS
+ x-envoy-decorator-operation:
+ - finance-yql--mtls-default-production-gq1.finance-k8s.svc.yahoo.local:4080/*
+ x-envoy-upstream-service-time:
+ - '1'
+ x-frame-options:
+ - SAMEORIGIN
+ status:
+ code: 200
+ message: OK
+- request:
+ body: null
+ headers:
+ Accept:
+ - '*/*'
+ Accept-Encoding:
+ - gzip, deflate
Connection:
- keep-alive
Cookie:
@@ -14,10 +162,10 @@ interactions:
uri: https://query2.finance.yahoo.com/v8/finance/chart/EURUSD=X?crumb=MOCK_CRUMB&interval=1d&range=1d
response:
body:
- string: '{"chart":{"result":[{"meta":{"currency":"USD","symbol":"EURUSD=X","exchangeName":"CCY","instrumentType":"CURRENCY","firstTradeDate":1070236800,"regularMarketTime":1704714194,"gmtoffset":0,"timezone":"GMT","exchangeTimezoneName":"Europe/London","regularMarketPrice":1.0942,"chartPreviousClose":1.0945,"priceHint":4,"currentTradingPeriod":{"pre":{"timezone":"GMT","end":1704672000,"start":1704672000,"gmtoffset":0},"regular":{"timezone":"GMT","end":1704758340,"start":1704672000,"gmtoffset":0},"post":{"timezone":"GMT","end":1704758340,"start":1704758340,"gmtoffset":0}},"dataGranularity":"1d","range":"1d","validRanges":["1d","5d","1mo","3mo","6mo","1y","2y","5y","10y","ytd","max"]},"timestamp":[1704714194],"indicators":{"quote":[{"low":[1.0927767753601074],"open":[1.0945708751678467],"close":[1.0942115783691406],"high":[1.0957703590393066],"volume":[0]}],"adjclose":[{"adjclose":[1.0942115783691406]}]}}],"error":null}}'
+ string: '{"chart":{"result":[{"meta":{"currency":"USD","symbol":"EURUSD=X","exchangeName":"CCY","instrumentType":"CURRENCY","firstTradeDate":1070236800,"regularMarketTime":1709232376,"hasPrePostMarketData":false,"gmtoffset":0,"timezone":"GMT","exchangeTimezoneName":"Europe/London","regularMarketPrice":1.0807,"chartPreviousClose":1.0842,"priceHint":4,"currentTradingPeriod":{"pre":{"timezone":"GMT","end":1709164800,"start":1709164800,"gmtoffset":0},"regular":{"timezone":"GMT","end":1709251140,"start":1709164800,"gmtoffset":0},"post":{"timezone":"GMT","end":1709251140,"start":1709251140,"gmtoffset":0}},"dataGranularity":"1d","range":"1d","validRanges":["1d","5d","1mo","3mo","6mo","1y","2y","5y","10y","ytd","max"]},"timestamp":[1709232376],"indicators":{"quote":[{"close":[1.0807305574417114],"low":[1.07991361618042],"open":[1.0842459201812744],"high":[1.0857763290405273],"volume":[0]}],"adjclose":[{"adjclose":[1.0807305574417114]}]}}],"error":null}}'
headers:
Age:
- - '1'
+ - '0'
Connection:
- keep-alive
Expect-CT:
@@ -33,11 +181,11 @@ interactions:
cache-control:
- public, max-age=10, stale-while-revalidate=20
content-length:
- - '923'
+ - '950'
content-type:
- application/json;charset=utf-8
date:
- - Mon, 08 Jan 2024 11:43:42 GMT
+ - Thu, 29 Feb 2024 18:46:31 GMT
server:
- ATS
vary:
@@ -45,7 +193,7 @@ interactions:
x-envoy-decorator-operation:
- finance-chart-api--mtls-production-gq1.finance-k8s.svc.yahoo.local:4080/*
x-envoy-upstream-service-time:
- - '3'
+ - '2'
status:
code: 200
message: OK
@@ -55,3724 +203,177 @@ interactions:
Accept:
- '*/*'
Accept-Encoding:
- - gzip, deflate, br
+ - gzip, deflate
Connection:
- keep-alive
Cookie:
- MOCK_COOKIE
method: GET
- uri: https://query2.finance.yahoo.com/v8/finance/chart/EURUSD=X?crumb=MOCK_CRUMB&events=div%2Csplits%2CcapitalGains&includePrePost=False&interval=1d&period1=MOCK_PERIOD_1&period2=MOCK_PERIOD_2
+ uri: https://query2.finance.yahoo.com/v8/finance/chart/EURUSD=X?crumb=MOCK_CRUMB&events=div%2Csplits%2CcapitalGains&includePrePost=True&interval=1d&period1=MOCK_PERIOD_1&period2=MOCK_PERIOD_2
response:
body:
string: !!binary |
- H4sIAAAAAAAAAJS9Yc93OW7e913m9SI9RxIpyUBfOUb6ogkM1wFaBHkx9Y7dRXdntrOzaVwj3728
- KP60673/T5EWxYb+j55zU4eHInWJF/Uv3/3D//H9z79891f/8t3PP/zhj78N6T/9y3e/++GX7/XT
- P/zx559/+PEf/vm7v/ruP/4v//a7X333h3/+3f/+02/j//yb//h38cv/+L/Gbz/813jEj//0w3/4
- /nc/xH/567/+3+LH3/z4h19+/uPvfvjxl7//59/nz//x7/7ub/5D/rd//M3Pf/jl73/+/tc//Nvv
- f4n/9j7zad3X8/wqlPinP/72+5///fc//58//PL3v9ET3/mM+Y53j19990+/++Wnf/zHP/wQasbg
- X+K//z8//ajH/7t///d/psrf138olf7mjz//9Psf/of/+acff/3Tj9/9xR/5259/8w/6K//m2aP9
- 6ryOv/35h//ym5/++Ie//u1Pf8j/9m63X333ew39n37zY/z10OW8nJzIb378p7/94eff/PRrvbTf
- //yD/p+vyv346zMZn+3RXP/wS775P//pz+f3366i/9+Pm7b6+O963O9/+sMv/7+fxU//6lnxsF9/
- /8v3/+7n73+Ugr/5RZ/I+2u9W73/+D9C/C/f//Y3v/47/d9/iK/q/GfT/7y/+yn+t+f/ev7v+8/x
- P03/Y/qf99H//vMvGvy77//rd//5vx1jh1q/+30868++GIm99VbieLYjSjqirTZKXONlwG6rBrzP
- O2rA+z7PQlyznhv/2RlgvTHA382A+COOuFs9tz321oD29lkDWpM2R+zvMxA3E2puqN7mQPW22mLA
- fq2e25+HCfXmqN77QPU+emeA/lGJ/jChvhzV+zZUH09fNWC8bdRzR3uZ0BgT1YcZqsdrwhahAbYY
- 62VCFv9/DbB4fzXA8i8cMXSv59poTCj/QInTUd2WYQvbHVv405iQt4Xq3ieq+zBs4TawhXtnQr4W
- qvueqD4fxxbxQWCLMBwTmmOjeqiG6vFgbBE/Y4upt3vE9WxUX+9C9dUmtljdsMUagwmtfP8lblRf
- a2KLmAO22McbUuwPqu9j7xSPiVI87zrF83pS3G+pnoZ4EFfZYj3vLFuseP81oRUOMPjVn5dffU0e
- Fm+Nhy2vWaz3fUvfFf+mDBDibgzos2ax3uE1ixUqDAas92HA2pMBezGLFitAPTeWD/Rt4zUG2NMY
- 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
+ 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
+ Min3GL4rWvmaPN9azTaIQCI5yYp5u+q6wENzA2ZVbXrmW7gQoYP3S1dwAnwwmXftTLYT9fjX9BYa
+ 5ngzSM8IYQO3Um0gS4txbkBHJ+AlMKdkAmojIMp3bm92Cre9J7n5qvcKUAqtBHxfoRmVa8L41ega
+ +A9lMtb0uCgVNxrTwcfId9LctyZtalu+G64ZRBeQLjiauLZyke2DxKc5HbWkX4X/IQ0aFwXlFdbj
+ I/n0eQcN+1hSxHkHUOWcF+Hvqfo1MdrtFjTBB/WWPI8XyKKKmbwL0s2GfN2nvQHW+UBtpL897Uvk
+ sGM9Min8hu6hh6xI1BoRBYTJGfz5V/rhYi+4wwFcnFKhmxyyrPKd8xtY4VadcdobxbR7V7xBAX1I
+ lbZ5vS94HpOfHl8SCRv5WLWXj3gR36+yiMNi9exm3DDIqy7/QYbWxlgD4/LC61UNeAOm8oYi75Of
+ 0Yi/pT24oVmASUZbaS9g7GhBX3elb4DSG6JpiFR7U1ypsATvjJgOnTENLVfWnLRincCJUur6HVKI
+ OT44DP0S8k5et+ZdpHyZ/MYbCLdqDyhoyAde1QuRy0mZTfdzRxiny1UokpRTW5ZpVz1olZdQFsMb
+ S9GtQdas6IuwMYqma5WxfFHWAfd1hCxpmoC4f9lCvTEGbWe38AkauCiVruomPleu9GKK3fwhOlWo
+ U9qkgbSglxE2UhLEkhpQr+DuyJaQJvZN6jYvRCo1aav2xYM626vHh78+v/vE/3HQn47H+3/3//6/
+ /ffqFxnb6zf/NT/S/bcv/1LuWvj7F7vvUvi7FN539S6F/4e7FP4uhb9L4e9S+LsU/i6Fv0vh71L4
+ uxS+3KXwdyn8XQp/l8LfpfA+zrsUvtyl8OEj9y92v/rl1S9QzE8vL88vD795/+ndu19++V8wW4l5
+ D4IAAA==
headers:
Age:
- '0'
@@ -3797,7 +398,7 @@ interactions:
content-type:
- application/json;charset=utf-8
date:
- - Mon, 08 Jan 2024 11:43:43 GMT
+ - Thu, 29 Feb 2024 18:46:31 GMT
server:
- ATS
vary:
@@ -3805,7 +406,7 @@ interactions:
x-envoy-decorator-operation:
- finance-chart-api--mtls-production-gq1.finance-k8s.svc.yahoo.local:4080/*
x-envoy-upstream-service-time:
- - '37'
+ - '6'
status:
code: 200
message: OK
diff --git a/openbb_platform/providers/yfinance/tests/record/http/test_yfinance_fetchers/test_y_finance_index_historical_fetcher.yaml b/openbb_platform/providers/yfinance/tests/record/http/test_yfinance_fetchers/test_y_finance_index_historical_fetcher.yaml
index e7547797fef..c6f25bf7748 100644
--- a/openbb_platform/providers/yfinance/tests/record/http/test_yfinance_fetchers/test_y_finance_index_historical_fetcher.yaml
+++ b/openbb_platform/providers/yfinance/tests/record/http/test_yfinance_fetchers/test_y_finance_index_historical_fetcher.yaml
@@ -5,155 +5,7 @@ interactions:
Accept:
- '*/*'
Accept-Encoding:
- - gzip, deflate, br
- Connection:
- - keep-alive
- method: GET
- uri: https://fc.yahoo.com/
- response:
- body:
- string: "\n\n \n \n \n Yahoo\n
- \ \n
- \ \n \n \n
- \ \n \n \n \n \n \n \n \n \n \n\n"
- headers:
- Cache-Control:
- - no-store
- Connection:
- - keep-alive
- Content-Language:
- - en
- Content-Length:
- - '4350'
- Content-Type:
- - text/html
- Date:
- - Mon, 08 Jan 2024 11:43:34 GMT
- Expect-CT:
- - max-age=31536000, report-uri="http://csp.yahoo.com/beacon/csp?src=yahoocom-expect-ct-report-only"
- Server:
- - ATS
- Set-Cookie:
- - A3=d=AQABBNXfm2UCEACtmMeuc8nOjsLoX1hjlwQFEgEBAQExnWWlZdxW0iMA_eMAAA&S=AQAAAqMQ-PrLvICW--J8J9y-wZQ;
- Expires=Tue, 7 Jan 2025 17:43:34 GMT; Max-Age=31557600; Domain=.yahoo.com;
- Path=/; SameSite=None; Secure; HttpOnly
- Strict-Transport-Security:
- - max-age=31536000
- X-Content-Type-Options:
- - nosniff
- X-XSS-Protection:
- - 1; mode=block
- status:
- code: 502
- message: Connection timed out
-- request:
- body: null
- headers:
- Accept:
- - '*/*'
- Accept-Encoding:
- - gzip, deflate, br
- Connection:
- - keep-alive
- Cookie:
- - MOCK_COOKIE
- method: GET
- uri: https://query1.finance.yahoo.com/v1/test/getcrumb
- response:
- body:
- string: ASqh.0tGvoh
- headers:
- Age:
- - '0'
- Connection:
- - keep-alive
- Expect-CT:
- - max-age=31536000, report-uri="http://csp.yahoo.com/beacon/csp?src=yahoocom-expect-ct-report-only"
- Referrer-Policy:
- - no-referrer-when-downgrade
- Strict-Transport-Security:
- - max-age=31536000
- Transfer-Encoding:
- - chunked
- X-Content-Type-Options:
- - nosniff
- X-XSS-Protection:
- - 1; mode=block
- cache-control:
- - private
- content-type:
- - text/plain;charset=utf-8
- date:
- - Mon, 08 Jan 2024 11:43:35 GMT
- server:
- - ATS
- x-envoy-decorator-operation:
- - finance-yql--mtls-default-production-gq1.finance-k8s.svc.yahoo.local:4080/*
- x-envoy-upstream-service-time:
- - '1'
- x-frame-options:
- - SAMEORIGIN
- status:
- code: 200
- message: OK
-- request:
- body: null
- headers:
- Accept:
- - '*/*'
- Accept-Encoding:
- - gzip, deflate, br
+ - gzip, deflate
Connection:
- keep-alive
Cookie:
@@ -162,10 +14,10 @@ interactions:
uri: https://query2.finance.yahoo.com/v8/finance/chart/%5EGSPC?crumb=MOCK_CRUMB&interval=1d&range=1d
response:
body:
- string: '{"chart":{"result":[{"meta":{"currency":"USD","symbol":"^GSPC","exchangeName":"SNP","instrumentType":"INDEX","firstTradeDate":-1325583000,"regularMarketTime":1704491654,"gmtoffset":-18000,"timezone":"EST","exchangeTimezoneName":"America/New_York","regularMarketPrice":4697.24,"chartPreviousClose":4688.68,"priceHint":2,"currentTradingPeriod":{"pre":{"timezone":"EST","start":1704704400,"end":1704724200,"gmtoffset":-18000},"regular":{"timezone":"EST","start":1704724200,"end":1704747600,"gmtoffset":-18000},"post":{"timezone":"EST","start":1704747600,"end":1704762000,"gmtoffset":-18000}},"dataGranularity":"1d","range":"1d","validRanges":["1d","5d","1mo","3mo","6mo","1y","2y","5y","10y","ytd","max"]},"timestamp":[1704465000],"indicators":{"quote":[{"high":[4721.490234375],"close":[4697.240234375],"open":[4690.56982421875],"volume":[3844370000],"low":[4682.10986328125]}],"adjclose":[{"adjclose":[4697.240234375]}]}}],"error":null}}'
+ string: '{"chart":{"result":[{"meta":{"currency":"USD","symbol":"^GSPC","exchangeName":"SNP","instrumentType":"INDEX","firstTradeDate":-1325583000,"regularMarketTime":1709232389,"hasPrePostMarketData":false,"gmtoffset":-18000,"timezone":"EST","exchangeTimezoneName":"America/New_York","regularMarketPrice":5085.06,"chartPreviousClose":5069.76,"priceHint":2,"currentTradingPeriod":{"pre":{"timezone":"EST","start":1709197200,"end":1709217000,"gmtoffset":-18000},"regular":{"timezone":"EST","start":1709217000,"end":1709240400,"gmtoffset":-18000},"post":{"timezone":"EST","start":1709240400,"end":1709254800,"gmtoffset":-18000}},"dataGranularity":"1d","range":"1d","validRanges":["1d","5d","1mo","3mo","6mo","1y","2y","5y","10y","ytd","max"]},"timestamp":[1709232389],"indicators":{"quote":[{"close":[5085.06005859375],"volume":[1192320000],"high":[5096.35009765625],"low":[5061.89013671875],"open":[5085.35986328125]}],"adjclose":[{"adjclose":[5085.06005859375]}]}}],"error":null}}'
headers:
Age:
- - '1'
+ - '0'
Connection:
- keep-alive
Expect-CT:
@@ -181,11 +33,11 @@ interactions:
cache-control:
- public, max-age=10, stale-while-revalidate=20
content-length:
- - '936'
+ - '971'
content-type:
- application/json;charset=utf-8
date:
- - Mon, 08 Jan 2024 11:43:36 GMT
+ - Thu, 29 Feb 2024 18:46:31 GMT
server:
- ATS
vary:
@@ -193,7 +45,7 @@ interactions:
x-envoy-decorator-operation:
- finance-chart-api--mtls-production-gq1.finance-k8s.svc.yahoo.local:4080/*
x-envoy-upstream-service-time:
- - '2'
+ - '3'
status:
code: 200
message: OK
@@ -203,7 +55,7 @@ interactions:
Accept:
- '*/*'
Accept-Encoding:
- - gzip, deflate, br
+ - gzip, deflate
Connection:
- keep-alive
Cookie:
@@ -213,127 +65,144 @@ interactions:
response:
body:
string: !!binary |
- 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
+ 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
+ 9OHp4Tfvf3z79uef/xesyVwkr3cAAA==
headers:
Age:
- '0'
@@ -358,7 +227,7 @@ interactions:
content-type:
- application/json;charset=utf-8
date:
- - Mon, 08 Jan 2024 11:43:37 GMT
+ - Thu, 29 Feb 2024 18:46:31 GMT
server:
- ATS
vary:
@@ -366,7 +235,7 @@ interactions:
x-envoy-decorator-operation:
- finance-chart-api--mtls-production-gq1.finance-k8s.svc.yahoo.local:4080/*
x-envoy-upstream-service-time:
- - '5'
+ - '7'
status:
code: 200
message: OK
diff --git a/openbb_platform/providers/yfinance/tests/test_yfinance_fetchers.py b/openbb_platform/providers/yfinance/tests/test_yfinance_fetchers.py
index 19bf2b94ccc..7fe29e3c429 100644
--- a/openbb_platform/providers/yfinance/tests/test_yfinance_fetchers.py
+++ b/openbb_platform/providers/yfinance/tests/test_yfinance_fetchers.py
@@ -63,23 +63,28 @@ def vcr_config():
@pytest.mark.record_http
-def test_y_finance_historical_dividends_fetcher(credentials=test_credentials):
- params = {"symbol": "IBM"}
+def test_y_finance_crypto_historical_fetcher(credentials=test_credentials):
+ params = {
+ "symbol": "BTCUSD",
+ "start_date": date(2023, 1, 1),
+ "end_date": date(2023, 1, 10),
+ "interval": "1d",
+ }
- fetcher = YFinanceHistoricalDividendsFetcher()
+ fetcher = YFinanceCryptoHistoricalFetcher()
result = fetcher.test(params, credentials)
assert result is None
@pytest.mark.record_http
-def test_y_finance_market_indices_fetcher(credentials=test_credentials):
+def test_y_finance_currency_historical_fetcher(credentials=test_credentials):
params = {
- "symbol": "^GSPC",
+ "symbol": "EURUSD",
"start_date": date(2023, 1, 1),
"end_date": date(2023, 1, 10),
}
- fetcher = YFinanceMarketIndicesFetcher()
+ fetcher = YFinanceCurrencyHistoricalFetcher()
result = fetcher.test(params, credentials)
assert result is None
@@ -97,23 +102,13 @@ def test_y_finance_index_historical_fetcher(credentials=test_credentials):
assert result is None
-@pytest.mark.record_http
-def test_y_finance_crypto_historical_fetcher(credentials=test_credentials):
- params = {
- "symbol": "BTCUSD",
- "start_date": date(2023, 1, 1),
- "end_date": date(2023, 1, 10),
- }
-
- fetcher = YFinanceCryptoHistoricalFetcher()
- result = fetcher.test(params, credentials)
- assert result is None
-
-
@pytest.mark.record_http
def test_y_finance_equity_historical_fetcher(credentials=test_credentials):
params = {
"symbol": "AAPL",
+ "start_date": date(2023, 1, 1),
+ "end_date": date(2023, 1, 10),
+ "interval": "1d",
}
fetcher = YFinanceEquityHistoricalFetcher()
@@ -122,14 +117,23 @@ def test_y_finance_equity_historical_fetcher(credentials=test_credentials):
@pytest.mark.record_http
-def test_y_finance_currency_historical_fetcher(credentials=test_credentials):
+def test_y_finance_historical_dividends_fetcher(credentials=test_credentials):
+ params = {"symbol": "IBM"}
+
+ fetcher = YFinanceHistoricalDividendsFetcher()
+ result = fetcher.test(params, credentials)
+ assert result is None
+
+
+@pytest.mark.record_http
+def test_y_finance_market_indices_fetcher(credentials=test_credentials):
params = {
- "symbol": "EURUSD",
+ "symbol": "^GSPC",
"start_date": date(2023, 1, 1),
"end_date": date(2023, 1, 10),
}
- fetcher = YFinanceCurrencyHistoricalFetcher()
+ fetcher = YFinanceMarketIndicesFetcher()
result = fetcher.test(params, credentials)
assert result is None