* 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>
* Added code to look at Yahoo Finance Financials (Income, Balance sheet and cashflow, if tickers not found in Alpha Vantage. Should cover all UK (only tested with .L appended to tickers).
* Added code to look at Yahoo Finance Financials (Income, Balance sheet and cashflow, if tickers not found in Alpha Vantage. Should cover all UK (only tested with .L appended to tickers).
* change
* refactored to keep yahoo fa financials (income, cash, balance) separate.
* refactored to keep yahoo fa financials (income, cash, balance) separate.
* refactored to keep yahoo fa financials (income, cash, balance) separate.
* refactored to keep yahoo fa financials (income, cash, balance) separate (fixed dates).
* Fixed source bug
* empty commit
* fixed header date issue
* Fixed source
* fixed bugs related to no data returned
* fixed bugs related to no data returned
* fixed bugs related to no data returned
* Added yf to av when no data returned from av
* Added support for polygon statement of cash flows
* Fixed issue I created
* fixed pylint error else after return
* fixed pylint error with disable R1732
* fixed tests relating to av
* Updated polygon model and fixed tests
* fixed load GNR in fa after SNR.L in stocks
* fixed load GNR in fa after SNR.L in stocks
* Added newline to print
* Added newlines
Co-authored-by: Colin Delahunty <72827203+colin99d@users.noreply.github.com>
Co-authored-by: colin99d <colin99delahunty@gmail.com>
* Update stockanalysis_model.py
* Update etf_controller.py
* Fix tests and linting
* 'Fixing #1978 by switching to check_positive_float'
* 'Fixes #1977 by switching labels'
* Fixes#1992 by modifying finbrain_crypto_view.py
* 'Changed the markers to white to avoid confusion'
Co-authored-by: didierlopes.eth <dro.lopes@campus.fct.unl.pt>
Co-authored-by: JerBouma <jer.bouma@gmail.com>
* Add error handling for when financial statements cannot be parsed
* Formatting updates
* Remove a rogue print statement
* Fix a copy paste error
* Formatting issues with Black
* Use sentinel values rather than exception based workflow
* Remove unneeded change
* Fix formatting
* Don't use exceptions for handling error
* Fix a null check case
* Add an error print string to pass tests
* Remove exception throwers
* Update docs since we don't throw this exception
* Fixing default view and ascending order in cglosers and cggainers
* Fixing futurewarnings error, adding test data, and changing dollar sign issue
* Adding --rewrite-expected test to pass CI
Co-authored-by: didierlopes.eth <dro.lopes@campus.fct.unl.pt>
* Small fixes
* Add in Introduction to Funds page
* Update _index.md
* Delete images and fix some grammar
Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt>