Commit Graph

63 Commits

Author SHA1 Message Date
Danglewood
7935d6802b and some more.. 2024-12-09 19:31:18 -08:00
Danglewood
02d92cddf5 are we sure now 2024-12-09 18:57:56 -08:00
Danglewood
078f5be3fe are we done yet? 2024-12-09 18:55:05 -08:00
Danglewood
a4e7678b21 some final stragglers...? 2024-12-09 15:13:04 -08:00
Danglewood
662e5da3da polygon quote fields as optional 2024-12-09 14:51:07 -08:00
Danglewood
9ab9c6e769 lots of linting 2024-12-09 11:45:23 -08:00
Danglewood
ff4a6c4472 some linting 2024-12-07 18:50:49 -08:00
Danglewood
726b4c7a72 polygon crypto vwap as optional 2024-12-03 18:22:44 -08:00
Danglewood
606f48fdf3 Merge branch 'develop' of https://github.com/OpenBB-finance/OpenBB into feature/websockets 2024-11-19 18:31:56 -08:00
Danglewood
7f3b7bc84c small update 2024-11-19 18:31:41 -08:00
Danglewood
bb45cbf9f6 [BugFix] Clean Out Files From Already Deprecated Endpoint (#6953)
* clean out files from already deprecated endpoint

* decorator goes on the other side
2024-11-20 00:46:11 +00:00
Danglewood
31b05c0c15 fix discriminator tag issue 2024-11-14 19:38:20 -08:00
Danglewood
b69cba831b make bid/ask optional in PolygonStockQuoteWebSocketData 2024-11-12 10:35:41 -08:00
Danglewood
2e4d693071 start some documentation 2024-11-11 23:34:26 -08:00
Danglewood
95a1356c8c trade size is optional 2024-11-11 17:18:16 -08:00
Danglewood
8712e0569f raise exc as OpenBBError in client.connect 2024-11-11 16:59:57 -08:00
Danglewood
4fcb48ead6 fix fmp 2024-11-11 10:43:08 -08:00
Danglewood
632342072a add symbol error handling and move symbol to provider models for custom docstrings. 2024-11-10 21:46:00 -08:00
Danglewood
82b706a41e handle UnauthorizedError and map polygon options feeds 2024-11-10 12:21:31 -08:00
Danglewood
d748e815aa add polygon indices and send message to broadcast server from main client 2024-11-09 22:43:00 -08:00
Danglewood
f1ac74bd66 handle ValidationError 2024-11-09 17:40:02 -08:00
Danglewood
b53a636f43 add some exception handling 2024-11-09 13:44:19 -08:00
Danglewood
2c317a346b didn't add that file 2024-11-09 00:10:04 -08:00
Danglewood
f9d00c1d15 add most of polygon and some general updates 2024-11-09 00:09:35 -08:00
Danglewood
466b16b2ec [BugFix] Use __alias_dict__ instead of Field(alias) for data fields. (#6673)
* use __alias_dict__ instead of Field(alias) for data fields

* yfinance

* mypy

* benzinga thing

* ruff

* sec compare company facts choices

---------

Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com>
2024-09-17 18:42:36 +00:00
Danglewood
07d8232f22 [BugFix] obb.news.world Add Validators To Providers Where Symbol Is Mandatory (#6625)
* add validators to enforce mandatory symbols in providers where required

* linter

* fmp 3.9 test cassette

---------

Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com>
2024-08-17 06:12:43 +00:00
Danglewood
dd49c5ff35 [BugFix] Fix ReferenceGenerator Unions and Choices (#6599)
* fix duplicated unions in reference.json

* missing static files

* fix choices

* black

* mypy

* more mypy

* line too long

* fix typo

* fix another typo

* static files

* tradingeconomics country choices

* financial statement period choices

* black

* mypy

* test params

* price-historical interval choices

* test params

* test cassettes

* new test cassettes again

---------

Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com>
Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com>
2024-08-05 11:03:44 +00:00
Danglewood
78445ce007 [Feature] Delay/Optimize Imports (#6532)
* round 1

* black

* more black

* providers a-thru-fmp

* charting settings

* charting backend

* black

* charting_settings

* missing nasdaq import

* nasdaq mypy

* fed money measure

* some linting

* black

* more linting

* more linting

* charting imports

* black

* pylint

* refactor fred

* more linting

* rest of the providers

* didn't want that file

* more cleanup

* missed

* ta_helpers

* router views

* chart ta_class

* forgot a file

* forgot another file

* biztoc

* package builder

* technical router

* fred params

* bump finviz

* fix tmx

* more cleanup

* try again

* currency historical

* equity search

* missed files in commit

* fix some tests

* black

* fix more test cassettes

* more patchy

* black

* linters

* more tests

* black

* mypy

* delete unused model

* more linting

* forgot files

* more linting

* make up your mind, black, and stop moving pylint for me

* more black

* back to where we were before black destroyed it

* ..........

* ..................

* unused fetcher test

* remove standard model validator

* commodity router

* treasury prices

* oecd tests

* finra

* container cleanup

* black

* forgotten file

* linter

* remove wrapped ""

* fix merge

* patches

* ecb test

* finra cassette

* finviz cassettes

* nasdaq cassettes

* oecd cassettes

* yfinance cassettes

* more test cassettes

* black

* merge cleanup

* cboe helpers

* black

* fix typo

---------

Co-authored-by: Henrique Joaquim <henriquecjoaquim@gmail.com>
Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com>
2024-07-09 16:28:15 +00:00
montezdesousa
ecede0b4e4 [BugFix] Release fixes (#6560)
* Bump openbb version

* Small fixes

* update version

* Add python 3.12 to noxfile

* ^

* python 3.12 compatibility fixes

* fix typing

* fix currency snapshots

* black

* Enable test collection on 3.12

* Update mock called once assertion syntax

* remove logging assertion

* fix command runner chart assertion

---------

Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>
2024-07-02 19:33:11 +00:00
montezdesousa
5ec2db7643 [BugFix] Replace some base exceptions by OpenBBError (#6502)
* fix: replace base exceptions by openbberrors

* Update yield_curve.py

* fix typo

---------

Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com>
2024-06-17 09:09:28 +00:00
Danglewood
5fecd9de96 [BugFix] Add json_schema_extra With Choices To Provider 'period' Field (#6451)
* add json_schema_extra choices to provider 'period' field

* black

* unused imports

* mypy

* pytest

---------

Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com>
2024-05-26 14:07:51 +00:00
montezdesousa
0b9b12d198 [Feature] - Redefined standard fields & multiple_items_allowed property changes (#6377)
* feat: add field annotation and replace multiple items by dict

* comments & details

* fix: fix api & update docs website

* ^

* remove empty info

* descriptions

* descriptions

* fix reference.json

* remove debug code

* remove debug code

* docstring

* docstring

* fix: standard fields propagate to providers

* comment

* better

* better

* better

* better

* better

* mypy fixes

* mypy fixes

* reference

* cli fix: if the argument is required (aka standard) it means we don't want to touch it, unless choices need to be added

* cli fix: touch the help message (with the available providers) only if it's not on the signature (aka standard field)

---------

Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt>
Co-authored-by: hjoaquim <henriquecjoaquim@gmail.com>
2024-05-09 17:50:24 +00:00
Danglewood
4d6074de2d [BugFix] Fix Currency Search (#6380)
* fix currency search

* test artifact

* static files
2024-05-09 09:38:59 +00:00
Danglewood
99b0bb5287 [Feature] EconDB Main Indicators (#6365)
* add main indicators to economy.indicators

* static assets

* ruff

* Adapt and add unit test

* record test cassette

* polygon test cassette

* currency pairs

* recapture test

* mypy

---------

Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com>
2024-05-07 20:03:13 +00:00
Igor Radovanovic
e12aac157e [BugFix] - Fix tests for release (#6372)
* Fix user service

* fix module import

* proper Chart(...) mock

* Fix SEC rss

* improve test on to_chart() method

* Fix form 13F example filing

* remove broken example

* Add lxml dep to SEC

* fix default

* fix: treasury_prices default date, last business day´

* fix: linting

* fix: rebuild

* ^

---------

Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt>
Co-authored-by: Diogo Sousa <montezdesousa@gmail.com>
2024-05-07 14:57:12 +00:00
Henrique Joaquim
63723f7b2c [BugFix] Remove Literal[None,...] (#6371)
* remove Literal[None,...]

* pylint: disable=unused-argument

* change  to Filesystem     1K-blocks      Used Available Use% Mounted on
tmpfs            3257224      3044   3254180   1% /run
/dev/nvme0n1p5 491732848 290872352 175808336  63% /
tmpfs           16286112     81500  16204612   1% /dev/shm
tmpfs               5120         8      5112   1% /run/lock
efivarfs             246        66       176  28% /sys/firmware/efi/efivars
tmpfs           16286112         0  16286112   0% /run/qemu
/dev/nvme0n1p1    262144     60008    202136  23% /boot/efi
tmpfs            3257220     15056   3242164   1% /run/user/1000 to avoid misleading linting attr errors
2024-05-07 10:57:03 +00:00
Danglewood
6b3d6fbe67 add currency snapshots from polygon (#6333) 2024-04-23 08:38:40 +00:00
Henrique Joaquim
6cfc47541a [BugFix] Adding safe timestamp conversion everywhere (#6299)
* safe fromtimestamp

* sage timestamp convertion on equity profile

* safe fromtimestamp

* fix imports

* Lint

* Force UTC Currency Snapshots

* Add that to market_snapshots too.

* black

* ignoring some typing

* ignoring some typing

* typing

* typing

* typing

---------

Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt>
Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com>
Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com>
2024-04-19 15:00:02 +00:00
Igor Radovanovic
a255fa52a0 [Enhancement] - PyDocstyle Compliant (#6284)
* PyDocstyle Compliant batch 1

* Batch 2

* Batch 3

* Batch 4

* Batch 5

* Batch 6

* Batch 7

* Linting

* MyPy

* mypy things

* black

* more mypy

* black

* fix that

* black again

* undo that

* Fix error message

* pylint

---------

Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com>
2024-04-09 13:30:29 +00:00
Pratyush Shukla
3b7f18f91c [Enhancement] Sync reference.json and Platform function docstring (#6211)
* obbject params stored as a list of dict

platform markdown generator processes obbject returns into a string

* process field types further

* process field type correctly

* fixed models

* mypy suggestion was sus

* updated assets and packages

---------

Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt>
Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
2024-03-14 16:52:47 +00:00
montezdesousa
f328a45b95 [Feature] - refactor examples (#6154)
* remove auto examples and split python from api

* add missing exampels

* rebuild

* query params focstring

* black

* add scoped examples

* group model imports in the router

* unblock api

* fix

* classify examples

* fix package identation

* black sig

* fix indentation without linter

* fix python examples

* remove doc

* pylint

* again

* add model validators

* commodity, crypto, currency

* filter examples

* fix python examples

* fix filter and build

* undo toml change

* add comment

* oop

* comment

* typing

* lint

* Update router.py

* Update econometrics_router.py

* fix to_python

* to_python

* to_python

* black

* fix multiple line field descriptions

* remove circular import

* add missing import

* pass indent as object attr

* doc

* doc

* this looks better

* forgot this

* fix: new examples adapted

* fix prev commit

* avoid future problems

* Update ownership_router.py

* rebuild + remove todo

* make description mandatory for python examples

* simple indent

* append_examples func works for both website and docstring

* Add example unit tests

* Edit example unit tests

* fix validator

* this works

* fix to_python

* fix mandatory docstrings

* typing

* shorter error msgs

* economy router

* fix more examples

* more examples

* more examples

* more examples

* field desc

* minor fix

* fix etf examples

* handling types better

* lint

* rename method

* rename var

* docstring + move method

* typing

* prompt

* rebuild

* prompt fix in PythonEx

* fix examples without model

* example mock data

* add get_field_type func to get field data type

* panel data

* mock data

* fix

* fix

* docstring

* ohlcv

* pylint

* quantitaive router

* simplify mock data

* fix remaining quantitative routers

* a bit more flexibility for examples

* lint

* mock dat from sample

* docstring

* assertion

* bugfix

* minor fix

* technical

* fix integration tests

* fix docstring

* econometrics examples

* econometrics examples

* remove warning

* add technical examples

* fix bad examples

* fix more examples

* update test rules

* remoce old pydantic referenc

* fix bug in treasury prices

* fix quantitative examples

* discovery router

* equity shorts

* equity shorts

* fix currency pairs

* fix sec_router example

* fix panel data to support all funcs

* black

* more examples fixes

* simplify test

* rebuild

* test doc

* add provider to some ex

* ^

* last

* add provider

* rebuild

* working examples

* noqa

* pylint

* pylint

* clean

* minor fix

* fix test

* lint

* ruff

---------

Co-authored-by: Pratyush Shukla <ps4534@nyu.edu>
Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com>
2024-03-09 23:22:40 +00:00
Danglewood
8254bd5638 [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>
2024-03-08 16:31:38 +00:00
Pratyush Shukla
577a42461d [Feature] - Platform V4 Markdown Generator V2 (#6094)
* add recent `openapi.json`

* fix data types in models

* removed `openapi.json`

* set default date value as None in PolygonCurrencyPairs class

* add function to generate reference.json file

* reworked function to improve readability

* reword function to add seo metadata

* add functions for creating markdown sections

* add code to extract data card markdown title

* add additional functions for generating index and data models file

* extract first sentence of the description for cards

* code cleanup and documentation

* linting

* linting polygon models

* add openbb import statement in create_reference_markdown_examples function

* add POST method functions

* cleanup; reworked generate_reference_index_files function

* moved development section to 7th position in the sidebar

* fix POST function params default value

add standard flag to QueryParams and Data fields

cleanup

* add type expansion from package_builder.MethodDefinition

* sort data models cards alphabetically

make printing less verbose

* make MAX_CARDS global

display less content in cards in Commannds section

* cleanup

* Remove '_' from the cards under Commands section

* " to ' in econometrics/causality

* replace ' with " in ReferenceCard for reference dir index files

* remove extra . from the quantile function description

* shoutout to @deeleeramone for finding POST method description bug!

* set correct value for standard field

* handle BaseModel types in provider data fields

* unit tests for the platform markdown generator v2

* yeet 'Default' and 'Optional' columns in the 'Data' section

* last minute bug fix

* add info for multiple symbols

* make multiple items info same as platform static

* organize sections properly

* sort reference sub-directories alphabetically

* extra space in 'OBBject extra' description

* add type expansion for fields with multiple items

POST method cleanup

---------

Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com>
Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com>
2024-02-27 11:20:28 +00:00
Danglewood
eea2fb55b2 [BugFix] Fix Company News (#6111)
* fix company news

* update tests

* multiple symbols for polygon

* don't include pageSize in Benzinga querystring, fixed as 100

* remove extra space

* black

* unused imports

* make benzinga test cassette smaller

* missing params

* clear empty strings

---------

Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com>
2024-02-25 08:59:46 +00:00
Danglewood
754e14ca71 [BugFix] Fixes to_df() where the date series contains multiple TZ-offsets. (#6099)
* allow mixed utc offset in a tz-aware date column

* enforce ascending from all providers for price.historical

* fix tests

* add comments and apply treatment to basemodel_from_df before JSON output

* yfinance consistency

* add unit test

* add unit test

* better test

* ruff

---------

Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com>
2024-02-21 12:37:09 +00:00
montezdesousa
7deb4e69f6 [Feature] - Comma separated string and list inputs (#6062)
* feat: balancesheet

* feat: income statement

* fix: cash flow statement

* feat: financial ratios

* feat: reported financials

* feat: revenue business line

* feat: revenue per geography

* fix: warnings

* Update balance_sheet.py

* fix: remove warning imports

* feat: balance sheet growth

* feat: calendar ipo

* feat: cashflow growth

* feat: __validators__

* fix: typing

* fix: validator msg

* feat: trailing dividend_yield

* feat: short volume

* feat: share statistics

* feat: price target + consensus

* fix: update validator

* feat: historical dividends

* feat: key executives

* fix: getattr directly

* fix: type hint validator

* fix: add default to getattr

* typo

* feat: otc

* feat: options chains

* fix: remove list validators

* feat: add validator dict to fetchers

* lint

* update standard models

* lint

* feat: rename validator

* fix: ownership

* feat: query params description

* fix: balance yfinance

* key execs, income statement

* remove change

* fix: revenue geographic

* fix: disable pylint

* fix: unusual + balance

* unit test validator

* minor fix

* explicit validators

* update test

* feat: multiple items allowed

* rebuild

* move check_single_value

* crypto historical

* order providers

* fix typing

* rename extra dict

* marking multiple items allowed

* Revert "marking multiple items allowed"

This reverts commit 7da04817e1.

* error msg

* fix: default provider runtime vs configuration

* minor fix

* docstring

* revert default changes

* get provider before executing cmd

* fix container bug

* clean filter

* add comment

* prevent bad defaults

* update docstring

* typing

* fix

* black

* fix docstring generation

* [Feature] - Mark multiple item fetchers (#6074)

* feat: price target

* bezinga company news

* equity quote

* marking multiple items allowed

* more multiple items

* black

* rebuild

* another batch

* rebuild

* another

* cpi

* move prop

* rebuild

---------

Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt>

* rename var

* update msg

* rename func

* fix test

* mypy

* ruff

---------

Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt>
2024-02-15 12:19:18 +00:00
montezdesousa
39888269b3 [Feature] - Replace symbols in company/news (#6061)
* feat: replace symbols in /news

* fix: integration tests

* fix: integration tests api

* fix: typo

* Update test_intrinio_fetchers.py
2024-02-12 10:46:13 +00:00
Danglewood
7c953d5964 [BugFix] - Adds a timezone to the Unix timestamp conversion to correct localization errors. (#6023)
* fix: remove specific imports

* make polygon historical tz-aware

* undo including that commit

* that PR wasn't supposed to be there.

* pylint unused argument

* fix polygon crypto historical intervals

* pylint

* new cassette

* fix the rest of the polygon historical price query params

* black

* pylint..

* integration test param

* appease daylight savings handling

* paginate for crypto currency and index

* black

* raise EmptyDataError when no results instead of returning an empty list

* ruff

---------

Co-authored-by: Diogo Sousa <montezdesousa@gmail.com>
2024-02-05 19:53:17 +00:00
Igor Radovanovic
f86483e683 [Feature] - Refactor Response Model (#6024)
* Start refactor with @montezdesousa

* feat: add response model inside openapi_extra

* feat: find+replace return types

* fix: ruff

* Feature/api response by provider (#6029)

* init

* Update router.py

* Update registry_map.py

* check dicts

* lint

* exclude provider on data model for package build

* `results_type_repr` logic for `Annotated`, ignore provider field in `_extract_data`

---------

Co-authored-by: Diogo Sousa <montezdesousa@gmail.com>
Co-authored-by: teh_coderer <me@tehcoderer.com>
2024-02-05 13:17:29 +00:00
Henrique Joaquim
743c229f3a [BugFix] - Improve Standardization - IndexHistorical (#6030)
* format w new black

* Revert "format w new black"

This reverts commit 74b9619cc6.

* small adjustment on the test

* index historical

* adjust tests accordingly

* keep the test skipped

* match tests w python

* fix tests

* keep the skip

* fix test
2024-02-05 13:01:50 +00:00