fix econometrics not loading

This commit is contained in:
Diogo Sousa
2023-09-08 10:32:09 +01:00
parent 139f77e435
commit 6081deeaea
8 changed files with 654 additions and 166 deletions

View File

@@ -0,0 +1,15 @@
# Econometrics extension for OpenBB SDK
This extension provides a set of econometrics tools.
## Installation
To install the extension, run the following command in this folder:
```bash
pip install openbb-econometrics
```
For development please check [Contribution Guidelines](https://github.com/OpenBB-finance/OpenBBTerminal/blob/feature/openbb-sdk-v4/openbb_sdk/CONTRIBUTING.md).
Documentation available [here](https://docs.openbb.co/sdk).

View File

@@ -1,32 +1,30 @@
# This file is automatically @generated by Poetry 1.4.0 and should not be changed by hand.
# This file is automatically @generated by Poetry 1.6.1 and should not be changed by hand.
[[package]]
name = "anyio"
version = "3.7.1"
version = "4.0.0"
description = "High level compatibility layer for multiple asynchronous event loop implementations"
category = "main"
optional = false
python-versions = ">=3.7"
python-versions = ">=3.8"
files = [
{file = "anyio-3.7.1-py3-none-any.whl", hash = "sha256:91dee416e570e92c64041bd18b900d1d6fa78dff7048769ce5ac5ddad004fbb5"},
{file = "anyio-3.7.1.tar.gz", hash = "sha256:44a3c9aba0f5defa43261a8b3efb97891f2bd7d804e0e1f56419befa1adfc780"},
{file = "anyio-4.0.0-py3-none-any.whl", hash = "sha256:cfdb2b588b9fc25ede96d8db56ed50848b0b649dca3dd1df0b11f683bb9e0b5f"},
{file = "anyio-4.0.0.tar.gz", hash = "sha256:f7ed51751b2c2add651e5747c891b47e26d2a21be5d32d9311dfe9692f3e5d7a"},
]
[package.dependencies]
exceptiongroup = {version = "*", markers = "python_version < \"3.11\""}
exceptiongroup = {version = ">=1.0.2", markers = "python_version < \"3.11\""}
idna = ">=2.8"
sniffio = ">=1.1"
[package.extras]
doc = ["Sphinx", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx-rtd-theme (>=1.2.2)", "sphinxcontrib-jquery"]
test = ["anyio[trio]", "coverage[toml] (>=4.5)", "hypothesis (>=4.0)", "mock (>=4)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "uvloop (>=0.17)"]
trio = ["trio (<0.22)"]
doc = ["Sphinx (>=7)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)"]
test = ["anyio[trio]", "coverage[toml] (>=7)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "uvloop (>=0.17)"]
trio = ["trio (>=0.22)"]
[[package]]
name = "arch"
version = "5.6.0"
description = "ARCH for Python"
category = "main"
optional = false
python-versions = ">=3.8"
files = [
@@ -66,7 +64,6 @@ statsmodels = ">=0.11"
name = "astor"
version = "0.8.1"
description = "Read/rewrite/write Python ASTs"
category = "main"
optional = false
python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7"
files = [
@@ -78,7 +75,6 @@ files = [
name = "backoff"
version = "2.2.1"
description = "Function decoration for backoff and retry"
category = "main"
optional = false
python-versions = ">=3.7,<4.0"
files = [
@@ -90,7 +86,6 @@ files = [
name = "bcrypt"
version = "4.0.1"
description = "Modern password hashing for your software and your servers"
category = "main"
optional = false
python-versions = ">=3.6"
files = [
@@ -125,7 +120,6 @@ typecheck = ["mypy"]
name = "black"
version = "23.7.0"
description = "The uncompromising code formatter."
category = "main"
optional = false
python-versions = ">=3.8"
files = [
@@ -172,7 +166,6 @@ uvloop = ["uvloop (>=0.15.2)"]
name = "certifi"
version = "2023.7.22"
description = "Python package for providing Mozilla's CA Bundle."
category = "main"
optional = false
python-versions = ">=3.6"
files = [
@@ -184,7 +177,6 @@ files = [
name = "charset-normalizer"
version = "3.2.0"
description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet."
category = "main"
optional = false
python-versions = ">=3.7.0"
files = [
@@ -269,7 +261,6 @@ files = [
name = "click"
version = "8.1.7"
description = "Composable command line interface toolkit"
category = "main"
optional = false
python-versions = ">=3.7"
files = [
@@ -284,7 +275,6 @@ colorama = {version = "*", markers = "platform_system == \"Windows\""}
name = "colorama"
version = "0.4.6"
description = "Cross-platform colored terminal text."
category = "main"
optional = false
python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7"
files = [
@@ -294,77 +284,75 @@ files = [
[[package]]
name = "cython"
version = "3.0.1"
version = "3.0.2"
description = "The Cython compiler for writing C extensions in the Python language."
category = "main"
optional = false
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
files = [
{file = "Cython-3.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:119786513aad3bd8e483040d3757f11cec808e3f9d42c965c086db7fe62b69b1"},
{file = "Cython-3.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e5481c4ee02fd178e3ef1b2d98b0a828a79fda92998d9541088a00f70d83f9a7"},
{file = "Cython-3.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:08dc403e6fc2b105b83759c72980bc8d7b729b03dfe94c8345a5e999dfd07d15"},
{file = "Cython-3.0.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a1f7b8394cdf4d35a6d8129cdf3677642b9712793611850fbfb9cc7c4ef8d9cb"},
{file = "Cython-3.0.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:f8fde8dfec6a1fe5d9d035dbb740aacc1d7aea7f0dbcaa5ce61e9a8dea0c8888"},
{file = "Cython-3.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:f663c9206475675d5f1c086dcab0404bc7a732241f951a9c89258392601c26f8"},
{file = "Cython-3.0.1-cp310-cp310-win32.whl", hash = "sha256:b57d5bda3cf15e59ab46fb541d448f1b52c0d8fe8bbed7baec613537e41161eb"},
{file = "Cython-3.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:02e2cdaff5795875aa4441068c20a04edb727a145dd45518926f7ae692ec0061"},
{file = "Cython-3.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5e544e91efa287de31014550aa6e8525507ea6d5727c36ff5f96e9dcf9c40133"},
{file = "Cython-3.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:182ae584dbaa6fd73161a6f8cc7d350eeefc43c091cabc2b70fa1a802a7ef729"},
{file = "Cython-3.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:05dba6b214a12aa66421d810d24d0298ff37cb6036d00d4e851b61a54948540c"},
{file = "Cython-3.0.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:35c28fc53745e7ebabb54d13d6cd3d3659f65ef50d324dadd9146212adb236cc"},
{file = "Cython-3.0.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:6d9dbcecd61f4f22ae6a035628e803490af7f0e16fd91e97fec63face61873a5"},
{file = "Cython-3.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:4acd382eb6d8cd34df421c42f1bfc8c7c0c38cd213fa35222a65a2a988fe50da"},
{file = "Cython-3.0.1-cp311-cp311-win32.whl", hash = "sha256:c43adbc5a3a1d678314734f69dba3eb4f24438ba668e08a438b8067ac5a6494e"},
{file = "Cython-3.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:35701606862989d5db641cf8cb85f62eaab9beaafb09a102839aebe5a70a1060"},
{file = "Cython-3.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:9dbdb0019304ec84c7209a967043fc4923ed2d911a37ed695c3d1548c99b1285"},
{file = "Cython-3.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:92f0dda50c11770673c332603b52ce0cb4abf32f2562e53dbdc4b674b6be7faa"},
{file = "Cython-3.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c6f7ead11cfb2d6c6dd7a1fd1987ce221c5c1061b47d747b0bb84b5704045cf9"},
{file = "Cython-3.0.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5936dd43207a3f0269d033463195e201072b9b594c9693ff142985c0c33cd2d2"},
{file = "Cython-3.0.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:768044473afd9fca3ba65d92deb80f16aa10d2776c9c2a8f667dbb480a58c528"},
{file = "Cython-3.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:79f3ea7233e8a8856e57acdb7a30e8548009732649ffabe94049b35e2e5d7b8a"},
{file = "Cython-3.0.1-cp312-cp312-win32.whl", hash = "sha256:b0917b84af48616124dfead2235b36c64c0d024c4d19cefa1a5da2f106a0854a"},
{file = "Cython-3.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:bde58bda00d4689eb51ad3129873b09c695a64d3b6b8573cbc450e177a87173a"},
{file = "Cython-3.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:e69223fb6b99addff8b6d8a3e9f5ae044438bbf48dc08a3495eb99b13e62273c"},
{file = "Cython-3.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6a51fa13b5fcace8389888542b7bf63728898a9fefcb471cbf9f7736ce057d8a"},
{file = "Cython-3.0.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3194c330dc4c07c01f7d802868960ff053ef5c026aea17e03b025e307c9d94fe"},
{file = "Cython-3.0.1-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:49f13d342a810947685759597013e1e4fdc9875d74372fa6121cb190913100d4"},
{file = "Cython-3.0.1-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:d9a510157a454bec22752713465d1698098b99351bc41be8938f3d526286aa6f"},
{file = "Cython-3.0.1-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:6bfdce6a65b8587ed992af912107d9cf047ed14bfdddcba6bd7917feb93cb441"},
{file = "Cython-3.0.1-cp36-cp36m-win32.whl", hash = "sha256:b76e3237b7c6e1cb53af2223c20f5b51ea1cc40d77966eb121187825657fb9cf"},
{file = "Cython-3.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:db53e83bc793538ed00e8fe04d2a2469c8f18f636f3e9b26564b51d6b384015c"},
{file = "Cython-3.0.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:e7d42293809ff45d7743fb81bda64ecdb24a269d5bfcbd22cf74f2b8d112039f"},
{file = "Cython-3.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a8f0f4fc248e742d6a17fdbb646fff21d99e21b7ce5180f00dcf8a9588fbfb73"},
{file = "Cython-3.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e88759313bffc67616ee10ff142a395b19a48789a5e20880e8fc8fd3208ab37"},
{file = "Cython-3.0.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:da7f41b170a70b5c0172795a487c7301b43c136918b23724aec8d1388cee668f"},
{file = "Cython-3.0.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:db6a823a86a10532934f83b6445f07634b2ad872fe52577ab0861a0f074e3036"},
{file = "Cython-3.0.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:d322561a852fa77b4b47668b12265f4a6ae7aed232aad2e3d52379e16c4e1ece"},
{file = "Cython-3.0.1-cp37-cp37m-win32.whl", hash = "sha256:f02fcd11da42739a6fe3b5e1a3b21e644e10d02fb47757b1be239cabe3312d51"},
{file = "Cython-3.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:e02c1c06d2b0138effead19c6c352ac1b99b2c431d97b6379ff4e17c9348bf61"},
{file = "Cython-3.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:53883e5092eff175aea2811e987ae930723ee4657bd470f549b63c5fd738ada3"},
{file = "Cython-3.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:402b05a42a516a53912d980de644fdc30b6702e5f8ebf984276e162cac4a12c5"},
{file = "Cython-3.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fba7d0d5978a5ddb5e3cd59ce2b5bfeace6cabdad8aa7b5f740028e8b3126b88"},
{file = "Cython-3.0.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:346232ecb90ade8ff456361b58e9ca21cf672a4191e26ae498993975980a615b"},
{file = "Cython-3.0.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:d12ab154d8bf68eadea69ff24f1bc90d7a332b20da4d9a3a82e737f6fc06091a"},
{file = "Cython-3.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:cf6c8c05075b510d4f53127a8239c43a5f148e1ba1c479cb3e21e15112c533cf"},
{file = "Cython-3.0.1-cp38-cp38-win32.whl", hash = "sha256:9a12ac8f9cc2e8ed191f7b18e8661cd64d7ff2299e4566abc8c03e03721ba6ca"},
{file = "Cython-3.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:dc65a9cdeb29b553bfcdc90499b672a75bc85ed7d4b212018e513463244f59ae"},
{file = "Cython-3.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:934f236a1f002705f012b7ba7b068a092c0023a7b965d3139c8dc7e34f166dd1"},
{file = "Cython-3.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c5ad08fed2444a0168dbfe0589cd711091adf38d19ea4421ebe92886bf4e0c22"},
{file = "Cython-3.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ff571d41e2673678929ad1f5fee68e1757bd8e42c0082c3359138da56fc25263"},
{file = "Cython-3.0.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:137ec3f7abda49f53621c8c7f427d93ad5ac33a5f4e112e04594c1aad0bd0613"},
{file = "Cython-3.0.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:fc1452139e1eb044b6e906a71c92e5580fec4deabe75cb440324d17b1163b038"},
{file = "Cython-3.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:720e72474c55d33c245e0280ecb4b604dd301ed3851c78cede932f2c3d074224"},
{file = "Cython-3.0.1-cp39-cp39-win32.whl", hash = "sha256:d63f67696df2caeac5c57a12485ff4c7f377bead430c3654145b57bc105ba3c6"},
{file = "Cython-3.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:00f7378e1cd1c22076922489cb628ce63301c018231c67f1389cef803cc2b586"},
{file = "Cython-3.0.1-py2.py3-none-any.whl", hash = "sha256:7894efe3b47231bfdf8be1a8a2852a2b07dd83cad16bbdf666591894198c82dd"},
{file = "Cython-3.0.1.tar.gz", hash = "sha256:f3e49c4eaaa11345486ac0fa2b350636e44a4b45bd7521a6b133924c5ff20bba"},
{file = "Cython-3.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:8ccb91d2254e34724f1541b2a6fcdfacdb88284185b0097ae84e0ddf476c7a38"},
{file = "Cython-3.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c298b1589205ecaaed0457ad05e0c8a43e7db2053607f48ed4a899cb6aa114df"},
{file = "Cython-3.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e825e682cef76d0c33384f38b56b7e87c76152482a914dfc78faed6ff66ce05a"},
{file = "Cython-3.0.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:77ec0134fc1b10aebef2013936a91c07bff2498ec283bc2eca099ee0cb94d12e"},
{file = "Cython-3.0.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:c90eeb94395315e65fd758a2f86b92904fce7b50060b4d45a878ef6767f9276e"},
{file = "Cython-3.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:38085523fa7a299638d051ae08144222785639882f6291bd275c0b12db1034ff"},
{file = "Cython-3.0.2-cp310-cp310-win32.whl", hash = "sha256:b032cb0c69082f0665b2c5fb416d041157062f1538336d0edf823b9ee500e39c"},
{file = "Cython-3.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:067b2b9eb487bd61367b296f11b7c1c70a084b3eb7d5a572f607cd1fc5ca5586"},
{file = "Cython-3.0.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:213ff9f95de319e54b520bf31edd6aa7a1fa4fbf617c2beb0f92362595e6476a"},
{file = "Cython-3.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4bebbca13078125a35937966137af4bd0300a0c66fd7ae4ce36adc049b13bdf3"},
{file = "Cython-3.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d5e5587128e8c2423aefcffa4ded4ddf60d44898938fbb7c0f236636a750a94f"},
{file = "Cython-3.0.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:78e2853d484643c6b7ac3bdb48392753442da1c71b689468fa3176b619bebe54"},
{file = "Cython-3.0.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:c5e722732e9aa9bde667ed6d87525234823eb7766ca234cfb19d7e0c095a2ef4"},
{file = "Cython-3.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:989787fc24a95100a26918b6577d06e15a8868a3ed267009c5cfcf1a906179ac"},
{file = "Cython-3.0.2-cp311-cp311-win32.whl", hash = "sha256:d21801981db44b7e9f9768f121317946461d56b51de1e6eff3c42e8914048696"},
{file = "Cython-3.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:809617cf4825b2138ce0ec827e1f28e39668743c81ac8286373f8d148c05f088"},
{file = "Cython-3.0.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:5682293d344b7dbad97ce6eceb9e887aca6e53499709db9da726ca3424e5559d"},
{file = "Cython-3.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7e08ff5da5f5b969639784b1bffcd880a0c0f048d182aed7cba9945ee8b367c2"},
{file = "Cython-3.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8850269ff59f77a1629e26d0576701925360d732011d6d3516ccdc5b2c2bc310"},
{file = "Cython-3.0.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:550b3fbe9b3c555b44ded934f4822f9fcc04dfcee512167ebcbbd370ccede20e"},
{file = "Cython-3.0.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:4db017b104f47b1185237702f6ed2651839c8124614683efa7c489f3fa4e19d9"},
{file = "Cython-3.0.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:75a2395cc7b78cff59be6e9b7f92bbb5d7b8d25203f6d3fb6f72bdb7d3f49777"},
{file = "Cython-3.0.2-cp312-cp312-win32.whl", hash = "sha256:786b6034a91e886116bb562fe42f8bf0f97c3e00c02e56791d02675959ed65b1"},
{file = "Cython-3.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:cc9d173ab8b167cae674f6deed8c65ba816574797a2bd6d8aa623277d1fa81ca"},
{file = "Cython-3.0.2-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:8948504338d7a140ce588333177dcabf0743a68dbc83b0174f214f5b959634d5"},
{file = "Cython-3.0.2-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a51efba0e136b2af358e5a347bae09678b17460c35cf1eab24f0476820348991"},
{file = "Cython-3.0.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:05cb2a73810f045d328b7579cf98f550a9e601df5e282d1fea0512d8ad589011"},
{file = "Cython-3.0.2-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:22ba78e48bdb65977928ecb275ac8c82df7b0eefa075078a1363a5af4606b42e"},
{file = "Cython-3.0.2-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:302281b927409b3e0ef8cd9251eab782cf1acd2578eab305519fbae5d184b7e9"},
{file = "Cython-3.0.2-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:a1c3675394b81024aaf56e4f53c2b4f81d9a116c7049e9d4706f810899c9134e"},
{file = "Cython-3.0.2-cp36-cp36m-win32.whl", hash = "sha256:34f7b014ebce5d325c8084e396c81cdafbd8d82be56780dffe6b67b28c891f1b"},
{file = "Cython-3.0.2-cp36-cp36m-win_amd64.whl", hash = "sha256:477cd3549597f09a1608da7b05e16ba641e9aedd171b868533a5a07790ed886f"},
{file = "Cython-3.0.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:a49dde9f9e29ea82f29aaf3bb1a270b6eb90b75d627c7ff2f5dd3764540ae646"},
{file = "Cython-3.0.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bc1c8013fad0933f5201186eccc5f2be223cafd6a8dcd586d3f7bb6ba84dc845"},
{file = "Cython-3.0.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6b75e9c9d7ad7c9dd85d45241d1d4e3c5f66079c1f84eec91689c26d98bc3349"},
{file = "Cython-3.0.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7f43c4d3ecd9e3b8b7afe834e519f55cf4249b1088f96d11b96f02c55cbaeff7"},
{file = "Cython-3.0.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:dab6a923e21e212aa3dc6dde9b22a190f5d7c449315a94e57ddc019ea74a979b"},
{file = "Cython-3.0.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:ae453cfa933b919c0a19d2cc5dc9fb28486268e95dc2ab7a11ab7f99cf8c3883"},
{file = "Cython-3.0.2-cp37-cp37m-win32.whl", hash = "sha256:b1f023d36a3829069ed11017c670128be3f135a9c17bd64c35d3b3442243b05c"},
{file = "Cython-3.0.2-cp37-cp37m-win_amd64.whl", hash = "sha256:011c4e0b75baee1843334562487eb4fbc0c59ddb2cc32a978b972a81eedcbdcc"},
{file = "Cython-3.0.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:832bbee87bca760efeae248ddf19ccd77f9a2355cb6f8a64f20cc377e56957b3"},
{file = "Cython-3.0.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4fe806d154b6b7f0ab746dac36c022889e2e7cf47546ff9afdc29a62cfa692d0"},
{file = "Cython-3.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e486331a29e7700b1ad5f4f753bef483c81412a5e64a873df46d6cb66f9a65de"},
{file = "Cython-3.0.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:54d41a1dfbaab74449873e7f8e6cd4239850fe7a50f7f784dd99a560927f3bac"},
{file = "Cython-3.0.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:4dca13c86d6cd523c7d8bbf8db1b2bbf8faedd0addedb229158d8015ad1819e1"},
{file = "Cython-3.0.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:10cbfb37f31938371a6213cc8b5459c639954aed053efeded3c012d4c5915db9"},
{file = "Cython-3.0.2-cp38-cp38-win32.whl", hash = "sha256:e663c237579c033deaa2cb362b74651da7712f56e441c11382510a8c4c4f2dd7"},
{file = "Cython-3.0.2-cp38-cp38-win_amd64.whl", hash = "sha256:2f84bd6cefa5130750c492038170c44f1cbd6f42e9ed85e168fd9cb453f85160"},
{file = "Cython-3.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f37e4287f520f3748a06ad5eaae09ba4ac68f52e155d70de5f75780d83575c43"},
{file = "Cython-3.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dd30826ca8b27b2955a63c8ffe8aacc9f0779582b4bd154cf7b441ac10dae2cb"},
{file = "Cython-3.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:08d67c7225a09eeb77e090c8d4f60677165b052ccf76e3a57d8237064e5c2de2"},
{file = "Cython-3.0.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9e625eec8c5c9a8cb062a318b257cc469d301bed952c7daf86e38bbd3afe7c91"},
{file = "Cython-3.0.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:1b12a8f23270675b537d1c3b988f845bea4bbcc66ae0468857f5ede0526d4522"},
{file = "Cython-3.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:62dd78afdf748a58dae9c9b9c42a1519ae30787b28ce5f84a0e1bb54144142ca"},
{file = "Cython-3.0.2-cp39-cp39-win32.whl", hash = "sha256:d0d0cc4ecc05f41c5e02af14ac0083552d22efed976f79eb7bade55fed63b25d"},
{file = "Cython-3.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:147cc1d3dda8b06de9d86df5e59cdf15f0a522620168b7349a5ec88b48104d7d"},
{file = "Cython-3.0.2-py2.py3-none-any.whl", hash = "sha256:8f1c9e4b8e413da211dd7942440cf410ff0eafb081309e04e81f4fafbb146bf2"},
{file = "Cython-3.0.2.tar.gz", hash = "sha256:9594818dca8bb22ae6580c5222da2bc5cc32334350bd2d294a00d8669bcc61b5"},
]
[[package]]
name = "ecdsa"
version = "0.18.0"
description = "ECDSA cryptographic signature library (pure python)"
category = "main"
optional = false
python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*"
files = [
@@ -383,7 +371,6 @@ gmpy2 = ["gmpy2"]
name = "exceptiongroup"
version = "1.1.3"
description = "Backport of PEP 654 (exception groups)"
category = "main"
optional = false
python-versions = ">=3.7"
files = [
@@ -398,7 +385,6 @@ test = ["pytest (>=6)"]
name = "fastapi"
version = "0.100.1"
description = "FastAPI framework, high performance, easy to learn, fast to code, ready for production"
category = "main"
optional = false
python-versions = ">=3.7"
files = [
@@ -418,7 +404,6 @@ all = ["email-validator (>=2.0.0)", "httpx (>=0.23.0)", "itsdangerous (>=1.1.0)"
name = "formulaic"
version = "0.6.4"
description = "An implementation of Wilkinson formulas."
category = "main"
optional = false
python-versions = ">=3.7.2"
files = [
@@ -444,7 +429,6 @@ calculus = ["sympy (>=1.3,!=1.10)"]
name = "graphlib-backport"
version = "1.0.3"
description = "Backport of the Python 3.9 graphlib module for Python 3.6+"
category = "main"
optional = false
python-versions = ">=3.6,<4.0"
files = [
@@ -456,7 +440,6 @@ files = [
name = "h11"
version = "0.14.0"
description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1"
category = "main"
optional = false
python-versions = ">=3.7"
files = [
@@ -468,7 +451,6 @@ files = [
name = "html5lib"
version = "1.1"
description = "HTML parser based on the WHATWG HTML specification"
category = "main"
optional = false
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
files = [
@@ -490,7 +472,6 @@ lxml = ["lxml"]
name = "idna"
version = "3.4"
description = "Internationalized Domain Names in Applications (IDNA)"
category = "main"
optional = false
python-versions = ">=3.5"
files = [
@@ -502,7 +483,6 @@ files = [
name = "importlib-metadata"
version = "6.8.0"
description = "Read metadata from Python packages"
category = "main"
optional = false
python-versions = ">=3.8"
files = [
@@ -522,7 +502,6 @@ testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs
name = "interface-meta"
version = "1.3.0"
description = "`interface_meta` provides a convenient way to expose an extensible API with enforced method signatures and consistent documentation."
category = "main"
optional = false
python-versions = ">=3.7,<4.0"
files = [
@@ -534,7 +513,6 @@ files = [
name = "linearmodels"
version = "4.31"
description = "Linear Panel, Instrumental Variable, Asset Pricing, and System Regression models for Python"
category = "main"
optional = false
python-versions = ">=3.8"
files = [
@@ -579,7 +557,6 @@ statsmodels = ">=0.11"
name = "monotonic"
version = "1.6"
description = "An implementation of time.monotonic() for Python 2 & < 3.3"
category = "main"
optional = false
python-versions = "*"
files = [
@@ -591,7 +568,6 @@ files = [
name = "mypy-extensions"
version = "1.0.0"
description = "Type system extensions for programs checked with the mypy type checker."
category = "main"
optional = false
python-versions = ">=3.5"
files = [
@@ -603,7 +579,6 @@ files = [
name = "numpy"
version = "1.24.4"
description = "Fundamental package for array computing in Python"
category = "main"
optional = false
python-versions = ">=3.8"
files = [
@@ -641,7 +616,6 @@ files = [
name = "numpy"
version = "1.25.2"
description = "Fundamental package for array computing in Python"
category = "main"
optional = false
python-versions = ">=3.9"
files = [
@@ -674,9 +648,8 @@ files = [
[[package]]
name = "openbb-core"
version = "0.2.0"
description = ""
category = "main"
version = "0.1.0a1"
description = "OpenBB package with core functionality"
optional = false
python-versions = "^3.8"
files = []
@@ -687,16 +660,13 @@ bcrypt = "^4.0.1"
black = "^23.7.0"
fastapi = "^0.100.1"
html5lib = "^1.1"
importlib_metadata = "^6.8.0"
openbb-provider = {path = "../provider"}
pandas = ">1.5.3"
openbb-provider = "^0.1.0a1"
pandas = ">=1.5.3"
passlib = "^1.7.4"
posthog = "^3.0.1"
python-jose = "^3.3.0"
python-multipart = "^0.0.6"
requests = "^2.28.2"
ruff = "0.0.256"
urllib3 = "<2.0.0"
uuid7 = "^0.1.0"
uvicorn = "^0.20.0"
websockets = "^10.4"
@@ -707,29 +677,25 @@ url = "../../sdk/core"
[[package]]
name = "openbb-provider"
version = "0.2.0"
description = ""
category = "main"
version = "0.1.0a1"
description = "OpenBB package to execute queries to financial data providers"
optional = false
python-versions = "^3.8"
files = []
develop = false
python-versions = ">=3.8,<4.0"
files = [
{file = "openbb_provider-0.1.0a1-py3-none-any.whl", hash = "sha256:a571fd6c4282143adb99cc6af6c3d5651539bc4ef5f7bff6fb8853c1f9caa0ef"},
{file = "openbb_provider-0.1.0a1.tar.gz", hash = "sha256:0db56bf2889b40159bc448c29439ed2356d0e7ee461421351bbc87b39d599177"},
]
[package.dependencies]
importlib-metadata = "^6.8.0"
pydantic = {version = "^1.10", extras = ["dotenv"]}
requests = "^2.31.0"
importlib-metadata = ">=6.8.0,<7.0.0"
pydantic = {version = ">=1.10,<2.0", extras = ["dotenv"]}
requests = ">=2.31.0,<3.0.0"
urllib3 = "<2.0.0"
[package.source]
type = "directory"
url = "../../sdk/provider"
[[package]]
name = "packaging"
version = "23.1"
description = "Core utilities for Python packages"
category = "main"
optional = false
python-versions = ">=3.7"
files = [
@@ -741,7 +707,6 @@ files = [
name = "pandas"
version = "2.0.3"
description = "Powerful data structures for data analysis, time series, and statistics"
category = "main"
optional = false
python-versions = ">=3.8"
files = [
@@ -774,8 +739,8 @@ files = [
[package.dependencies]
numpy = [
{version = ">=1.21.0", markers = "python_version >= \"3.10\" and python_version < \"3.11\""},
{version = ">=1.20.3", markers = "python_version < \"3.10\""},
{version = ">=1.21.0", markers = "python_version >= \"3.10\""},
{version = ">=1.23.2", markers = "python_version >= \"3.11\""},
]
python-dateutil = ">=2.8.2"
@@ -809,7 +774,6 @@ xml = ["lxml (>=4.6.3)"]
name = "passlib"
version = "1.7.4"
description = "comprehensive password hashing framework supporting over 30 schemes"
category = "main"
optional = false
python-versions = "*"
files = [
@@ -827,7 +791,6 @@ totp = ["cryptography"]
name = "pathspec"
version = "0.11.2"
description = "Utility library for gitignore style pattern matching of file paths."
category = "main"
optional = false
python-versions = ">=3.7"
files = [
@@ -839,7 +802,6 @@ files = [
name = "patsy"
version = "0.5.3"
description = "A Python package for describing statistical models and for building design matrices."
category = "main"
optional = false
python-versions = "*"
files = [
@@ -858,7 +820,6 @@ test = ["pytest", "pytest-cov", "scipy"]
name = "platformdirs"
version = "3.10.0"
description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"."
category = "main"
optional = false
python-versions = ">=3.7"
files = [
@@ -874,7 +835,6 @@ test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=7.4)", "pytest-co
name = "posthog"
version = "3.0.2"
description = "Integrate PostHog into any python application."
category = "main"
optional = false
python-versions = "*"
files = [
@@ -898,7 +858,6 @@ test = ["coverage", "flake8", "freezegun (==0.3.15)", "mock (>=2.0.0)", "pylint"
name = "property-cached"
version = "1.6.4"
description = "A decorator for caching properties in classes (forked from cached-property)."
category = "main"
optional = false
python-versions = ">= 3.5"
files = [
@@ -910,7 +869,6 @@ files = [
name = "pyasn1"
version = "0.5.0"
description = "Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208)"
category = "main"
optional = false
python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7"
files = [
@@ -922,7 +880,6 @@ files = [
name = "pydantic"
version = "1.10.12"
description = "Data validation and settings management using python type hints"
category = "main"
optional = false
python-versions = ">=3.7"
files = [
@@ -976,7 +933,6 @@ email = ["email-validator (>=1.0.3)"]
name = "pyhdfe"
version = "0.2.0"
description = "High dimensional fixed effect absorption with Python 3"
category = "main"
optional = false
python-versions = ">=3.6"
files = [
@@ -996,7 +952,6 @@ tests = ["pytest", "pytest-xdist"]
name = "python-dateutil"
version = "2.8.2"
description = "Extensions to the standard Python datetime module"
category = "main"
optional = false
python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7"
files = [
@@ -1011,7 +966,6 @@ six = ">=1.5"
name = "python-dotenv"
version = "1.0.0"
description = "Read key-value pairs from a .env file and set them as environment variables"
category = "main"
optional = false
python-versions = ">=3.8"
files = [
@@ -1026,7 +980,6 @@ cli = ["click (>=5.0)"]
name = "python-jose"
version = "3.3.0"
description = "JOSE implementation in Python"
category = "main"
optional = false
python-versions = "*"
files = [
@@ -1048,7 +1001,6 @@ pycryptodome = ["pyasn1", "pycryptodome (>=3.3.1,<4.0.0)"]
name = "python-multipart"
version = "0.0.6"
description = "A streaming multipart parser for Python"
category = "main"
optional = false
python-versions = ">=3.7"
files = [
@@ -1061,21 +1013,19 @@ dev = ["atomicwrites (==1.2.1)", "attrs (==19.2.0)", "coverage (==6.5.0)", "hatc
[[package]]
name = "pytz"
version = "2023.3"
version = "2023.3.post1"
description = "World timezone definitions, modern and historical"
category = "main"
optional = false
python-versions = "*"
files = [
{file = "pytz-2023.3-py2.py3-none-any.whl", hash = "sha256:a151b3abb88eda1d4e34a9814df37de2a80e301e68ba0fd856fb9b46bfbbbffb"},
{file = "pytz-2023.3.tar.gz", hash = "sha256:1d8ce29db189191fb55338ee6d0387d82ab59f3d00eac103412d64e0ebd0c588"},
{file = "pytz-2023.3.post1-py2.py3-none-any.whl", hash = "sha256:ce42d816b81b68506614c11e8937d3aa9e41007ceb50bfdcb0749b921bf646c7"},
{file = "pytz-2023.3.post1.tar.gz", hash = "sha256:7b4fddbeb94a1eba4b557da24f19fdf9db575192544270a9101d8509f9f43d7b"},
]
[[package]]
name = "requests"
version = "2.31.0"
description = "Python HTTP for Humans."
category = "main"
optional = false
python-versions = ">=3.7"
files = [
@@ -1097,7 +1047,6 @@ use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"]
name = "rsa"
version = "4.9"
description = "Pure-Python RSA implementation"
category = "main"
optional = false
python-versions = ">=3.6,<4"
files = [
@@ -1112,7 +1061,6 @@ pyasn1 = ">=0.1.3"
name = "ruff"
version = "0.0.256"
description = "An extremely fast Python linter, written in Rust."
category = "main"
optional = false
python-versions = ">=3.7"
files = [
@@ -1139,7 +1087,6 @@ files = [
name = "scipy"
version = "1.10.1"
description = "Fundamental algorithms for scientific computing in Python"
category = "main"
optional = false
python-versions = "<3.12,>=3.8"
files = [
@@ -1176,26 +1123,24 @@ test = ["asv", "gmpy2", "mpmath", "pooch", "pytest", "pytest-cov", "pytest-timeo
[[package]]
name = "setuptools"
version = "68.1.2"
version = "68.2.0"
description = "Easily download, build, install, upgrade, and uninstall Python packages"
category = "main"
optional = false
python-versions = ">=3.8"
files = [
{file = "setuptools-68.1.2-py3-none-any.whl", hash = "sha256:3d8083eed2d13afc9426f227b24fd1659489ec107c0e86cec2ffdde5c92e790b"},
{file = "setuptools-68.1.2.tar.gz", hash = "sha256:3d4dfa6d95f1b101d695a6160a7626e15583af71a5f52176efa5d39a054d475d"},
{file = "setuptools-68.2.0-py3-none-any.whl", hash = "sha256:af3d5949030c3f493f550876b2fd1dd5ec66689c4ee5d5344f009746f71fd5a8"},
{file = "setuptools-68.2.0.tar.gz", hash = "sha256:00478ca80aeebeecb2f288d3206b0de568df5cd2b8fada1209843cc9a8d88a48"},
]
[package.extras]
docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (>=3.5,<=7.1.2)", "sphinx-favicon", "sphinx-hoverxref (<2)", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (==0.8.3)", "sphinx-reredirects", "sphinxcontrib-towncrier"]
docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-hoverxref (<2)", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier"]
testing = ["build[virtualenv]", "filelock (>=3.4.0)", "flake8-2020", "ini2toml[lite] (>=0.9)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pip (>=19.1)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-perf", "pytest-ruff", "pytest-timeout", "pytest-xdist", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"]
testing-integration = ["build[virtualenv]", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"]
testing-integration = ["build[virtualenv]", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "packaging", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"]
[[package]]
name = "setuptools-scm"
version = "7.1.0"
description = "the blessed package to manage your versions by scm tags"
category = "main"
optional = false
python-versions = ">=3.7"
files = [
@@ -1220,7 +1165,6 @@ toml = ["setuptools (>=42)"]
name = "six"
version = "1.16.0"
description = "Python 2 and 3 compatibility utilities"
category = "main"
optional = false
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*"
files = [
@@ -1232,7 +1176,6 @@ files = [
name = "sniffio"
version = "1.3.0"
description = "Sniff out which async library your code is running under"
category = "main"
optional = false
python-versions = ">=3.7"
files = [
@@ -1244,7 +1187,6 @@ files = [
name = "starlette"
version = "0.27.0"
description = "The little ASGI library that shines."
category = "main"
optional = false
python-versions = ">=3.7"
files = [
@@ -1263,7 +1205,6 @@ full = ["httpx (>=0.22.0)", "itsdangerous", "jinja2", "python-multipart", "pyyam
name = "statsmodels"
version = "0.14.0"
description = "Statistical computations and models for Python"
category = "main"
optional = false
python-versions = ">=3.8"
files = [
@@ -1292,8 +1233,8 @@ files = [
[package.dependencies]
numpy = [
{version = ">=1.18", markers = "python_version != \"3.10\" or platform_system != \"Windows\" or platform_python_implementation == \"PyPy\""},
{version = ">=1.22.3", markers = "python_version == \"3.10\" and platform_system == \"Windows\" and platform_python_implementation != \"PyPy\""},
{version = ">=1.18", markers = "python_version != \"3.10\" or platform_system != \"Windows\" or platform_python_implementation == \"PyPy\""},
]
packaging = ">=21.3"
pandas = ">=1.0"
@@ -1309,7 +1250,6 @@ docs = ["ipykernel", "jupyter-client", "matplotlib", "nbconvert", "nbformat", "n
name = "tomli"
version = "2.0.1"
description = "A lil' TOML parser"
category = "main"
optional = false
python-versions = ">=3.7"
files = [
@@ -1321,7 +1261,6 @@ files = [
name = "typing-extensions"
version = "4.7.1"
description = "Backported and Experimental Type Hints for Python 3.7+"
category = "main"
optional = false
python-versions = ">=3.7"
files = [
@@ -1333,7 +1272,6 @@ files = [
name = "tzdata"
version = "2023.3"
description = "Provider of IANA time zone data"
category = "main"
optional = false
python-versions = ">=2"
files = [
@@ -1345,7 +1283,6 @@ files = [
name = "urllib3"
version = "1.26.16"
description = "HTTP library with thread-safe connection pooling, file post, and more."
category = "main"
optional = false
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*"
files = [
@@ -1362,7 +1299,6 @@ socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"]
name = "uuid7"
version = "0.1.0"
description = "UUID version 7, generating time-sorted UUIDs with 200ns time resolution and 48 bits of randomness"
category = "main"
optional = false
python-versions = ">=3.7"
files = [
@@ -1374,7 +1310,6 @@ files = [
name = "uvicorn"
version = "0.20.0"
description = "The lightning-fast ASGI server."
category = "main"
optional = false
python-versions = ">=3.7"
files = [
@@ -1393,7 +1328,6 @@ standard = ["colorama (>=0.4)", "httptools (>=0.5.0)", "python-dotenv (>=0.13)",
name = "webencodings"
version = "0.5.1"
description = "Character encoding aliases for legacy web content"
category = "main"
optional = false
python-versions = "*"
files = [
@@ -1405,7 +1339,6 @@ files = [
name = "websockets"
version = "10.4"
description = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)"
category = "main"
optional = false
python-versions = ">=3.7"
files = [
@@ -1484,7 +1417,6 @@ files = [
name = "wrapt"
version = "1.15.0"
description = "Module for decorators, wrappers and monkey patching."
category = "main"
optional = false
python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7"
files = [
@@ -1569,7 +1501,6 @@ files = [
name = "zipp"
version = "3.16.2"
description = "Backport of pathlib-compatible object wrapper for zip files"
category = "main"
optional = false
python-versions = ">=3.8"
files = [
@@ -1583,5 +1514,5 @@ testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "p
[metadata]
lock-version = "2.0"
python-versions = ">=3.8,<3.12" # scipy forces python <4.0 explicitly
content-hash = "b84672464cd5a3febab844e1066860eb803bff49eb83ee93cc46977e320499ec"
python-versions = ">=3.8,<3.12"
content-hash = "7a068732995c4e291eb6708b81538bcdb0f132b07f21fae4c0eab709061f5727"

View File

@@ -8,12 +8,11 @@ packages = [{ include = "openbb_econometrics" }]
[tool.poetry.dependencies]
python = ">=3.8,<3.12" # scipy forces python <4.0 explicitly
openbb-core = { path = "../../sdk/core" }
scipy = "^1.10.1"
statsmodels = "^0.14.0"
arch = "^5.5.0"
linearmodels = "^4.25"
pandas = ">=1.5.3"
openbb-core = { path = "../../sdk/core" }
[build-system]
requires = ["poetry-core"]

View File

@@ -7,6 +7,7 @@ from openbb_core.app.static.container import Container
class Extensions(Container):
"""
/crypto
/econometrics
/economy
/fixedincome
/forex
@@ -26,6 +27,12 @@ class Extensions(Container):
return crypto.CLASS_crypto(command_runner=self._command_runner)
@property
def econometrics(self): # route = "/econometrics"
from . import econometrics
return econometrics.CLASS_econometrics(command_runner=self._command_runner)
@property
def economy(self): # route = "/economy"
from . import economy

View File

@@ -0,0 +1,519 @@
### THIS FILE IS AUTO-GENERATED. DO NOT EDIT. ###
from typing import Dict, List, Literal, Union
import openbb_provider
import openbb_provider.abstract.data
import pandas
import pydantic
import pydantic.types
from openbb_core.app.model.obbject import OBBject
from openbb_core.app.static.container import Container
from openbb_core.app.static.filters import filter_inputs
from pydantic import validate_arguments
class CLASS_econometrics(Container):
"""/econometrics
bgot
coint
corr
dwat
granger
ols
ols_summary
panelbols
panelfd
panelfmac
panelols
panelpols
panelre
unitroot
"""
def __repr__(self) -> str:
return self.__doc__ or ""
@validate_arguments(config=dict(arbitrary_types_allowed=True))
def bgot(
self,
data: Union[List[openbb_provider.abstract.data.Data], pandas.DataFrame],
y_column: str,
x_columns: List[str],
lags: pydantic.types.PositiveInt = 1,
) -> OBBject[openbb_provider.abstract.data.Data]:
"""Perform Breusch-Godfrey Lagrange Multiplier tests for residual autocorrelation.
Parameters
----------
data: List[Data]
Input dataset.
y_column: str
Target column.
x_columns: str
List of columns to use as exogenous variables.
lags: PositiveInt
Number of lags to use in the test.
Returns
-------
OBBject[Data]
OBBject with the results being the score from the test.
""" # noqa: E501
inputs = filter_inputs(
data=data,
y_column=y_column,
x_columns=x_columns,
lags=lags,
)
return self._command_runner.run(
"/econometrics/bgot",
**inputs,
)
@validate_arguments(config=dict(arbitrary_types_allowed=True))
def coint(
self,
data: Union[List[openbb_provider.abstract.data.Data], pandas.DataFrame],
columns: List[str],
) -> OBBject[openbb_provider.abstract.data.Data]:
"""Show co-integration between two timeseries using the two step Engle-Granger test.
Parameters
----------
data: List[Data]
Input dataset.
columns: List[str]
Data columns to check cointegration
maxlag: PositiveInt
Number of lags to use in the test.
Returns
-------
OBBject[Data]
OBBject with the results being the score from the test.
""" # noqa: E501
inputs = filter_inputs(
data=data,
columns=columns,
)
return self._command_runner.run(
"/econometrics/coint",
**inputs,
)
@validate_arguments(config=dict(arbitrary_types_allowed=True))
def corr(
self, data: Union[List[openbb_provider.abstract.data.Data], pandas.DataFrame]
) -> OBBject[List]:
"""Get the corrlelation matrix of an input dataset.
Parameters
----------
data : List[Data]
Input dataset.
Returns
-------
OBBject[List[Data]]
Correlation matrix.
""" # noqa: E501
inputs = filter_inputs(
data=data,
)
return self._command_runner.run(
"/econometrics/corr",
**inputs,
)
@validate_arguments(config=dict(arbitrary_types_allowed=True))
def dwat(
self,
data: Union[List[openbb_provider.abstract.data.Data], pandas.DataFrame],
y_column: str,
x_columns: List[str],
) -> OBBject[Dict]:
"""Perform Durbin-Watson test for autocorrelation
Parameters
----------
data: List[Data]
Input dataset.
y_column: str
Target column.
x_columns: str
List of columns to use as exogenous variables.
Returns
-------
OBBject[Data]
OBBject with the results being the score from the test.
""" # noqa: E501
inputs = filter_inputs(
data=data,
y_column=y_column,
x_columns=x_columns,
)
return self._command_runner.run(
"/econometrics/dwat",
**inputs,
)
@validate_arguments(config=dict(arbitrary_types_allowed=True))
def granger(
self,
data: Union[List[openbb_provider.abstract.data.Data], pandas.DataFrame],
y_column: str,
x_column: str,
lag: pydantic.types.PositiveInt = 3,
) -> OBBject[openbb_provider.abstract.data.Data]:
"""Perform Granger causality test to determine if X "causes" y.
Parameters
----------
data: List[Data]
Input dataset.
y_column: str
Target column.
x_column: str
Columns to use as exogenous variables.
lag: PositiveInt
Number of lags to use in the test.
Returns
-------
OBBject[Data]
OBBject with the results being the score from the test.
""" # noqa: E501
inputs = filter_inputs(
data=data,
y_column=y_column,
x_column=x_column,
lag=lag,
)
return self._command_runner.run(
"/econometrics/granger",
**inputs,
)
@validate_arguments(config=dict(arbitrary_types_allowed=True))
def ols(
self,
data: Union[List[openbb_provider.abstract.data.Data], pandas.DataFrame],
y_column: str,
x_columns: List[str],
) -> OBBject[Dict]:
"""Perform OLS regression. This returns the model and results objects from statsmodels.
Parameters
----------
data: List[Data]
Input dataset.
y_column: str
Target column.
x_columns: str
List of columns to use as exogenous variables.
Returns
-------
OBBject[Dict]
OBBject with the results being model and results objects.
""" # noqa: E501
inputs = filter_inputs(
data=data,
y_column=y_column,
x_columns=x_columns,
)
return self._command_runner.run(
"/econometrics/ols",
**inputs,
)
@validate_arguments(config=dict(arbitrary_types_allowed=True))
def ols_summary(
self,
data: Union[List[openbb_provider.abstract.data.Data], pandas.DataFrame],
y_column: str,
x_columns: List[str],
) -> OBBject[openbb_provider.abstract.data.Data]:
"""Perform OLS regression. This returns the summary object from statsmodels.
Parameters
----------
data: List[Data]
Input dataset.
y_column: str
Target column.
x_columns: str
List of columns to use as exogenous variables.
Returns
-------
OBBject[Dict]
OBBject with the results being summary object.
""" # noqa: E501
inputs = filter_inputs(
data=data,
y_column=y_column,
x_columns=x_columns,
)
return self._command_runner.run(
"/econometrics/ols_summary",
**inputs,
)
@validate_arguments(config=dict(arbitrary_types_allowed=True))
def panelbols(
self,
data: Union[List[openbb_provider.abstract.data.Data], pandas.DataFrame],
y_column: str,
x_columns: List[str],
) -> OBBject[Dict]:
"""Perform a Between estimator regression on panel data
Parameters
----------
data: List[Data]
Input dataset.
y_column: str
Target column.
x_columns: str
List of columns to use as exogenous variables.
Returns
-------
OBBject[Dict]
OBBject with the fit model returned
""" # noqa: E501
inputs = filter_inputs(
data=data,
y_column=y_column,
x_columns=x_columns,
)
return self._command_runner.run(
"/econometrics/panelbols",
**inputs,
)
@validate_arguments(config=dict(arbitrary_types_allowed=True))
def panelfd(
self,
data: Union[List[openbb_provider.abstract.data.Data], pandas.DataFrame],
y_column: str,
x_columns: List[str],
) -> OBBject[Dict]:
"""Perform a first-difference estimate for panel data
Parameters
----------
data: List[Data]
Input dataset.
y_column: str
Target column.
x_columns: str
List of columns to use as exogenous variables.
Returns
-------
OBBject[Dict]
OBBject with the fit model returned
""" # noqa: E501
inputs = filter_inputs(
data=data,
y_column=y_column,
x_columns=x_columns,
)
return self._command_runner.run(
"/econometrics/panelfd",
**inputs,
)
@validate_arguments(config=dict(arbitrary_types_allowed=True))
def panelfmac(
self,
data: Union[List[openbb_provider.abstract.data.Data], pandas.DataFrame],
y_column: str,
x_columns: List[str],
) -> OBBject[Dict]:
"""Fama-MacBeth estimator for panel data
Parameters
----------
data: List[Data]
Input dataset.
y_column: str
Target column.
x_columns: str
List of columns to use as exogenous variables.
Returns
-------
OBBject[Dict]
OBBject with the fit model returned
""" # noqa: E501
inputs = filter_inputs(
data=data,
y_column=y_column,
x_columns=x_columns,
)
return self._command_runner.run(
"/econometrics/panelfmac",
**inputs,
)
@validate_arguments(config=dict(arbitrary_types_allowed=True))
def panelols(
self,
data: Union[List[openbb_provider.abstract.data.Data], pandas.DataFrame],
y_column: str,
x_columns: List[str],
) -> OBBject[Dict]:
"""One- and two-way fixed effects estimator for panel data
Parameters
----------
data: List[Data]
Input dataset.
y_column: str
Target column.
x_columns: str
List of columns to use as exogenous variables.
Returns
-------
OBBject[Dict]
OBBject with the fit model returned
""" # noqa: E501
inputs = filter_inputs(
data=data,
y_column=y_column,
x_columns=x_columns,
)
return self._command_runner.run(
"/econometrics/panelols",
**inputs,
)
@validate_arguments(config=dict(arbitrary_types_allowed=True))
def panelpols(
self,
data: Union[List[openbb_provider.abstract.data.Data], pandas.DataFrame],
y_column: str,
x_columns: List[str],
) -> OBBject[Dict]:
"""Perform a Pooled coefficvient estimator regression on panel data
Parameters
----------
data: List[Data]
Input dataset.
y_column: str
Target column.
x_columns: str
List of columns to use as exogenous variables.
Returns
-------
OBBject[Dict]
OBBject with the fit model returned
""" # noqa: E501
inputs = filter_inputs(
data=data,
y_column=y_column,
x_columns=x_columns,
)
return self._command_runner.run(
"/econometrics/panelpols",
**inputs,
)
@validate_arguments(config=dict(arbitrary_types_allowed=True))
def panelre(
self,
data: Union[List[openbb_provider.abstract.data.Data], pandas.DataFrame],
y_column: str,
x_columns: List[str],
) -> OBBject[Dict]:
"""Perform One-way Random Effects model for panel data
Parameters
----------
data: List[Data]
Input dataset.
y_column: str
Target column.
x_columns: str
List of columns to use as exogenous variables.
Returns
-------
OBBject[Dict]
OBBject with the fit model returned
""" # noqa: E501
inputs = filter_inputs(
data=data,
y_column=y_column,
x_columns=x_columns,
)
return self._command_runner.run(
"/econometrics/panelre",
**inputs,
)
@validate_arguments(config=dict(arbitrary_types_allowed=True))
def unitroot(
self,
data: Union[List[openbb_provider.abstract.data.Data], pandas.DataFrame],
column: str,
regression: Literal["c", "ct", "ctt"] = "c",
) -> OBBject[openbb_provider.abstract.data.Data]:
"""Perform Augmented Dickey-Fuller unit root test.
Parameters
----------
data: List[Data]
Input dataset.
column: str
Data columns to check unit root
regression: str
Regression type to use in the test. Either "c" for constant only, "ct" for constant and trend, or "ctt" for
constant, trend, and trend-squared.
Returns
-------
OBBject[Data]
OBBject with the results being the score from the test.
""" # noqa: E501
inputs = filter_inputs(
data=data,
column=column,
regression=regression,
)
return self._command_runner.run(
"/econometrics/unitroot",
**inputs,
)

View File

@@ -1,6 +1,7 @@
{
"openbb_core_extension": [
"crypto@0.1.0a0",
"econometrics@0.1.0",
"economy@0.1.0a0",
"fixedincome@0.1.0a0",
"forex@0.1.0a0",

View File

@@ -2,6 +2,21 @@
"__extensions__": "",
"crypto": "/crypto",
"crypto_load": "/crypto/load",
"econometrics": "/econometrics",
"econometrics_bgot": "/econometrics/bgot",
"econometrics_coint": "/econometrics/coint",
"econometrics_corr": "/econometrics/corr",
"econometrics_dwat": "/econometrics/dwat",
"econometrics_granger": "/econometrics/granger",
"econometrics_ols": "/econometrics/ols",
"econometrics_ols_summary": "/econometrics/ols_summary",
"econometrics_panelbols": "/econometrics/panelbols",
"econometrics_panelfd": "/econometrics/panelfd",
"econometrics_panelfmac": "/econometrics/panelfmac",
"econometrics_panelols": "/econometrics/panelols",
"econometrics_panelpols": "/econometrics/panelpols",
"econometrics_panelre": "/econometrics/panelre",
"econometrics_unitroot": "/econometrics/unitroot",
"economy": "/economy",
"economy_available_indices": "/economy/available_indices",
"economy_const": "/economy/const",

View File

@@ -314,9 +314,10 @@ class SignatureInspector:
is_list = get_origin(results_type) == list
args = get_args(results_type)
inner_type = args[0] if is_list and args else results_type
inner_type_name = getattr(inner_type, "__name__", inner_type)
func.__annotations__["return"].__doc__ = "OBBject"
func.__annotations__["return"].__name__ = f"OBBject[{inner_type.__name__}]"
func.__annotations__["return"].__name__ = f"OBBject[{inner_type_name}]"
return func