Commit Graph

105 Commits

Author SHA1 Message Date
James Maslek
bdc23a6f2f just change the message for being logged in 2023-06-21 15:09:16 -04:00
montezdesousa
105557e898 Feature/routine tags (#5154)
* no guest if installer

* prevent guest if logout from account

* this not true

* rename reloop var

* ask for email again if no email

* add tags to routines upload

* Update constants.py

* Update terminal_controller.py

* Update terminal_controller.py

* black

* ruff

* black

* Update constants.py

* point at .co

* mypy

* sneak in askobb timeout

* fix test

---------

Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-06-21 12:31:00 +00:00
James Maslek
228f0c4f69 Query askobb on api openbb co (#5153)
* Query askobb on api openbb co

* mypy
2023-06-19 22:48:53 +00:00
martinb-bb
bf33211219 Progressive improvements to askobb v0.3 (#5150)
* temperature

* remove home

* preface home

* Add askobb to all menus

* 0.3

* index

* temp +

---------

Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-06-19 17:31:46 +00:00
James Maslek
27bf7207ee Small enhancements (#5146)
* Cosmetic changes + timeout bug

* cant spell

* Fix #5085

* Handle ca tickers + fix tests

* wrong type

* pylint
2023-06-16 14:46:11 +00:00
montezdesousa
1539793862 No guest if installer (#5076)
* no guest if installer

* prevent guest if logout from account

* this not true

* rename reloop var

* ask for email again if no email

---------

Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-06-01 16:07:11 +00:00
montezdesousa
76fcaf77da Upload routine to hub on stop (#5077)
* upload routine to hub on stop

* write cassette

* write cassette

* remove .openb from name

---------

Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-05-31 10:42:56 +00:00
Igor Radovanovic
d748766573 Preserve stock ticker suffix (#5056)
* Preserve suffix

* Fix suffix doubling
2023-05-22 18:58:37 +00:00
Thomas Marban
29a297c2dc First introduction of news_biztoc — A new partnership with BizToc.com (#4864)
* First introduction of news_biztoc — A new partnership with BizToc.com

* bump pywry

* fix rm command (#4890)

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

* Fix `crypto/defi/anchor` (#4892)

* handle defi anchor exceptions

* reason

* mypy

---------

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

* fix windows pyinstaller subprocess fail if space in path

* remove API_IEX_TOKEN

* remove API_SENTIMENTINVESTOR_TOKEN

* Add autocompletion and merge into one news function + add to sources dictionary

* Autocomplete for the tag

* fix test

* Make a new sdk help[er for openbb.news

* pylint

* lint

* lint2

* Regenerate sdk

* remove cmd from list

* api-keys

* Update api-keys.md

Add images

---------

Co-authored-by: James Maslek <jmaslek11@gmail.com>
Co-authored-by: teh_coderer <me@tehcoderer.com>
Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt>
Co-authored-by: minhhoang1023 <40023817+minhhoang1023@users.noreply.github.com>
2023-05-10 18:12:55 +00:00
teh_coderer
9026a41ff2 Feature / Logging (#4923)
* init

* updates

* Update loggers.py

* Update loggers.py

* sdk handling

* feature flag

* fix MOCKING_USER_PATH for windows

* Update loggers.py

* Update plotly.html

* updates

* Update parent_classes.py

* Update plotly.html

* add posthog to deps

* Update loggers.py
2023-04-28 12:43:57 +00:00
montezdesousa
3d243b361a Sync with hub on reset + routines fixes (#4842)
* keep session alive on reset

* remove print

* silence routines

* ruff

* skip login if is papermill

* ruff

* move is_papermill to avoid prompt_toolkit warning fd is not a terminal

* move is_papermill back and check for atty instead

* only download routines and update sources if terminal

* only starts prompt toolkit if isatty

* black

* avoid duplicate files after reset/login

* remove hub  routines on reset

* comment

* fix unittest

* forgot this debugging prints
2023-04-21 16:12:09 +00:00
James Maslek
dceaabcf53 Get rid of twitter news bar (#4820) 2023-04-18 15:47:22 +00:00
James Maslek
da7fb3a831 Improve options menu slightly + close some bugs (#4793)
* platform to logs

* dte not /365 and delete code i never got to

* 4 decimals on chains

* Change options default load to the defaut source

* mypy

* Less polluting of logs

* #4420

* #4811

* Fix test

* Remove unnecessary log decs

* Save us money

* whoops
2023-04-18 12:54:44 +00:00
montezdesousa
229f732b74 Keep session on reset (#4813)
* add remember attribute to user

* don't save hist if not remember

* remove routines on exit if not remember

* fix unittests

* remove hub routines on exit

* check if user is local first

* remove hist file on exit if not remember

* comma

* Fix `exe --file` choices on login (#4799)

* download and save routines in sync, to have choices immediatly available

* fix: docs min

---------

Co-authored-by: jose-donato <zmcdonato@gmail.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>

* don't delete session on reset

* Update terminal_helper.py

* Update terminal_helper.py

* less prints

---------

Co-authored-by: jose-donato <zmcdonato@gmail.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-04-17 19:47:24 +00:00
montezdesousa
889ff94f12 Extend "Remember me?" login prompt option (#4802)
* add remember attribute to user

* don't save hist if not remember

* remove routines on exit if not remember

* fix unittests

* remove hub routines on exit

* check if user is local first

* remove hist file on exit if not remember

* comma

* Fix `exe --file` choices on login (#4799)

* download and save routines in sync, to have choices immediatly available

* fix: docs min

---------

Co-authored-by: jose-donato <zmcdonato@gmail.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>

---------

Co-authored-by: jose-donato <zmcdonato@gmail.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-04-17 17:53:09 +00:00
Pratyush Shukla
96d21f71fd Added fix (#4710)
* Added fix

* Fixed `load`, `find`, `price` and refactored code

* Modified line 1304 in parent_classes.py

---------

Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com>
Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt>
2023-04-10 08:39:14 +00:00
Colin Delahunty
5a8d6e823f Removes exchange option from stocks/load (#4673)
* Added fixes

* Added fixes
2023-04-04 00:05:15 +00:00
montezdesousa
f5230b26c0 Hub | sync, pull, sources and other updates (#4640)
* remove sync and pull

* ruff

* remove runtime fetch configs

* add comment

* reset when logged

* update translation yml file

* sdk regen

* print bold red messages if logout process fails

* fix sources not being applied

* handle bad json

* update hub links

* save terminal crash when sources file is broken

* add user defaults to gitignore

* actually no needed, will just be more specific about richstyle coming from hub

* black

* rewrite stdout

* fix session_model tests

* fix sdk session tests

* move paths

* remove duplicate line

* fix user being reset in test_logout_user test

* remove unecessary recording

* change colors msg

* remove repeated code
2023-04-03 13:49:53 +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
montezdesousa
1a1e8c0ed4 Add login command (#4509)
* fix show version

* update login prompt and account

* update set preference

* fix account controller

* block login/logout if not called from account

* change conditions to start terminal

* fix required args account model

* add not to login command

* pylint

* accounte controller messages

* set default user when logout

* logout then show menu

* remove unused functions

* fix logging bug

* ruff

* fix account unittests

* fix session unittests

---------

Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-03-21 10:13:59 +00:00
Colin Delahunty
3aec94cdde Improve Loading Custom Files (#4504)
* Got things working

* Got things working

* Got things working
2023-03-17 11:16:20 +00:00
montezdesousa
b19dc5205d Remove matplotlib references (#4479)
* remove theme refs

* will come for dtabento later

* remove theme refs except databento

* ruff

* remove mpl variables

* mpl still used in po

* move databento to plotly

* pylint

* ruff

* theme ref to openbb_terminal

* juans sugg

* fix: removed raw arg in `display_candle` which could return the dataframe and error, added figure to `export_data`

---------

Co-authored-by: teh_coderer <me@tehcoderer.com>
2023-03-15 14:25:59 +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
montezdesousa
f2316b15e8 Allow stocks/load --file from anywhere (#4410)
* allow load file from anywhere

* ruff

---------

Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-03-06 15:25:02 -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
DidierRLopes
f1a824a179 Add tweet news in terminal toolbar (#3757)
* Add tweet news in terminal toolbar

* allow to store tweet news settings

* update dependencies

* Add tweet news in terminal toolbar

* lint

* dependencies

* 5s timeout for twitter api

* poetry update for resolve

* reqs

* set news to false by default

* update tweepy

* update reqs

* update reqs again?

* update setuptools

* small improv

* Add tweet news in terminal toolbar

* update packages

* black linting

* black formatting

* ruff fixes

* fix settings controller

* Reqs

* fix tz issue

* add keywords selection

* linting

* helper funcs mypy

* pylint fixes

* Checkout poetry.lock + pyproject.toml

* Update dependencies

* Remove integration test file

* News Toolbar : Fix bugs

* Tests : News Toolbar

* Update dependencies

* Tests : change variable name

* Remove unused keys

* Remove unecessary global variable

* Fix linting

* Lighter API call

* Ruff

* Linting + Remove keys

* Linting

* Dotenv loading issue.

* Ruff

* Revert "Dotenv loading issue."

This reverts commit 4493f1a3e7.

* Tests : fix

* Tests : fix test_settings_controller.py

* Twitter Toolbar : avoid checking API when not enabled

* Tests : news toolbar

---------

Co-authored-by: James Maslek <jmaslek11@gmail.com>
Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
2023-02-23 13:22:22 +01:00
Colin Delahunty
cebf454cdf Added flake8-simplify (#4227)
* Added flake8-simplify

* Update linting.yml

* update.  left 1 for you colin

* Fix that one

* Missed

* Fix

* mypy

---------

Co-authored-by: james <jmaslek11@gmail.com>
2023-02-20 19:27:34 -05:00
james
15141122a2 Merge 2023-02-16 08:57:34 -05: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
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
0419be66a9 merge and fix 2023-02-11 20:21:10 -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
james
0ed729e59e Merge branch 'develop' into feature/mypy10 2023-02-09 20:07:10 -05: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
d73dfd3980 fixes for mypy 1.0 2023-02-08 19:14:25 -05:00
Colin Delahunty
ee34a1f278 Feature/add isort linter (#4114)
* Fixed isort

* Fixed issues

* FIxed linters

---------

Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-02-04 21:24:47 -05:00
Henrique Joaquim
a37d9032e3 Hotfix/fix black (#4101)
* Fix plot look when using eval and add query to choices (#3881)

* convert index to datetime and update choices

* uncomment economy integration test

* fix treasury concat bug

* fix datasets concat on duplciates

* Lock ruff version so that new lints dont break our CI (#3905)

* Lock ruff version so that new lints dont break our CI

* Bumped pre-commit ruff version

* returning always a dataframe

* Revert "returning always a dataframe"

This reverts commit d5dbf3132f.

* black everything

---------
2023-02-01 12:33:15 +00:00
Henrique Joaquim
a040fe72e7 Adds auto completion to news (#4089)
* Fix plot look when using eval and add query to choices (#3881)

* convert index to datetime and update choices

* uncomment economy integration test

* fix treasury concat bug

* fix datasets concat on duplciates

* Lock ruff version so that new lints dont break our CI (#3905)

* Lock ruff version so that new lints dont break our CI

* Bumped pre-commit ruff version

* returning always a dataframe

* Revert "returning always a dataframe"

This reverts commit d5dbf3132f.

* quick fix to auto complete args

---------

Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
Co-authored-by: Colin Delahunty <72827203+colin99d@users.noreply.github.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-01-31 08:47:36 -05:00
Jeroen Bouma
49641bd9e8 Update the routine, portfolio and screener files and adjust the documentation (#4021)
* Remove undesired example files

* Update the documentation for routines

* Add in video

* Add some additional text

* Add in a routines example that can be activated with --example

* Remove default old examples

* Add portfolio example holdings file

* Add portfolio optimization example allocation file

* Add example files for the portfolio menus

* Remove code that unintentionaly prints the home menu on every routine

* Add home instead of /

* Remove requirement to add file if you have an example

* Ensure portfolio/po/params also talks about docs correctly

* Move all routine, portfolio and screener presets to the correct folder

* Remove presets since they are moved

* Remove presets since they are moved

* Same implementation as for file in po

* Adjust code so it works with new folder

* Adjust code so it works with new folder

* Adjust code a little since I changed folder

* Update screener documentation to include how to create a screener

* Remove old readme

* Update documentation to better reflect where to find the files

* Also update SDK notes

* Update exe with auto complete and more info

* Add images

* Update images and the last script

* Update text to make it more apparent that it has an example attached

* Add section for routine scripts on home menu

* Make call_about more robust and add record and stop

* Update the routine markdown with info about record/stop including video

* Update scripts

* Update portfolio report

* Update tests and report

* fix small load bug

* rewrite help test

* last fix was buggy

* example by default

* fix po integration test

* keep example on arg

* adapt integration test

* fix portfolio integration test

* fix more portfolio integration tests

* pa is not an option anymore

* portfolio report choices only holdings

* update integration test for portfolio report

* Small formatting improvements

* Remove sleep and fix inconsistent return

* Some spelling

* oops

* Fix tests

---------

Co-authored-by: Jeroen Bouma <jeroenbouma@Jeroens-MacBook-Pro.local>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
Co-authored-by: Diogo Sousa <montezdesousa@gmail.com>
2023-01-30 13:22:32 -05:00
Jeroen Bouma
a6042b8578 Copy paste all the sheet names (#4035)
* bump

* Update ALL the exports with sheet name option

* Update contributing too

* Add in sheet name to each docstring

* Update tests

* Fix the small things for tests

* Converting CONTRIBUTING.md back since I put minimal changes in and it complains

* Fix terminal exit after `--sort p/e` (#4013)

* fix scr sort exit

* rewrite unit test output

* rewind slash replace

* rewind slash replace

* fix regex

* rewrite expected scr tests

* black

Co-authored-by: James Maslek <jmaslek11@gmail.com>

* fix: small typo (#4036)

* fix income comparison error (#4029)

* Update tests due to yfinance error

* I broke tests and fixed them

* Fix tests?

* Missed a few sheet name additions

* missed one more

* Fix some missing sheet_name parameters

* Fix a test I broke

* Update tests due to changes with sheet_name

* Update stocks and common

* Mutual funds just because

* Portfolio update

* Update Forecast

* Update Futures

* Update ETF

* Update Economy

* Update Crypto

* Update others

* Update documentation to explain --sheet-name

* It should be None test

* Add None for sheet_name since empty string can result in errors

* Formatting

* Fix tests

* Update documentation

* Also update the image

* Add back to options commands

Co-authored-by: james <jmaslek11@gmail.com>
Co-authored-by: Jeroen Bouma <jeroenbouma@Jeroens-MacBook-Pro.local>
Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com>
Co-authored-by: teh_coderer <me@tehcoderer.com>
2023-01-26 09:53:21 -05:00
Henrique Joaquim
3f9c961b9a Hotfix/fix integration tests (#4025)
* Fix plot look when using eval and add query to choices (#3881)

* convert index to datetime and update choices

* uncomment economy integration test

* fix treasury concat bug

* fix datasets concat on duplciates

* Lock ruff version so that new lints dont break our CI (#3905)

* Lock ruff version so that new lints dont break our CI

* Bumped pre-commit ruff version

* removing leftover test

* fix forex test to use simple pairs

* fix key error in portfolio test

* fix pylint

* fix stocks_bt test

* fix ca tests

* fixing condition

* fixing int tests

* skipping shroom tests

* adding /red

* linting

* making pre commints happy

* linting

Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
Co-authored-by: Colin Delahunty <72827203+colin99d@users.noreply.github.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-01-24 17:23:28 +00:00
James Maslek
e367530d44 Feature/excel sheets (#4023)
* bump

* Add sheet name to export for base load function

* Disable pylint due to known issue with pylint and pandas

* Add robust option if file already exists

* Abstract the sheet name argument into the export data helper

* Feature flag for auto overwrite

* add to featflag menu

* Add featflag to builds

* Remove safety check

* Fix test
2023-01-21 09:17:20 -05:00
James Maslek
ba2c7452fe Add ticker to the load export file (#3997)
* bump

* Change export name to have the ticker

* revert yaml
2023-01-17 10:16:00 -05:00
James Maslek
6ae8d88d2d Put yf.info behind an exchange flag on load (#3951)
* Put yf.info behind an exchange flag

* Guides

Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
2023-01-13 17:45:27 -05:00
montezdesousa
c6b2ec5857 Integration tests refactor (#3781)
* generate integration tests report

* new console report

* simple run_scripts

* move tests script to folder

* add skipping

* always display skips

* func name

* allow running from relative path

* rename some vars and time

* typo

* change portfolio supress and warning

* uncomment economy test

* rename test controller

* multiprocessing

* display test progress and available

* rename func

* mypy

* should not be here

* small changes

* type hinting and docstrings

* new subprocesses default

* forget context and chunksize

* clean len skipt

* small comment

* fix subproc default with v

* minor change

* fix path

* better this way

* make output visible

* allow only sequential run with verbose mode

* change message

* detail

* include andrew idea

* limit multiprocessing to clone version

* fix for package application

* must be up here

* allow verbose with multiprocessing but warn

* update readme

* move tests to core

* Update README.md

* Update README.md

* move readme outside

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* parse subproc arg

* Update README.md

* Fix plot look when using eval and add query to choices (#3881)

* convert index to datetime and update choices

* uncomment economy integration test

* fix treasury concat bug

* fix datasets concat on duplciates

* Lock ruff version so that new lints dont break our CI (#3905)

* Lock ruff version so that new lints dont break our CI

* Bumped pre-commit ruff version

* Delete glossary base command

* move scripts

* ruff

* update pyproject.toml

* update yfinance

* fix futures and economy test, rewrite

* rewrite stocks test yfinance dependent

* refactor sia to yfinance 0.2...

* fix last failing sia tests

* black

* update reqs

Co-authored-by: James Maslek <jmaslek11@gmail.com>
Co-authored-by: Colin Delahunty <72827203+colin99d@users.noreply.github.com>
Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
2023-01-11 14:23:43 +00:00
Chavithra
cfde16e93d Core: move parse_simple_args (#3705)
* Moving Docker folder into Build

* Workflows : update Docker

* Docker : update compose image version

* Docker : fix volumes path

* Update core

* Update helper_funcs

* Update dashboards

* Update reports

* Update keys_controller

* Update settings_controller

* Update sources_controller

* Tests : fix __mock_parse_simple_args

* Reduce lines

Co-authored-by: James Maslek <jmaslek11@gmail.com>
2022-12-06 09:52:13 +01:00
James Maslek
a12b788ea9 remove export choices on export argument (#3655)
* remove export choices

* Error message
2022-11-29 19:22:22 +01:00
jose-donato
2e2e5e2fb6 fix about command (#3532)
* fix(docs): added margin between sections

* fix: about command

* fix: about command to match new docs

* sdk aout

* fix: fix homepage

* fix: features -> reference on generate; about on homepage

* fix: juan magic

* update on merge workflows

Co-authored-by: James Maslek <jmaslek11@gmail.com>
Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
Co-authored-by: Diogo Sousa <montezdesousa@gmail.com>
Co-authored-by: teh_coderer <me@tehcoderer.com>
2022-11-25 18:42:07 -06:00
Henrique Joaquim
7a9cf08acc Fix crypto candle (#3558)
* improve crypto.candle

* added raw and examples

* linting

* disable too many args

* format volume if in use

* consistency on dd.candle

* fixed tests as default arg changed

* fixed tests

* Revert "fixed tests"

This reverts commit fb7df62000.

* Revert "Revert "fixed tests""

This reverts commit 8b568d24e5.

* Revert "Revert "Revert "fixed tests"""

This reverts commit 04353b0d11.

* Revert "Revert "Revert "Revert "fixed tests""""

This reverts commit a181e0acdc.

* fixed tests

* wrong branch

* removing changes

* getting rid of mutable defaults, also changed vs_currency to to_symbol - tks @montezdesousa

Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
2022-11-25 14:52:45 -05:00