Commit Graph

97 Commits

Author SHA1 Message Date
Colin Delahunty
1ca7fd9beb Improves the settings/userdata command, and upgrade ruff (#5359)
* Began the fax

* Bumped ruff

* Fixed a BUNCH of ruff errors

* Fixed a lot of ruff errors

* Simplify if statements

* Fixed black

* Updated some stuff

* Updated some stuff

* A lot more ruff fixes

* Added a fix

* Added a fix

* Fixed mypy

* Fixed some stuff

* Reverted one thing

* Small fix

* Small fix

* Small fix

* Added fix

* Added fix

* Update requirements
2023-08-22 20:11:48 +00:00
teh_coderer
281799f047 hotfix / improve autoscaling/dynamic loading, fix forex candle charts, equity reports (#5183)
* improve autoscaling/dynamic loading, fix forex candle charts

* updates

* Update plotly_helper.py

* fix?

* fix table date sorting, localize forex load

* tests

* tests?

* ugh tests

* Update test_display_debt.txt

* Update test_get_debt.csv

* Update forex_helper.py

* close #5182

* fix `crypto/dd/info` tables not loading due to `dict` object in dataframe values

* Update parent_classes.py

* tables: show full value on hover, fix year only filtering. on reset use queue if logged in

* lint + first batch of test fix

* tests pt2

* Tests v3

* Pylint

* typo

---------

Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-07-14 14:46:01 +00:00
James Maslek
52c560d414 Close 2 stocks fa issues with polygon (#5217)
* Fix #5190

* Add quarterly back to polygon cash flow

* Add some to stocks statics

* lint

* Fix tests + balance all of a sudden not working
2023-07-14 14:27:04 +00:00
Igor Radovanovic
08433a76c8 Fix income and cash flow statements (#5137) 2023-06-14 12:57:43 +00:00
teh_coderer
3e0309816c Hotfix/ Candle Lines, Tables/Charts Save (MacOS) (#5019)
* init

* fix tables save

* Update .gitignore

* Update utils.ts

* add volume to csv, fix `-` filename

* fixes #5020

* tests

* License year

* tests v1

* tests?

* Revert "tests?"

This reverts commit f837a6e0df.

* fix posthog

* Update test_get_debt.yaml

* tests

---------

Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-05-15 15:57:20 +00:00
teh_coderer
979930b9e8 feature / Refactor Interactive Charts to React (#4941)
* init

* fix tables

* add shortcuts

* handle svgs

* test

* test2

* test3

* Update loggers.py

* Update sdk_helpers.py

* Update loggers.py

* Update loggers.py

* updates

* updates

* update

* handle add text high/low for candlestick traces when updating

* adding save overlay to tables

* maybe fix

* prints

* asdf

* working

* working

* removing prints

* update

* fix no figure title text

* add trace labels space

* download finished popup for MacOS

* bump pywry

* update

* update table

* Update plotly_helper.py

* only format numbers over 10_000 on tables

* Delete generate_index.py

* turn off logs in generations

* update tables

* bump pywry, fix tables, added ichimoku ta indicator

* Update backend.py

* mypy

* update tables

* updates

* juan more

* tables

* test

* bump pywry

* bump pywry

* Update loggers.py

* test

* fixing some formatting

* add update button to indicators dashboard

* fix oecd dates to be full dates

* prepare charts/tables for pywry update

* Update poetry.lock

* Update finviz_view.py

* tests

* tests

* tests

* tests

* testss?

* tests

* Create test_call_func[call_sec-nasdaq_view.sec_filings-other_args37-called_with37].yaml

* testtss please

* Update loggers.py

* testss

* `with open(newline="\n")`

* tests

* tests -__-

* why

* Revert "`with open(newline="\n")`"

This reverts commit 554e0f53f4.

* Revert "why"

This reverts commit 89f1d9b823.

* Revert "tests -__-"

This reverts commit a9c694ae96.

* Revert "tests"

This reverts commit 5463249498.

* whelp

* .

* rename `streamlit.py` -> `streamlit_run.py`,  bump pywry/finviz/streamlit

* Update backend.py

* update

* Revert "update file"

---------

Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-05-11 17:38:12 +00:00
Igor Radovanovic
1c869afd2f Hotfix/ stocks/fa/dcf (#4992)
* Remove flags

* Update DCF params and file naming
2023-05-08 20:18:37 +00:00
Igor Radovanovic
d78a3648ce Fix Index not showing for FMP (#4948)
* Fix index

* Update unit tests

---------

Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com>
2023-05-02 16:35:38 +00:00
Pratyush Shukla
3d7b934d16 Fixed incorrect data display using stocks/fa/est command (#4940)
* Removed empty row in OpenBB SDK table under Installation

* Revamped `get_estimates` function

* Linting

* Fixed bugs, tests and modified args

* Fixed test
2023-05-01 20:23:59 +00:00
montezdesousa
e27a40ab09 Update fundamental analysis sdk endpoints (#4727)
* update overview

* update overview

* fix docstrings

* update docstrings andremove fillings chart

* Update sdk_helpers.py

* run generate_sdk.py

* replace marketwatch by nasdaq

* generate sdk

* leftover pandas globals

* lint

* fix unittests

---------

Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-04-19 13:35:39 +00:00
teh_coderer
70f74854d9 hotfix / no window if raw/export (#4809)
* no window if raw/export

* Update databento_view.py

* tests
2023-04-17 16:50:35 +00:00
teh_coderer
fea595c8a0 Hotfix/ Economy oecd_view docstrings Remove finviz image cmds (#4783)
* idk

* g

* Update oecd_view.py

* Update oecd_view.py

* Update oecd_view.py

* Update oecd_view.py

* remove spectrum,view finviz functions

* Update plotly.html

* Update plotly.html

* adjustments
2023-04-14 18:06:41 +00:00
teh_coderer
0e9abc3a84 Feature/ Voila to Streamlit Dashboards (#4755)
* idk

* g

* idk

* init

* revert old push

* pylint

* ruff

* update

* mypy

* tests

* LF

* tests

* Update Futures.py

* tests?

* fix intraday candle breaks

* tests????

* remove matplotlib from settings controller, autocomplete for flair cmd

* Update test_settings_controller.py

* remove streamlit activate warnings as it's not needed anymore

* bump pywry

* fix daily date gaps

* Update pytrends

* Update terminal.spec

* Update terminal.spec

* Update terminal.spec

* Update macos-build.yml

* Update macos-build.yml

* Update windows10_build.yml

* Update terminal.spec

* streamlit

* streamlit configs

* test

* lint

* cmd source in charts

* Update dashboards_controller.py

* Update dashboards_controller.py

* Update backend.py

---------

Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-04-12 20:38:56 +00:00
James Maslek
5258a3d613 Feature/help didier (#4758)
* ensure consistency across terminal and improve intro

* Rewrite tests

* Adding a gitignore for .sh files in root

* Fix tests

---------

Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt>
2023-04-12 20:06:54 +00:00
Igor Radovanovic
ed584cfa20 stocks/fa unit tests (#4754)
* Unit tests batch 1

* Unit tests batch 2

* Unit tests batch

* Unit tests batch

* Unit tests batch

* Unit tests batch

* Unit tests batch

* Unit tests batch

* Unit tests batch

* Unit tests batch

* Debloat

* Debloat

* Fix linting
2023-04-12 19:42:09 +00:00
Henrique Joaquim
495beee887 Feature/contributing guidelines (#4726)
* updating readme

* updating unit tests readme

* integration tests readme

* minor to ref it on the comment

* chaging the example and removing unused files

* updating path

* changing the controller example to follow view and model

* obeying conventions

* mathcing the right controller

* matching examples

* include details on creating a new branch

* removing old references to stocks/dd

* adding sheet name to the export_data example

* circle back autocompletion to queue-and-pipeline

* fixing the list numeration

* Doc

* fixing the tests (were failing bc of changed function name)

* Remove tests/FIXTURES.md

* reverting

* small edit

* lint

* mardown linting

* fixing forecast dashboard

* fixing forecast dashboard

---------

Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-04-12 15:11:32 +00:00
Colin Delahunty
2e79308ade Hotfix/4526 (#4682)
* Added fixes

* Merged

* Merged

* Added some handling of errors

* Adds some read dbs

* Removed useless commands

* Added fixes

* Added fixes

* Added fix

* Added fix

* Added fix

* Added fix

* Added fix

* Added fix

* Fixed tests

* Handle lowercase

* Added fxes

* small ticker thing

---------

Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-04-12 11:39:42 +00:00
jose-donato
dbd466d381 New table design (#4485)
* fix: new table design

* fix: added trillions

* fixing some raw data

* fix: trying to fix global+resize

* feat: improving design

* fix: new styling and lot of reorganizing

* title fix

* feat: new html

* fix: bottom bar

* fix: table dates

* fix: table html

* fix: new filtering

* fix: new filtering

* fix: long

* Lint

* Lint again

* fix: beautiful james suggestions

* fix: some more fixes

* fix: typo

* fix economy bug

* feat: added toast to notify user and some more cleanup

* fix: more issues

* tests

* fix: james updates

* fix: added banner to charts as well

* fixing title

* better fix

* feat: added column resizing and any number of columns

* auto column width - poc

* feat: added colors toggle, support to display source, fixed some more issues

* fix: table deploy

* fix: table issue

* fix header

* fix: some fixes

* fix: remember pagination and default pagination to 30

* mypy

* Colins tests

* Fix economy test

---------

Co-authored-by: James Maslek <jmaslek11@gmail.com>
Co-authored-by: teh_coderer <me@tehcoderer.com>
Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com>
2023-03-23 16:45:46 +00:00
teh_coderer
0e0069eb97 Feature/In-Chart Volume, Streamlit TA Indicators (#4467)
* init

* rename `add_stock_volume`  to `add_inchart_volume` in OpenBBFigure class

* ruff

* poetry lock, req txt files

* fix: ma indicator not in list, connectgaps=true for subtickers

* improved forecasting streamlit

* added past_cov_legend next to explainability plot

* Update base.py

* updates

* Remove deprecated currencies dashboard and it's dependency

* Revert import statement deletion

* Lint docstrings and delete unused assets

* Fix forecast voila dashboard

* Fix futures voila dashboard

* Remove broken crypto prices dashboard

* Remove vsurf dashboard because of over-verbose yfinance error messages

* Fix chains dashboard chart title positioning

* Remove i18n entries for deleted dashboards

* streamlit cmdline fix for macs/conda

* Update reddit_model.py

* mypy, fixed removed `load_dotenv_and_reload_configs` in `website\controller_doc_classes.py`

* readded rust install on CLI for linux in case cache gets cleared

* Update forex_helper.py

* Update test_load[60-YahooFinance].csv

* Update test_call_func[call_sec-marketwatch_view.sec_filings-other_args37-called_with37].yaml

* deps

* sdk generation tests, trailmap fixes

* Revert "sdk generation tests, trailmap fixes"

This reverts commit 2575784a33.

* Revert "Revert "sdk generation tests, trailmap fixes""

This reverts commit 5cb0ce030b.

* improve ta-multi, add title/legends to fred_view

* Update ta_controller.py

* ruff

* Update helper_funcs.py

* Update yfinance_view.py

* Update helper_funcs.py

* change executable parent paths to REPOSITORY_DIRECTORY

* fix distorted candlestick plots when freq is weekly/month, fix demark

* fix yaxis click handler

* Update popups.js

* Update popups.js

* Update popups.js

* Update volatility_plugin.py

---------

Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>
2023-03-21 21:47:29 +00:00
James Maslek
cceeb3e2b6 Fixing fa/ bugs (#4524)
* Fix fraud showing nothing when NA values

* Fix sdk

* fix #4457

* sdk generation tests

---------

Co-authored-by: teh_coderer <me@tehcoderer.com>
2023-03-20 14:54:07 +00:00
Colin Delahunty
09f53dd14b Made fa/pt more accurate (#4503)
* Got things working

* Got things working

* Got things working
2023-03-17 13:34:47 +00:00
jose-donato
40cfe8148d Interactive tables using react (#4386)
* feat: experimenting tables with react

* feat: adding new interactive tables

* feat: adding more table features

* small changes

* update

* Update backend.py

* Update backend.py

* fix: dark mode?

* feat: lot of table improvements

* fix: my b

* fix: load only when prod

* feat: naive detect links and dates

* handle index and column names

* increased min width

* codespell

* mypy, pylint

* fix: added new chart, export, etc

* testing

* updates

* fix : add PLOT_OPEN_EXPORT,  USE_INTERACTIVE_DF to user dataclass

* bump pywry version, readd removed `plots_backend().start()`

* req files

* Update unit-test.yml

* Update unit-test.yml

* Update unit-test.yml

* updates

* fixing some date things

* update table

* fix formatting with timezones

* fixing some long prints and tables

* Mickey Mouse

Co-authored-by: teh_coderer <tehcoderer@users.noreply.github.com>
Co-authored-by: jose-donato <jose-donato@users.noreply.github.com>

* fix: ?!?!?

* adding limit arg to all print_rich_table

* tests

* lint

* simple by Default on interactive charts

* playing with some css (thks jose)

* Fix #4426

* Edit some structure

* fix sdk generation

* Update backend.py

* fa menu tested and working

* fix #4460

* fix #4460 drop indices

* update tests

* update tests

* Update helper_funcs.py

* tests

* Update unit-test.yml

* Update etf.ipynb

---------

Co-authored-by: teh_coderer <me@tehcoderer.com>
Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com>
Co-authored-by: teh_coderer <tehcoderer@users.noreply.github.com>
Co-authored-by: jose-donato <jose-donato@users.noreply.github.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-03-13 17:50:48 +00:00
James Maslek
36c0c0f5c1 Update contributing guide (added a new feature while doing so) (#4391)
* Update contributing guide

* lint md

* lint md

* lint md

* Tests + fix some markdownlint things

* Get rid of irritating newline on reset

* Trying something small

* try something else

* linting

* Change cfg to the new user object

* words

* minor improvements

* some adjustments to the contributing guidelines

* Another pass at contributing

* spelling

* we need a local markdown linter

* why does this pylint disable still fail

---------

Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt>
2023-03-09 16:39:37 +00:00
Jeroen Bouma
87cea82808 Improve stocks/fa/enterprise, now stocks/fa/mktcap, functionality (#4424)
* Improve enterprise, now mktcap, functionality

* Update the scripts to work better with SDK

* Update the tests'

* Update integration tests

* Change SDK

* Spellings

* one more spelling

---------

Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-03-08 20:47:13 +00:00
Jeroen Bouma
c1537d8586 Update FinanceDatabase to v2.0.9 (#4434)
* Update to v2.0.9

* Fix tests just because it said pkl instead of bz2

* Fix unrelated pylint issue

* Someone doesnt care about linting

* Update more tests
2023-03-08 16:25:36 +00:00
James Maslek
f0d8fa65e5 Make the UI a little cleaner (#4405)
* Make the UI a little cleaner

* ta load

---------

Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt>
2023-03-06 13:57:32 -05:00
montezdesousa
475ebb5acd [WIP] Migrate user, feature flags and configurations to dataclass (#4309)
* implement user and change is guest

* replace User methods

* move remaining functions to user

* fix bug

* portfolio test

* fix tests

* fix tests

* uncomment skip

* ruff

* start credentials model implementation

* change deault structure

* refacto quandl

* change default struct and file names

* bug

* start using global user

* add comments

* move update flair

* change cfg references in keys model

* reddit & fmp

* refactore additional keys

* remaing config keys

* remove unsude imports and fix hub keys

* ruff

* fix line too long

* unblock unittests

* fix keys model tests

* remove os patch

* fix account controller tests

* fix account controller tests

* fix account model

* account fixed

* fix user tests

* User Model

* User Model

* User Model

* Move session folder

* User Model : grouping the models

* User Model : fix bugs

* Config Plot + bug fix

* User Model : Refactoring plots

* Feature flags

* Remove dup

* clean comments a fix some vars

* fix feature flags controller

* refactor obbff from settings controller

* refactor a bunch of obbff variables

* fix bug blocking terminal

* fix integration tests

* refactor controllers with obbff

* refactor remaining ffs

* remove comments

* log not started

* mispelled variable

* set current user on local model

* User Model : moving files + updating

* User Preferences

* User : Refactor is_guest function + bug fix

* User : refactor is_guest function

* Fix conftest.py

* remove lost obbffs

* typo on fileoverwrite

* Plot config: move variables and start plot dpi

* User : tests

* refactor plot dpi references

* remove plot dpi imports

* refactor some config terminal leftover

* /account/sync : fix bug

* remove configs reload

* start path refactor

* installation paths vs user paths

* remove cfg_plot

* Tests : User Refactoring

* user prefix only for preferences

* user prefix only for preferences

* move user paths

* remove comment

* update apply remote configs

* fix tz not updating

* save some copys

* small fix

* create interface for credentials and preferences

* wrong docstrings fixed

* ruff core

* fix some pref setting

* login is better

* ruff

* ruff

* remove Literal

* add small comment

* Tests : User Refactoring

* Credentials Model : add DataBento

* Fix helper_funcs

* Fixing code

* Tests : fixing

* User Model : freezing the models

* Fixed Income + Databento

* Tests : fixing keys

* black

* ruff

* Tests : user model

* Tests : user model

* Fix linting

* Fix linting

* Linting

* Linting

* Fixing code and tests

* Fix tests

* mypy

* SDK

* Clean ruff cache

* Fix syntax issue

* Update fred_view

* Black

* Linting

* Update code

* Update tests

* Linting

* Linting

* Tests

* Black

* Linting

* Linting

* Mock os.listdir to avoid looking for file that doesnt exist

* Mock options paths

* lint

* Tests : fix

* Code : update

* Tests + Linting

* Tests

* Ruff

* Code : update

* Tests

* Code : update

* Fix workflow

* Code : update

---------

Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
Co-authored-by: luqazino@gmail.com <luqazino@gmail.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-03-05 00:37:19 +01:00
teh_coderer
602cfa2c8c [POC] Plotly Backend (#3941)
* Update portfolio_view.py

* mypy 1.0 test

* Update helpers.py

* black

* ruff

* Update thought_of_the_day.py

* isort

* Update portfolio_view.py

* Update business_insider_view.py

* funds,bt,ca,fa view updates

* economy,etf,futures view updates

* econometrics regression

* mypy

* reports notebooks, PlotlyTA class adjustments, crypto finbrain view

* crypto views updates

* crypto views done?, ba, econometrics, funds, reports

* update docstrings

* Update sec_view.py

* portfolio reports

* Update equity.ipynb

* ruff

* mypy + equity reports

* Update yahoo_finance_view.py

* Update economy_controller.py

* clean up returns

* mypy

* finished dashboards/reports templates

* update some tests

* Update common.py

* Update account_controller.py

* Update banner.txt

* update tests

* tests

* Update helpers_denomination.py

* tests

* tests

* finished tests, refactor add_histplot/add_corr_plot

* ruff

* Update backend.py

* mypy

* Update backend.py

* pywry linux libs for tests

* pywry version bump

* OpenBBFIgure import changes

* Update business_insider_view.py

* Update backend.py

* tests

* bump pywry version

* forecast plot_explainability converted to plotly

* Update helpers.py

* tests

* Update helpers.py

* tests

* Update helpers.py

* Update helpers.py

* default plotly annotation `showarrow` to false

* Update backend.py

* fixes

* Update poetry.lock

* docker

* Update openbb.dockerfile

* up

* Update style.css

* bump pywry version

* Update unit-test.yml

* Update unit-test.yml

* figure to image/pdf export

* requirements txt files, pywry version bump

* mypy, pylint

* cleanup

* Update covid_view.py

* Update helper_funcs.py

* Update backend.py

* updates

* Update backend.py

* Update backend.py

* bump pywry version

* Update poetry.lock

* Update trailmap.py

* update reports

* Update custom_indicators_plugin.py

* Update momentum_plugin.py

* equity report

* reqs files

* Update fred_view.py

* ruff

* Update po_view.py

* bump pywry version

* reqs txt files

* fix installer icons for mac

* test updated torch/darts/pyinstaller on mac

* Update dashboards_controller.py

* Update terminal.py

* Update terminal.spec

* Update terminal.spec

* test

* Update poetry.lock

* Report adjustments, improved dashboard subprocesses termination

* pylint

* Update plotly_helper.py

* Update plotly_helper.py

* pylint

* revert darts

* test

* test

* fix

* improve shap scatter plot

* Update helpers.py

* Update helpers.py

* cleanup

* Update runa_view.py

* more cleanupp

* fixes

* update tests

* Update intrinio_view.py

* Update intrinio_view.py

* Update intrinio_view.py

* reqs files, poetry lock

* Update backend.py

* test for new icon

* Update fmp_view.py

* updates

* Update plotly_helper.py

* Update businessinsider_view.py

* ruff

* pylint

* fix previous merge

* Update plotly_helper.py

* update reqs files

* Update directories.py

* fix alt covid

* fix display_candle data is None load being unreachable, get covid views ready for sdk server

* Update covid_view.py

* refactor cleanup

* plotly_ta adjustments

* terminal wide ignore print_table if export

* Update plotly_helper.py

* forgot to save a few

* added edge case fallback if figures are in queue before backend fail

* Update ta_class.py

* Rename env variable name required to return plotly json

* Resolve pydocstyle warnings

* Resolve linting errors

* revert forecasting/pyinstaller versions

* Update terminal.spec

* finished incoming fixedincome menu, improve get_ecb_yield_curve speed with multiprocessing

* update deps

* Update backend.py

* fix fred model/view from switch to DataFrame, improve ecb_model

* Update config_terminal.py

* Update backend.py

* black

* clean up

* Update fred_view.py

* Update ta_class.py

* Update ta_class.py

* Update plotly_helper.py

* sync fixedincome

* Update ecb_model.py

* convert excel to csv for faster processing

* cleanup

* remove excel files

* Update terminal_controller.py

* update tests

* adjustments/missed figs in export_data

* Update cryptocurrency_helpers.py

* fixes

* account for volume column with no volume when plotting indicators , images autogen POC

* Update plotly_helper.py

* Update etf_controller.py

* Update etf_controller.py

* margin arg for export_data func figures, some plot adjustments

* logic for numpy array for plotly helper `get_dateindex` function

* cleanup

* update

* req file updates

* views

* Update backend.py

* update tests

* Update test_load_none[btc-usd].yaml

* convert merged cpi chart

* linting

* updates

* clean

* tests

* Update openbb.dockerfile

* remove test docker in root

* Update CONTRIBUTING.md

---------

Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>
Co-authored-by: Chavithra <chavithra@gmail.com>
2023-03-01 22:48:45 -05:00
jeroen
522c282d0a Update tests 2023-02-27 17:10:29 +01:00
jeroen
9e480cf811 Fixing all the tests I hope 2023-02-23 16:09:34 +01:00
jeroen
9cf078611c Updates 2023-02-23 14:12:36 +01:00
northern-64bit
33e79a2aaa Fixes #3873 and adds generic naming to financial statements (#4142)
* Fix plotting error

I choose to fix it by removing the denomination transform, since it doesn't affect the result (even when fixed).

* Add generic naming to financial statements, except for EODHD source

* Fix linting

* Fix linting

* Fix bugs

* Fix linting

* Handle invalid plot options for sources

* Fix linting

* Fix linting

* Some tests

* more tests

---------

Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-02-20 18:29:27 -05:00
Luqman
bbeaef4732 Code Coverage (#4236)
* Code Coverage

* minor fix

* Remove coverage limit check

* Check code cov

* removed env

* Tests : fixing tests + autocompletion bug

* Tests : skip a test

* Linting

* Tests : skip slow coins test on crypto

* Added check for coverage

* Remove failure test

* Minor tweak

* Added code coverage to base test

---------

Co-authored-by: Chavithra <chavithra@gmail.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-02-17 15:59:14 +01:00
montezdesousa
825b8955df Set guest by default and put authentication behind environment variable (#4197)
* small bug

* small bug on routines list

* guest as default

* limit logout to users2

* simpler this way

* add logout

* move logout to account & add env var

* put authentication under env var

* fix tests

* remove login

* remove openbb vars on login

* ruff

* revert .toml

* Delete Icon

* Update .env

* fix sdk guest not loading keys

* ruff

* remove press enter & --login

* ruff

* move env load

* load env

* move dot env loading to terminal.py

* fix user sdk login mixing .env with user

* now it works

* fix reset

* fix tests

* ruff

* Login on the SDK using the OpenBB Personal Access Token (#4206)

* openbb key on keys menu

* adding sdk endpoints

* adding login via token to the sdk

* base url

* rename to personal access token

* added docstrings and examples

* openbb is special

* removing extra break line

* making keys working with the personal access token

* resolve conflicting tests

* Revert "resolve conflicting tests"

This reverts commit 2fca2c0ec3.

* using custom requests

* tests

* tests

* tests

* using process_session_response instead

* rewriting some tests

* Fix sdk guest not loading keys (#4207)

* fix sdk guest not loading keys

* ruff

* remove comment

* tests

---------

Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
Co-authored-by: Diogo Sousa <montezdesousa@gmail.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>

* test record mode vcr none

* remove yes from tests yml

* specify modules to reload

* try disable check api

* UPdate spec file

* Small stocks bug

* avoid reloading in test mode

* will this work?

* skip session tests

* try with env var as well

* mock sdk reload

* pylint

* bump poetry on python 3.8

* adapt to python 3.8

* adapt to python 3.8 remaining tests

* Tests : update cassettes

* Fix linting

* Makes login conditions simpler

* Tests : txt

---------

Co-authored-by: James Maslek <jmaslek11@gmail.com>
Co-authored-by: Chavithra <chavithra@gmail.com>
Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt>
2023-02-14 09:56:03 +00:00
James Maslek
5aebae4d46 Feature/general improvements (#4213)
* Get rid of required ticker and add -t argument to all of fa

* ta to work without ticker

* Allow bt to be accessed without ticker

* Bt not ticker dependent (last commit was qa)

* Update stock controller

* UPdate tests

* Review changes + update tests
2023-02-13 10:22:29 -05:00
James Maslek
2a7ec56000 Sunset some dependencies (#4215)
* Sunset some dependencies

* Mypy

* Last iex refs

* remove ref to investpy

* tests

---------

Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt>
2023-02-13 08:54:54 -05:00
james
daad65a7a3 update tests 2023-02-10 17:59:13 -05:00
James Maslek
06d737f4be Adding intrinio and cleaning up options a bit more (#4127)
* Add intrinio load functions into stocks and options.  First try at options sdk with intrinio

* Add a new eodchain function + add intrinio model test

* Unit tests for intrinio options

* dont add eodchain yet -- wait for other PR

* Make null handling better + add intrinio sdk to reqs

* mock dates

* update test

* fix ruff

* black and gitignore

* Clean up and make options load class

* Clean up clean up

* Fix intrinio stock load

* Get requirements even

* sort intrinio chain and fix

* Dont rename the candle input argument

* Fix bug #4060

* Historical option prices

* Add grhist from intrinio and isort

* Fix things for presentation

* Fix tradier chain printing

* YahooFInance chain cleanup

* standardize nasdaq

* Format intrinio

* Cleanup SDK

* Fix tests

* mypy

* Clean up trail map and edit docs

* Fix mapping of info on sdk

* Add intrinio to deps

* Add a rich progress bar to expirations :)

* controller test

* Silly error + tests

* Required arg

* bad assert statememts

* Mutable default

* Keys and switch another tqdm

* BizIns Tests

* tests

* Last Test
2023-02-10 16:54:05 +00:00
Jeroen Bouma
6421be3d8e Cleanse functionality from relying on yfinance (#4176)
* Cleanse PO from Yahoo Finance

* I removed equal but then moved it back in

* Update tests

* Get rid of sust command

* Get rid of quote since broken

* Added in export capability for quote

* Remove pir and summary, fix news and change source for weights

* Update stuff

* Add sources

* Update portfolio to not be dependend on Yahoo Finance

* Update all tests

* Update SDK

* Details

* Fix integration scripts

* I think I had to rewrite these

* Update more tests

* oopsie

* Fix 1

* Fix Sort

* and fix test

---------

Co-authored-by: james <jmaslek11@gmail.com>
2023-02-09 16:57:26 -05:00
Theodore Aptekarev
4b7cfd1699 Feature/dependency grooming (#4166)
* Updating poetry to v1.3.2 and dependencies

* Fixing conda pip syntax

* Updating poetry.lock

* Updating requirements

* Updating Windows10 build

* Windows10 build updates

* Windows10 build update

* Windows10 build updates

* Windows10 build updates

* Windows10 build updates

* Windows10 build updates

* Windows10 build updates

* Windows10 build updates

* Windows10 build updates

* Windows10 build updates

* Windows10 build updates

* Windows10 build updates

* Windows10 build updates

* Windows10 build updates

* Updating Intel MacOS Build

* Updating Intel MacOS Build

* Updating Intel MacOS Build

* Updating Intel MacOS Build

* Updating Intel MacOS Build

* Updating Intel MacOS Build

* Updating M1 MacOS Build

* Lets get M1 working

* Lets get M1 working

* Permission Issue on tests / New setup.nsis

* Merging the latest changes and picking integration tests to run

* Adding Mac requirements

* Fixing spelling

* Limiting integration tests on builds

* commenting out MessageBox prints on win installer

* update pinned lightgbm version

* fix tests

* ignore lightning logs for tests

* Unify dependencies across platforms

* Add pyinstaller to requirements full

* Remove pyupgrade from top level dependencies

* Use conda poetry on env file

* Pin lightgbm to be installed form conda-forge

* Pin latest supported version of lightgbm for intel macs

* Use same requirements across all platforms

* Pin tenacity to avoid pip resolution conflict due to finviz 1.4.5 package bug

* Remove torch dylibs from signing because 1.13 doesn't have those

* Identify pinned lightgbm as a part of the prediction extra

* rewrite ov cassettes (#4171)

* Update some tests

* Fix typo in Windows build test launch command

* Add torch dylibs back to from signing

This reverts commit 4a1aabb1fe.

* Fix torch dylibs path typo

* Package torch into the pyinstaller bundle

* Package torch dylibs as binaries

* Pin torch back to 11

This reverts commit 4a1aabb1fe.

* Refactor code signing paths

* Revert "Refactor code signing paths"

This reverts commit 1c948b3f50.

* Fix typos in yaml files

* Update test

* Update tests expected ouput

* Tests : fix cassettes

* Fix merge conflict

* Try to fix test_yahoo_finance_view.py fail in CI

* Tests : update cassette + txt

* Tests : cassette

* Build : update lightgbm version

* Tests : update cassette + txt

---------

Co-authored-by: Artem Veremey <artem@veremey.net>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
Co-authored-by: Artem Veremey <aia@users.noreply.github.com>
Co-authored-by: colin99d <colin99delahunty@gmail.com>
Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com>
Co-authored-by: martinb-bb <105685594+martinb-bb@users.noreply.github.com>
Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
2023-02-09 22:35:26 +01:00
Henrique Joaquim
f143f83528 Restores numeric values (#4183)
* fix tests

* Revert "fix tests"

This reverts commit f013668ed7.

* Revert "Revert "fix tests""

This reverts commit b49e633da8.

* Revert "fix tests"

This reverts commit f013668ed7.

* revert_lambda_long_number_format

* enhanced the function to remove the formatting plus some cleaning

* tests

* minor adjustment in commnet

* fix introduced bug by parsing dates

* resolve conflicting tests

---------

Co-authored-by: james <jmaslek11@gmail.com>
2023-02-09 16:11:36 -05:00
Chavithra PARANA
b8dc2ef36b Tests : update cassettes + txt + csv 2023-02-09 19:01:52 +01:00
Chavithra PARANA
b149120799 Tests : skip dcf 2023-02-09 18:31:49 +01:00
Chavithra PARANA
d14e118003 Tests : fix cassettes without timezone 2023-02-09 18:28:12 +01:00
montezdesousa
5953be0a42 Terminal authentication + keys/settings/routines (#4015)
* import order

* pylint

* no login, go to prompt

* add logout and whoami

* clear before prompt

* black

* these are unecessary

* error

* improve login prompt message

* login does not follow the controller pattern, so will name it differently

* nop

* move logout and change to results

* change return obj

* ruff

* pyupgrade

* remove user from statics

* message

* fetch configs at start

* remove unecessary func

* unecessary dataclass

* change user vars

* change login flow

* remote logout should not be used

* simplify

* fix double exit logout bug

* wrong exception

* apply keys

* change controller

* mypy

* save if no internet

* pylint

* logout everywhere

* breaking changes: move to local/hub models

* unused import

* fix logout bug

* whoami in guest mode

* add todo

* small bug guest allowed

* limit flair length

* fix bug on user pull

* logout working

* handle no connection

* logout user when logout

* remove keys push

* split logger funcs

* commant apply configs for now

* account to session

* rename user

* clear sounds better

* breaking changes: splitting guest from logged users

* pull imports up

* delete session model

* move logout func

* add ability to save and apply keys from remote

* no sensitive keys

* add support for feature flags

* unecessary print

* allow settings from differnt modules

* change setff to static

* change way to set ff

* fix bug in applying configs

* simplify obbff application

* bug on setting configs

* allow text ff

* obbff in settings

* add upload to cfg_plot 1

* data sources + backend

* this solves circular import?

* move create_session to model

* rever logs changes, not needed for now

* sync optionally

* outline account controller interface

* don't sync when guest

* block guest on installer

* or not and

* start routines

* fix bug on ff, settings

* is installer

* implementing chavi suggestions

* fix colors on installer prompt

* Logging login (#4046)

* basic logging for the login

* removing unused import

* hacking the logs custom filter to not filter the email

* black

* cooping with the new changes

* removing redundant method

* ruff

* ruff

* mypy

* SDK login (#4051)

* sdk login

* adding to the trail map

* minor fix

* improve sdk expirience

* adapting to new changes

* add docstrings

* block guest from account

* change guest msg

* change guest messages

* add sync on/off

* display onoff

* missing paragraph

* fix glitch on logout

* add sys clear

* filtering password

* filtering the email from user

* avoid writing to multiple log files if a user logs out

* fix bug, guest allowed in installer without connection

* log user on the sdk

* split login from lauch

* add clear and change messages on account

* docstrings

* start pull cmd

* change account menu description

* Fix login bug and decouple some logic (#4056)

* fix bug, guest allowed in installer without connection

* split login from lauch

* improvements on the sdk login

---------

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

* sync fix

* change account controller description

* ruff

* add help on account cmds

* update clear prompt

* fix email not in jwt

* remove jwt from requiremnts

* pull command output

* remove character

* pull cmd when no data

* add space below whoami

* fix log filenotfound exception

* changed arg name

* delete .hist on logout

* add asteriscs to password

* pylint

* uncomment rich config

* show only diffs on pull

* black#

* warn when no changes#

* pull msg was switched

* apply diff only

* breaking?: strbool change

* reduce some code

* add timeout to hub requests

* black

* add remote logout

* success msg only if success

* remove colors in prompt

* update docstrings

* keep timeout outside funcs

* update clear

* clear and patch

* delete session

* routine upload

* move .his file to .openbb folder

* change apply configs

* refactor logout

* remove mixed portfolio changes

* fix bug in lock file

* fix bug pwidth, pheight are floats

* fix sources command & add choices

* refactor timezone setting

* userdata

* fix flair

* need to cast paths

* cast on diff

* fix flair default

* save session test

* get session

* data

* test remove

* test remove with assert

* add bad test cases

* add exception cases to unittests

* test remove cli hist file

* black

* test apply configs

* test apply with sync flag

* test create session, session model

* login tests, session model

* some tests for the hub_model

* test logout user

* black

* test clear vars, reload

* test create session

* update user-json to user

* update user class

* add user tests

* tests sdk session

* tests for hub_model

* start account controller tsts

* unused import

* tests account controller: clear, pull

* tests for session_controller

* logout success bugfix

* add integration test for account

* black

* move routine related commands to other PR

* test for the user input

* completed tests for session controller

* convert to hist to str)

* fix import errors

* ruff

* ruff tests

* fix qa

* add help to settings cmds

* ruff

* fix pull keys bug

* point to dev

* account model tests

* black

* ruff

* fix for empty feature settings

* ruff

* don't display config msg if wrong token

* general msgs

* remove print

* ruff

* fix sources not updated real time

* missing return doc

* add guest if no email

* Routine remote storage (#4143)

* add upload routine command

* remove prints

* point to local again

* add commands

* add delete

* add download command and upload 409

* list comprehension

* add download & save plus upload fixe

* add user uuid folder

* add list command

* ruff

* en.yml detail

* provide choices to delete & download

* add choices to upload

* change menu text

* starting adding unit tests

* bad english

* Update test_print_help.txt

* genearl msgs

* remove print

* add docstrings

* add unit tests to account controller

* change parser

* fix routine upload test

* add to be implemented tests hub

* add to be implemented tests local

* add total pages to title

* split list into model and view

* add docstring

* print msg if character

* add local model tests

* hub tests routines

* fix test

* point to dev and glob

* fix small bug on upload

* missing return

* log decorators missing

* black

* ruff

* change prompt display

* rewrite test

* rewrite expected

* rewrite call

* try passing git action

* change .yml everywhere

---------

Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-02-09 13:35:44 +00:00
James Maslek
f3094ac126 Merge branch 'develop' into feature/remove-dd-docs 2023-02-08 10:24:34 -05:00
Henrique Joaquim
f2c40d02bf Adjust timezone for AV when interval < 1d (#4158)
* adjusting tz

* rewriting failing tests

* getting develop version of things

* style

* removing normalize

* tests
2023-02-08 15:19:12 +00:00
jeroen
ffad92588a Fix tests 2023-02-08 11:25:19 +01:00
jeroen
46e7eee557 Merge branch 'develop' into feature/remove-dd-docs 2023-02-08 09:44:34 +01:00
montezdesousa
93dd0bce2f Fix crypto/disc/top sort (#4167)
* fix sort choices

* fix unit tests
2023-02-08 00:43:31 +00:00