* pull sector industry country data from yfinance
* fix imports with missing info
* run black on helper
* fix tests
* fix tests
* fix linting
* autofill stock data and display progress bar
* redirect stock data file
* substitute only stocks not provided by user
* reset benchmark when new portfolio is loaded (bug fix)
* rewrite help, will be fixed in previous pr
* fix mypy
* fix linting
* fix linting with open
* format progress bar
* run black
* avoid clearing of all fields
* reformat error message
* improve returns calculation performance
* general linting
Co-authored-by: Jeroen Bouma <jer.bouma@gmail.com>
Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>
* Add edge case handlers for crypto balance. ResolvesOpenBB-finance/OpenBBTerminal#2094
* Clear print statement.
* Run previous df generation.
* Run pure row merge.
* Fixing spacing.
* Adding test and fixing previous test failures.
* Clear comment.
* Adding vcr test.
* revert to old poetry.lock
Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt>
* Add in Install Terminal link
* Add in CSS and HTML for a button that links to terminal installation
* Because Jose said so
* Jose forced me to
* Last change forced by Jose
* No rel:
* 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
* Portoflio : add pa export command for Degiro
* Update controller + tests
* Tests
* Degiro : update pa export format
* Fixing Premium
* Black
* Show index
* add ecocal command to menu
* add menu legend
* run black and pylint
* fix date input
* add command to main.yml
* sort and remove duplicates
* run black on model
* fetch user timezone automatically
* remove tz option and None displays
* adds choices to controller
* fix dates corner case
* create test for get_economic_calendar
* write tests for investingcom_view
* fix ycrv model
* remove unused imports
* rewrite expected for economy print help
* rewrite expected for portfolio model
* fix linting
* fix linting
* try to pass pylint again
* create _index.md
* complete docstrings
* rewrite expected on portfolio model
* Update _index.md
* Update _index.md
* change -i default to all
* rewrite portfolio model and mark vcr
* run black on test changes
* revert changes on tests
* add limit to nr of events
Co-authored-by: Jeroen Bouma <jer.bouma@gmail.com>
* Add python 3.9 conda environment
* Bump dependency versions
* Bump default python version in github actions to 3.9
* Update install documentation
* Update tests
* Bump black version in conda environments
* Skip test_display_norm in econometrics menu tests
* Bump black and tensorflow versions in pyproject toml
* Attempt to fix failing concurrent windows tests
* Skip test_display_norm in econometrics menu tests
* Bump python in conda test workflows
* Update requirements.txt
* Fix old version fallback tag
* adds pythonic portfolio class
* start calculate trades refactoring
* adds comments to portfolio model - delete afterwards
* finish calculate trades refactoring
* restore original portfolio_model.py
* implement calculate_allocations
* adapt and test controller load, show, bench, alloc and perf
* add old code that was ok
* adapt controller
* adapt portfolio_view
* run black on pythonic_portfolio.py
* fix crypto bug
* change column name in example datasets
* substitute portfolio_model.py
* update show command
* push cumulative returns calculation to model
* fix last change in cumulative returns
* add comments on possibly unused code
* run black on changes
* bring metrics from helper to model
* push rolling metrics from view to model
* Details and linting
* Fix tests
* remove empty attribute and rename class
* fix view and controller rf
* change returns calculation method
* remove CASH from code
* remove cash from tickers_list
* run black on changes
* change function name
* adapt to PortfolioModel
* fix tests
* fix tests on help
* fix linting
* call metrics from PortfolioModel
* call drawdown from model
* fix some mypy issues
* fix remaining mypy issues
* fix test
* Fix linting
* Remove unused function
* Small fixes
* Remove old code and adjust summary to simply work
* Update the Excel since CASH is no longer a thing
* Fix tests
* Update the csvs
* Updates to usage of full_shares and more details
* Fix -t flag for perf
Co-authored-by: Jeroen Bouma <jer.bouma@gmail.com>
* fixed polygon timespan, it wasn't using the montly/weekly flags
* validate if the column exists before proceeding with the sort
* if the stock dataframe is empty we'll keep the previous behaviour. also, added quotes to keep the formatting the same as the original message.
Co-authored-by: Chavithra <chavithra@gmail.com>
* Making pa active + pa minor features
Makes pa actice and adds country to the df. The groupby command also gets percents of holding allocation. It also fixes warnings and prepares for a later pr that I'm currently working on.
* Fix linting
* black linter
* Fixes
Should fix everything
* Linting
* Making pa controller to base class standard
* Fix linting
* first metrics
* Adding calmar ratio
* Adding metrics to controller
* Linting
* Linting
* Test fixes
* Test fixes
* Adding tests
* Linting
* Restructuring added tests
* Linting
* Updating hugo website and fixing help
* Fixing commands
* Fix kelly criterion command
* Fixing tests
* Linting
* More linting
Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt>
Co-authored-by: Jeroen Bouma <jer.bouma@gmail.com>
* Change about us to open_terminal_documentation
* Change the home menu to be more compact
* Make changes to menu layout and change bottom bar
* Change about command to send you to the documentation and add about to bottom bar
* Add in about choices to all menus
* Adjust wording
* Adjust the website to match terminal commands and make adjustments for common menus
* Update the website and small change to about command
* Small adjustment to about command
* Remove update command
* Add some more info about arguments
* Fix broken link
* Add pro tip
* Update keys to work well with about
* Fix some common paths
* Add back in the update command with exception if packaged application
* Remove update comment
* Fix all the things
* Make about more robust and also add in exe
* Make sure that there are actual commands and menus
* Making pa active + pa minor features
Makes pa actice and adds country to the df. The groupby command also gets percents of holding allocation. It also fixes warnings and prepares for a later pr that I'm currently working on.
* Fix linting
* black linter
* Fixes
Should fix everything
* Linting
* Making pa controller to base class standard
* Fix linting
* Refactor API to accept Crypto Symbol as an input argument
* Crypto API fixes
* Fixes
* Linting
* Linting
* More linting
* Fixes
* Tests : cryptocurrency/helper
* Tests : cryptocurrency/glassnode
* Pytest : Cryptocurrency/due_diligence
* Pytest : cryptocurrency/discovery
* Pytest : cryptocurrency/due_diligence
* Remove not a needed function argument
* Linting
* Test fixes
* Fixing mentioned fixes
* Test fixes
* Tests: cryptocurrency/defi
* Fix linting
* Final test fixes
Co-Authored-By: Chavithra <6114398+Chavithra@users.noreply.github.com>
* Fix merge
* Linting
* Fixing error
* Linting
* Removed long link
Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt>
Co-authored-by: Minh Hoang <nminh.hoang1023@gmail.com>
Co-authored-by: minhhoang1023 <40023817+minhhoang1023@users.noreply.github.com>
Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
Co-authored-by: Chavithra <6114398+Chavithra@users.noreply.github.com>
* Small detail
* Add in Scripts guide
* Add template script
* Add Scripts to menu
* Update Scripts guide
* Add section on Scripts & Routines in the Getting Started guide
* Update _index.md
* Get rid of images
* Update stocks_helper.py
When a stock is returned:
Market: CLOSEDSENIOR PLC 10p
Fixed to show:
Market: CLOSED
Company: SENIOT PLC 10p
* Update stocks_helper.py
Added logic for US if source requires .US. without this logic Datetime is printed twice.
* Update stocks_helper.py
Updated logic to fix pyLint Error.
* Update stocks_helper.py
* Update stocks_helper.py
Further testing revealed Upper and Lower case issues, if .upper() is used it throws errors.
This function uses yfinance to return info data for tickers.
Yahoo does not have .US suffix for US stocks but other feeds may (will) have this.
Some testing gave the following:
Stock: │
Datetime:
Timezone:
Exchange:
Market:
Currency:
Company:
or:
Datetime: 2022 Jul 01 07:51
Timezone: Europe/London
Exchange: LSE
Currency: GBp
Market: OPENSENIOR PLC 10P
or this:
Datetime:
Datetime: 2022 Jul 01 02:44
Timezone: America/New_York
Currency: USD
Market: CLOSED
Company:
Final Result is this:
Datetime: 2022 Jul 01 02:51
Timezone: America/New_York
Currency: USD
Market: CLOSED
Company: Apple Inc.
I don't think this function is overly complex and could do with a refactor at some point.
* Update stocks_helper.py
fixed Black error
* Simplified if statement
* Reverted poetry
Co-authored-by: colin99d <colin99delahunty@gmail.com>
Co-authored-by: Colin Delahunty <72827203+colin99d@users.noreply.github.com>