* removed investing/investpy from sources and added #TODO
* removed Investing from events source
* fixed autocompletion for events
* added rank column based on the debt value
* removed options in treasury autocompletion
* fixed autocompletion to use comma instead of space
* fix verification for no data on economy/qa
* fix the exaple
* commented spreadso it don't show on auto completion
* preventing testst from using user default data sources and also removing unused env variables
* fixing tests
* adding empty line after uninterpreted args
* fixing tests
* improve the way fred works by not repeating the request. also, solve some issues with the plot - but not all
* Revert "improve the way fred works by not repeating the request. also, solve some issues with the plot - but not all"
This reverts commit 1094b454a5.
Co-authored-by: James Maslek <jmaslek11@gmail.com>
* remove verbose on load
* Revert implementation of the verbosity setting in stocks controller
* Edit docstrings to comply with pydocstyle linting rules
* Fix typos in variable names and help text
* Add verbosity setting to forex load helper as it uses the stocks helper
* Update docstrings to comply with pydocstyle linting rules
* Update tests
* Fix test relying on local sources settings
* Remove old test cassettes
* Add new test data
* WIP: Fix futures tests
* Clean up test file
* Fix futures tests having a time component
* Fix futures model tests
Co-authored-by: James Maslek <jmaslek11@gmail.com>
Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>
* fixed integrated test test_stocks_ba.openbb
* fixed integrated test test_stocks_dd.openbb
* improved and centralised the check
* fix lint
* Docker : update ci + build files
* Docker : update build and CD
* Docker : update CD
* Docker : test
* Docker : test CD
* Docker : test CD
* Docker : rename `build.sh`
* Docker : tests CD
* Docker : test CD
* Docker : update CD + build
* Docker : fix CD
* Docker : fix CD
* Docker : build
* Docker : test CD
* Docker : CD
* Docker : CD
* Docker : test
* Docker : test CD
* Docker : test CD
* Docker : test CD
* Docker : test CD
* Docker : test CD
* Docker : test CD
* Docker : test CD
* Docker : test CD
* Docker : build + CD
* Docker : test CD
* Docker : test CD
* Docker : test CD
* Docker : test CD
* Docker : build
* Docker : test CD
* Docker : build + cd
* Moving `scripts`
* Checkout `helper_funcs.py` from main
* Docker : remove test file with alpine
* fixing readme errors
* fixing missed readme errors
* Docker : build
* Logging : handle docker app name
* Docker : test CD
* Docker : cd
* Doc
* Doc
* Doc : linting
* Doc
* Docker
* Doc
* Fixing `terminal_controller`
* Linting
* Doc : fixing links
* Version 1.9.1
* Docker : fix name
* Doc : add volumes in command
Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt>
Co-authored-by: James Simmons <simmonsj330@gmail.com>
Co-authored-by: Colin Delahunty <72827203+colin99d@users.noreply.github.com>
* add screenshot and plotshot
* handle 0 plots
* black
* change logo
* change path spec
* get window name automatically
* create screenshot frame
* merge commands
* fix parser help
* minor refactors
* rewrite parser help
* save img
* small improvs (#2562)
* prevent non windows users to use screenshot now
* minor msg change
* refine frames
* update dependencies
* black
* flake8
* flake8
* change pyautogui import
* update dependencies to avoid mouseinfo
* update poetry and requirements
* remove pygetwindow
* revert dependency files to main
* remove terminal ref
* black
* minor image change
* black
* move images to timages folder
* move images to timages folder
* remove unused var
Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt>
Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt>
Co-authored-by: minhhoang1023 <40023817+minhhoang1023@users.noreply.github.com>
Co-authored-by: Colin Delahunty <72827203+colin99d@users.noreply.github.com>
* modify export function to user data function
* change to exports
* change i18n
* be able to change user data folder
* black
* add exports to paths_helper
* black
* minor fixes
* fix
* small change to exports
* fix
* exports changes
* fix export
* fix reports export
* black
* minor changes
* fix test
* fix dcf export
* type ignore
* black
* pylint
* fix tests
Co-authored-by: Chavithra <chavithra@gmail.com>
* add log path
* add test to check if log file is in correct dir
* env path
* black
* mypy fix
* add styles folder and styles from repo
* add timezone as env variable
* fix changes with main
* fix test
* flake8
* fix linting
* fix linting
* fix issue with light mpl stylesheet
* change timezone variable name
* change names
* change names
* names
* simplify paths.py
* change some names
* fix error in logic
* remove 3.11 from testing for now
* add log path
* add test to check if log file is in correct dir
* env path
* black
* mypy fix
* linting
* add make_paths and change references
* terminal change
* change constants to paths
* change names
* black
* mypy
* mypy
* pylint else
* add make paths
* remove custom user dir name
Co-authored-by: Chavithra <chavithra@gmail.com>
* fill etf and prevent different length errors
* auto fill etf sectors and allow 0 value portfolios
* allow 0 value portfolios
* remove unused folder
* allow 1 asset portfolios
* split allocation calls by category in controller
* comment sector allocation model
* get country and region allocations for etf
* add comments and black
* improve comments
* improve comments
* allow for 1 category in sector, country and region
* add progress bars
* linting fix
* fix mypy
* set default date
* fix pylint
* add isin on paexport
* merge main
* auto pre load benchmark
* fix rich table for np.float64
* refactor portfolio allocs
* refactor alloc command
* add isins column
* format output alloc
* rename variable
* fix nan bug
* black
* add ticker conversion to yf format by isin
* warn and removed unsupported ISINs
* solve same day trades bug
* display bench loading progress
* portfolio show
* check if valid isins on preprocessing
* black
* fix bug when region empty
* warn when category is empty
* reformat preprocessing
* codespell
* check if ticker is valid
* flake8
* fix test
* fix bug with trades on holidays
Co-authored-by: Jeroen Bouma <jer.bouma@gmail.com>
* Add helper command to filter unix paths and other edge cases
* Remove sort argument filtering from parsing
* Make --file arg mandatory for loading files
* Refactor queue parsing logic
* Enable adding controller level input parsing filters
* Remove the github repo path hack because it's not needed anymore
* Fix typos and line length linting
* Update unix path parser to match known extensions
* Update oss custom filters to not require space after slash arg
* Fix tests and failing linters
* Add pre-commit hook to check for reserved arguments validity
* Fix tests
* Fix finviz compare screener tests
* Fix screener test
* Fix screener test
* Fix float representation in pd dataframe on finviz screener tests
* Update test records
* Update test records
* Remove explicit float formatting in tests
* Update tests
* Remove prepending file argument
* Update long arguments that have lost their short default to file
* Update arguments in docs
* Update portfolio test data
* Fix econometrics/desc throwing error on empty df and fix tests
* Update tests
* Fix econometrics load autocompletion
* Fix portfolio tests giving different results every time
* Allow loading openbb scripts from arbitrary path
* Fix passing path as a terminal argument
* Fix guess game being case sensitive
* Silence bandit warning about using pseudo-random generators
* Update gov tests
* Fix screener sort fields that have forward slash
* Make controllers apply custom argument filters on entry
Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt>
* Add this clenow volatility momentum thing
* Hugo + FIx controller
* clean up
* mypy fix
* Add to menu and dont show header
* menu testing
Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt>
* Add all data sources to data_sources_default.json so we can have a list in one place
* create menu to get and set data sources
* improve settings controller
* james request
* improve helper message
* minor improvement
* fix tests
* Add a feature flag loaded from . env for preferred data source
* Update the load command to use the preferred source
* Add a test
* Black syntax checker updates
* Update test syntax
* Update load command documentation
* Add a variable to read a sources file from
* Add a default sources.json file
* Add a helper function to read the source file and get the most relevant value
* Add some comments
* Remove older preferred data source file setting
* Add a default source file for data and use it if no user preference specifies a specific file
* Remove duplicate source file and old settings values
* Update the test file
* Update documentation string
* Update tests/openbb_terminal/test_settings_controller.py
* Black syntax formatting issues
* Fix a test case
* Fix a typo
* Fix Flake8 errors
* Fix Flake8 errors
* Pyupgrade syntax fixes
* Additional linter corrections
* More pylint issues
* Improve predefined default sources
* refactor parse_known_args_and_warn for documentation
* Update openbb_terminal/helper_funcs.py
* Add a feature flag loaded from . env for preferred data source
* Update the load command to use the preferred source
* Add a test
* Black syntax checker updates
* Update test syntax
* Update load command documentation
* Add a variable to read a sources file from
* Add a default sources.json file
* Add a helper function to read the source file and get the most relevant value
* Add some comments
* Remove older preferred data source file setting
* Add a default source file for data and use it if no user preference specifies a specific file
* Remove duplicate source file and old settings values
* Update the test file
* Update documentation string
* Update tests/openbb_terminal/test_settings_controller.py
* Black syntax formatting issues
* Fix a test case
* Fix a typo
* Fix Flake8 errors
* Fix Flake8 errors
* Pyupgrade syntax fixes
* Additional linter corrections
* More pylint issues
* Improve predefined default sources
* refactor parse_known_args_and_warn for documentation
* Update openbb_terminal/helper_funcs.py
* Forex controller
* Tests : Fixing `parse_known_args_and_warn` issue
* Comparison Analysis controller
* Tests : Comparison Analysis
* Tests : Stocks/DarkPoolShorts + Stocks/Options
* Tests : fix call_load tests
* Linting : fixing line size
Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt>
Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
* improve econometrics load, custom_reset
* improve econometrics UX and remove options cmd
* fix sector and industry analysis
* improve econometrics and export data from main menu
* improve toolbar vis to add helper -h
* imporve type and desc
* add logger
* econometrics improve ols
* improve root and norm commands
* more cleanup
* improve econometrics commands
* api econometrics
* tests econometrics
* improve index command
* change modify to add,delete,combine and rename
* minor fix
* update docs
* update pylint
* update pylint
* tests
* Update documentation
* fix type command
* index
* improve more econometrics for Jer
* improve docs
* fix tests
* fix test
* remove help
* Add in robustness for when you select two dependent variables
* Update Website documentation
Co-authored-by: JerBouma <jer.bouma@gmail.com>
* initial implementation of terminal supporting multiple languages
* improve quote command
* stocks controller with english translation pattern
* add language to settings
* update reqs to have python-i18n
* find languages automatically
* add to documentation how to support another language
* markdown
* fix no member issue
* fix test
* refactor code with translations
* translate for options and options/scr
* solve translation for all submenus within options controller
* fix stocks controller tests
* translate disc and th
* dps and sia menus
* scr and ins
* add gov controller
* fix tests for new controllers
* stocks/ba and stocks/ca menus
* add stocks/fa
* res controller
* stocks/dd
* stocks/bt
* qa and pred
* crypto and crypto/disc
* overview and onchain menus
* defi
* nft and tools
* crpyto/dd
* stocks and crypto TA
* finish crypto menu
* finish ETF controller
* finish economy menu
* forex
* alternative and mutual funds
* refactor source for translated version
* econometrics and portfolio and brokers
* portfolio
* fix tests
* finish language implementation
* refactor code for cmds
* improve keys
* refactor name funcs and add docstrings
* fix minor stuff
* fix tests
Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>
Co-authored-by: Chavithra <chavithra@gmail.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
* improve portfolio controller
* improve menu ux with disabling command when port or bench are not loaded
* allow custom reset with benchmark and portfolio loaded
* bench needs portfolio loaded to use start date, reflect that
* fix tests
* allow to see sum of a portfolio holdings
* add r-square to portfolio
* add skewness of data
* add kurtosis
* add stats
* allow perf command to select a period
* add yearly returns to cumulative return plot
* add individual rolling volatility
* add individual rolling sharpe
* add individual rolling sortino
* add individual rolling beta
* add period to cumulative returns
* clean up on aisle 5
* minor fix
* add volatility, sharpe ratio, sortino ratio and maximum drawdown ratio
* remove duplicated metrics
* check for portfolio and benchmark more modular
* fix tests
* remove sqrt(N) and N from sharpe and sortino calculations
* allow hold to export raw data from tail
* automatically add space before and after table
* add portfolio holdings in percentage
* fix relative dates to be more accurate
* refactor metric command to allow to select a metric of interest and check different periods
* fix cumulative return and implement new yearly return command
* add daily returns graph
* add distribution of daily returns command
* add monthly returns command
* add summary command with multiple metrics for a specific period
* calculate yearly (out)performance
* fix show
* rbeta with benchmark of 1
* improve mret style
* improve title of distribution
* improve volatility
* minor improvement in doc
* improve mret and yret
* tests
* update portfolio content on hugo docs
* fix ycrv hugo docs
* Update _index.md
* Update _index.md
* Update _index.md
* Update _index.md
* Update _index.md
* Update _index.md
* Update _index.md
* Update _index.md
* Update _index.md
* Update _index.md
* Update _index.md
* Update _index.md
* Update _index.md
* Update _index.md
* fix issue
Co-authored-by: Jeroen Bouma <jer.bouma@gmail.com>
* Allow stock search keyword has whitespace
* Add exchange Sapporo Delayed Price Currency in JPY
* Add exchange Sapporo Delayed Price Currency in JPY
* black formatter apply
* pyupgrade apply to use f string
* black formatter apply after pyupgrade
* add docstring
* normalize function to use it generally
* moving function to helper_func file
* change funciton name to snake
* change checker lambda to def and name to snake
* black formmatter apply
Co-authored-by: 정민하 <mhjeong@sharekim.com>
Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>
Co-authored-by: didierlopes.eth <dro.lopes@campus.fct.unl.pt>
* Fix bugs fetching token prices #1741
* Fix bug displaying very small floats in tables #1741
Co-authored-by: Alex Ferrari <a.ferrari88@gmail.com>
Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>
* adding stock price comparison via -c flag
* updated as per comments
* trying to fix tests
Co-authored-by: didierlopes.eth <dro.lopes@campus.fct.unl.pt>
* Decouple export path composition into a separate function
* Fix typos, linting and text formatting
* Improve cross platform compatibility of user home path handling
* Fix export path for pir and dcf
* Remove excessive iteration from fa integration test
* Add investpy data to fix funds menu
* Clean up logs dir before build on macOS
* De-quarantine terminal package on launch on macOS
* Add docstring
* Update dcf test data
* Remove recording new data every time pycoingecko tests run
* Skip pycoingecko tests
* Update deps to fix CI tests on main
* Bump Pygments version to fix the CI
Co-authored-by: piiq <piiq@tinag.ru>
Co-authored-by: didierlopes.eth <dro.lopes@campus.fct.unl.pt>