Commit Graph

40 Commits

Author SHA1 Message Date
Theodore Aptekarev
3c2a8cf97f Installer fixes (#1584)
* quick econ fix

* black

* keys and feature flags

* terminal name 👀

* some more replacements

* some more replacements

* edit pyproject

* gst -> openbb

* add example portfolios back to git

* Update api from gst

* sorry.  skipping some tests

* another round of names

* another round of test edits

* Missed some .gst refs and update timezone

* water mark stuff

* Fixing Names in terminal.spec and name of GTFF_DEFAULTS to OBBFF_DEFAULTS

* Add statsmodels and linearmodels datasets to bundle

* Update openbb test scripts to exit after they're done

* Fix default export path for packaged apps

* Update packaging settings after rename

* Exclude jupyter and report from packaged apps and testing

* Fix typo

* Remove divcal from test because it freezes the terminal

* Add openbb mac icon

* Add windows icon and splashscreen

* Fix markdown linting

* Fix gov & economy failed test  (#1585)

* fix more GST to OpenBB Terminal

* Fix gov & economy fail tests

* Small changes

* Patching valuation & performance command

* Change GTFF to OBBFF

Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt>
Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>

* Resolve no-else and inconsistent return

* Set default predict to true

* Fix multiple bugs: Add ylabels to bt menu & Fix reports bug (#1581)

* Add y labels to all bt commands

* Fix reports bug

* Update crypto market

* Update crypto market

* Remove gst folders and remaining files

Co-authored-by: didierlopes.eth <dro.lopes@campus.fct.unl.pt>

* Break CI

* Break CI again

* Fix small rsi bug (#1588)

* Add y labels to all bt commands

* Fix reports bug

* Update crypto market

* Update crypto market

* Remove gst folders and remaining files

* Add back crypto market

* Update report controller

* Remove bt view from gst

Co-authored-by: didierlopes.eth <dro.lopes@campus.fct.unl.pt>

* Clean up remainder of Gamestonk

* Fix CI back

* Force CI to install pytest

* Tests : fix test_menu

* Fix loggers linting

* Rename default OPENBB feature flags

* Rename defaults feature flag file

* Loggers : fix mypy

* OBBFF to OPENBB in terminal.spec

* Change flair to butterfly

* Force CI to create a new cache

* Force CI to create a new cache in conda tests

* Skip test

* Clear other caches

* Fix linting

Co-authored-by: james <jmaslek11@gmail.com>
Co-authored-by: Andrew <andrew.kenreich@gmail.com>
Co-authored-by: minhhoang1023 <40023817+minhhoang1023@users.noreply.github.com>
Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt>
Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
2022-03-29 20:10:00 +03:00
jmaslek
b71abcfbf4 Updating some names (#1575)
* quick econ fix

* black

* keys and feature flags

* terminal name 👀

* some more replacements

* some more replacements

* edit pyproject

* gst -> openbb

* add example portfolios back to git

* Update api from gst

* sorry.  skipping some tests

* another round of names

* another round of test edits

* Missed some .gst refs and update timezone

* water mark stuff

* Fixing Names in terminal.spec and name of GTFF_DEFAULTS to OBBFF_DEFAULTS

* fix more GST to OpenBB Terminal

* Logging : merge conflicts with main

* Revert wrong files

Co-authored-by: Andrew <andrew.kenreich@gmail.com>
Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt>
Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
2022-03-29 09:46:26 -04:00
minhhoang1023
9923c6974c Add YahooFinance to crypto load (#1533)
* Add yf to crypto load

* silence pylint too many branches

* Add yf chart

* Add exception handling when coins are not found

* Fix tests failing

* Address PR Comments

* Change the backwards yf crypto chart and volume label

* fix gst file

Co-authored-by: jmaslek <jmaslek11@gmail.com>
Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>
2022-03-25 17:19:27 -04:00
minhhoang1023
93aba1e2cd Add YahooFinance to forex load (#1544)
* Load yf forex

* Fix linting

* Adding forex dictionary

* Fix tests failing

* Fix tests failing

* Remove inheritance to oanda model

* Adding -s to --source

* Addressed comments

* Fix tests

* Fix oanda menu entry

* Add av api limit error handling

* Fix start date being in different formats across sources

* Silence "too much data" warning

* Add gst script to test currency sources

Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>
Co-authored-by: jmaslek <jmaslek11@gmail.com>
2022-03-25 16:11:26 +03:00
Theodore Aptekarev
ede6ec8b1a Add TA and test coverage for the Forex context (#1532)
* Add technical analysis to forex menu

* Remove "stock" and "$" from the common ta charts

* Add tests for forex context

* Update forex custom reset functions

* Remove -t arg (ticker) insertion into other_args in forex controller

* Remove excluded command from forex ta help string

* Update test data

Co-authored-by: didierlopes.eth <dro.lopes@campus.fct.unl.pt>
2022-03-22 20:24:51 +03:00
Jeroen Bouma
07719b1923 Upgrade Economy Menu (#1444)
* Initial start-up of the Economy revamp

* Add Country Codes

* Initial Revamp of the Menu

* Add indices

* Integrate FRED menu into the Economy menu

* Add Treasury rates for the United States

* Significantly speed up treasuries function and misc

* Add in inflation indexed average

* Optimise treasury code + move raw and limit parameters

* Attempt to fix tests

* Fingers crossed tests pass

* Fix exports

* Add multi-plotting functionality as well as robustness of functions

* Improve documentation Plot command

* Please tests.. work.

* Update tests, fix currency exchange rate and some misc

* Does download work?

* Tests. Work. Now.

* This can't be it right?

* Renew tests

* Some formatting

* Update _index.md

* Delete website/content/terminal/economy/cpi directory

* Update _index.md

* Delete website/content/terminal/economy/currencies directory

* Delete website/content/terminal/economy/glbonds directory

* Delete website/content/terminal/economy/usbonds directory

* Delete website/content/terminal/economy/indices directory

* Update _index.md

* Delete website/content/terminal/economy/gdp directory

* Delete website/content/terminal/economy/gdpc directory

* Delete website/content/terminal/economy/grains directory

* Delete website/content/terminal/economy/inf directory

* Delete website/content/terminal/economy/meats directory

* Delete website/content/terminal/economy/metals directory

* Delete website/content/terminal/economy/softs directory

* Delete website/content/terminal/economy/unemp directory

* Delete website/content/terminal/economy/tyld directory

* Delete website/content/terminal/economy/fred directory

* Create _index.md

* Create _index.md

* Rename website/content/terminal/macro/_index.md to website/content/terminal/economy/macro/_index.md

* Create _index.md

* Create _index.md

* Delete website/content/terminal/economy/energy directory

* Create _index.md

* Improve documentation and re-do tests

* Rename to make it work

* Add Script

* fix env yaml with new cvxpy

* Make plot command make nice legends

* Forgot one

* clean up yfinance index commands for errors

* Update images since I made them prettier.

* add mocking for yf download

* redoing tests...again

* Improve plotting by placing the legend outside the graph

* Move Legend to outside the graph and improve -sp argument from macro

* Details

* Bugfix

* Update _index.md

* Update _index.md

* Update _index.md

* Even prettier

* Update _index.md

* Fix treasury legend

* Re-update tests, does this work?

* Always fill index_data and check if show_error on True does anything

* ...

* Update workflows

* Revert "Update workflows"

This reverts commit d7c0d22fe0.

* Attempt 12331212312 to Fix Tests

* Attempt 12331212312 to Fix Tests #2

* Ok, this is it?

* Almost there James.. almost there..

* Neater way of plotting -y1 goes in column 1 and -y2 in column 2

* Fred legend should be same size

* Update _index.md

* Change it so VIX == vix for Indices

* Add options command and remove it from plot

* Typo

* Renew tests, add more countries and apply wrapping to plots

* Reduce title size, doesn't have to be so large

* Quick start of prediction from economy

* Quick pred cleanup

* test

* Clean up pred `pick` and add hugo

* Add in qa to economy while I am here

* Add in qa menu

* mock visualize output and export data

Co-authored-by: james <jmaslek11@gmail.com>
Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
2022-03-19 13:02:51 -04:00
jose-donato
107ad03ffb Adds command to get anchor protocol stats (#1517)
* added feature

* updated image and failing test

* typo

* added command to test script

Co-authored-by: jmaslek <jmaslek11@gmail.com>
2022-03-19 12:03:55 +00:00
minhhoang1023
784ceb6316 Add Crypto Market Cap dominance from Messari (#1467)
* Add market cap dominance from Messari

* Add command to script

* Add tests and hugo server

* Update tests

* Fix tests

* Remove test view

* Fix Jose's comments

Co-authored-by: didierlopes.eth <dro.lopes@campus.fct.unl.pt>
2022-03-14 23:53:52 +07:00
Colin Delahunty
3d5cbcb2ae Extended Dupont (#1475)
* Added dupont, fixed fraud

* Added dupont to scripts

* Added better handling

* Added test fixes

Co-authored-by: jmaslek <jmaslek11@gmail.com>
2022-03-12 14:28:25 -05:00
jmaslek
c6dead943c Add in Cramer recs by Ticker (#1457)
* Add cramer by ticker and move both to ba

* Fix apis and move existing tests

* Add new tests + gst

* Hugo

* Update _index.md

* Fix tests

* quick changes
2022-03-10 10:27:29 -05:00
didierlopes.eth
35cd91881f Interest from google trends correlated with stock price (#1463)
* Add interest command

* refactor code a bit further

* add docs

* add integrated tests

* Update _index.md

* fix test help
2022-03-10 13:55:21 +00:00
didierlopes.eth
0aa21d732c Add splits command (#1438)
* add splits feature

* add tests

* add splits to integrated tests

* Add splits hugo

* Update _index.md

* refactor econometrics style

* rewrite stocks/fa tests

* Implement market cap command (#1437) (#1440)

* add gst letters only

* implement market cap command

* add tests

* update hugo with mktcap cmd

* add mktcap to integrated tests

* Update _index.md

* update test fa data

* Update fa_controller.py

* fix tests fmp

* fx some of the av tests

* add export capability to AV earnings

* fix test_fa_controller

* fix source in options controller

* fix tests with Chavhi help

* fix test
2022-03-07 16:27:08 +00:00
didierlopes.eth
7090d0643a Implement market cap command (#1437)
* add gst letters only

* implement market cap command

* add tests

* update hugo with mktcap cmd

* add mktcap to integrated tests

* Update _index.md

* update test fa data
2022-03-06 15:44:01 +03:00
Jeroen Bouma
f2ca215132 Econometrics Menu (#1403)
* Add Statistics Menu

* Add Granger Causality test

* Apply Black formatting

* Add Cointegration Tests

* Adjust plotting for Cointegration test

* Add Significant parameter to Cointegration tests

* Move regression functions to seperate .py files

* Progress on Panel Data

* A lot of progress for Panel Data

* Make functions robust and improve documentation

* Re-enable Breusch-Godfrey

* Add modify functionality

* Improve modify functionality

* Add Breusch-Pagan heteroscedasticity test

* Capitalize a word

* Include documentatin for the Statistics Menu

* Update _index.md

* Update _index.md

* Update _index.md

* Fix export statements and add Example datasets

* Update example with Longley's dataset

* Update documentation with a legit source

* Compare the results from each regression models based on the wage_panel dataset

* Updated with all relevant types of regression tables

* Update with all relevant regression types for Panel data

* Update _index.md

* Add change column type, improve OLS, add time and entity effects for FE

* Update documentation and fix a small bug

* Add in Statistics menu, replacing Custom menu

* Remove custom menu

* Add in documentation

* Add in gst files

* Cointegration can be used on any amount of columns

* Add Tests

* Make tests time invariant

* Update Poetry and Requirements

* Change name of Statistics menu to Econometrics menu

* Rename scripts

* Add type in Documentation

* Change names from Statistics to Econometrics

* Add graph

* Update tests with rounding and naming

* Make minor adjustments to fix the tests

* Updating tests : allow extra args for capture

* Apply recorder formatting

* Adding some minor formatting

* Fix error with MyPy

* Attempt to fix MyPy annoyance

* super small style things

* Fix small bugs and add plot command to dwat

* Small description mistake

* Update documentation with missing argument

* Update styling

* Add error handling and add improve show functionality

* Fix merge issue

* Allow import from custom_imports

Co-authored-by: Jeroen Bouma <jeroenbouma@MacBook-Pro-van-Jeroen.local>
Co-authored-by: jmaslek <jmaslek11@gmail.com>
Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
2022-03-04 21:44:59 +01:00
northern-64bit
884bb82fb5 Adding risk metrics to portfolio and qa (#1394)
* Adding es to qa and var to portfolio

* Fixing mathematics

* Adding es command to portfolio menu

* Linting

* Fixing tests

* Lint fixes

* lint fixes

* Adding hugo, tests and small fixes

* Fixes

* Fix mypy + portfolio model

Co-authored-by: jmaslek <jmaslek11@gmail.com>
2022-02-25 13:02:01 -05:00
jose-donato
a5848af908 Crypto heatmaps (#1416)
* added hm feature

* updated requirements

* updated tests

* updated tests

* updated charts convention and removed duplicated autocompletion

* added percentage

* lint

Co-authored-by: jmaslek <jmaslek11@gmail.com>
2022-02-25 12:15:50 +00:00
Jeroen Bouma
8625ad3679 Add StockAnalysis (multi-year) to the Sector & Industry Analysis menu (#1341)
* Add StockAnalysis menu with visualise and help functions

* Add StockAnalysis view and model

* Update documentation for the SIA section

* Add Nano, Micro and Mega Market Cap options

* Make the StockAnalysis modules more robust for errors

* Update Docstring

* Ensure the DataFrames aren't modified by limiting the period

* Add tests for StockAnalysis view and model

* Refresh tests

* Make the model and view more robust

* Update the script

* Details

* Move sa_keys to _model

* Clean up functions

* Rename sa_keys to sa_dict

* Improve satma function

* Fix tests

* Optimise satma functionality
2022-02-10 11:51:01 +00:00
Colin Delahunty
e22c48ac9f Refactored terminal.py (#1312)
* Seperated run_scripts function from main

* Added scripts ability

* Converted to endswith

* Count success and failure

* Fixed commands without -h

* Handled edge case

* Replaced prints with console.print

* Fixed main function issue

* Tried more things for output

* Showed reason for error

* Scripts runs successfully

* Formatting updates

* Made integrated printout look better

* Added capturing of stderr

* Fixed reset issue

* Updated flags

* off fix

* Added Didier fix

* Squashed bugs

* Added tests

* Allowed for script file to be sent to tests
2022-02-10 10:20:51 +00:00
Colin Delahunty
b189ffa45d Fix bugs (#1310)
* Added model fix

* Fixed nasdaq view issue

* Fixed fred_view bug

* Fixed screener view bug

* Improved oanda_model excption handling

* Fixed scripts

* Improved run_scripts
2022-02-04 14:15:38 +00:00
Colin Delahunty
571e5281e3 Improved crypto handling (#1279)
* Improved crypto handling

* Fixed some tests

* Fixed some tests

* Fixed flake8

* Updated to fix tests

Co-authored-by: didierlopes.eth <dro.lopes@campus.fct.unl.pt>
2022-02-01 11:56:51 -05:00
jose-donato
4501dfd442 Crypto features: Replace coingecko scrapping (#1156)
* replaced cgcategories with api

* added coingecko categories

* refactoring commands to use api, added coins to cryptocontroller and merged find and coins

* autocompletion for coins

* removed unused vars

* added dappradar features

* refactoring commands position

* refactoring commands position

* adding visual commands and fixed report

* skipped tests for now

* lint notebook

* correct report

* black formatter keeps crying because notebook

* removed unused imports

* Fixed black

* Keep kernel metadata 'cause it's required by papermill

* Change jupyter cleanup hook to one based on nbconvert

* Try fix the hook I just broke

* Fix trailing commas in the crypto notebook

* Change the jupyter hook to a one that's featured on pre-commit's page

* Format report notebook and test new notebook hook

* Black the notebook

* Remove deleted functions from the crypto discovery API

* Remove deleted functions from the crypto overview API

* replaced print for console print and removed print from table

* replaced print for console print and removed print from table

* auto completion + sort for all discovery commands

* replacing help messages

* fix linting

* added docs and removed unused commands

* added todos and fixed help messages

* lint

* pr issues fixed

* updated tests

* tests merge

* replaced with new rich table function

Co-authored-by: Colin Delahunty <colin99delahunty@gmail.com>
Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>
2022-01-25 14:05:00 +00:00
jose-donato
ff2ddb7a91 Adds features to check crypto-related hacks (#1230)
* added ich and ch features

* added slug required and removed list of slugs

* added slug required and removed list of slugs

* updated to only have one command

* lint

* lint

* added default parameter
2022-01-21 19:58:28 +00:00
jose-donato
c70e78da3a Adds Blockchain source and two BTC commands (#1227)
* adds blockchain source and two commands

* adds tests

* missing hugo yml

* added missing parameters
2022-01-20 21:17:00 +00:00
jmaslek
5499dad5c7 Add dividend calendar from nasdaq (#1189)
* Add dividend calendar from nasdaq

* tests + hugo

* missed controller test

* gst file

* Add timeout idea and better print message

* fix divcal

Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt>
2022-01-15 16:58:00 -05:00
jose-donato
d334d5e087 Features(crypto): added new commands to defi menu (#1169)
* adding new defi features and refactoring existing ones

* added tests and docs

* added zlot to ignored words

* markdown lint

* fixed pr issues

* fix hugo main.yml

* fix hugo main.yml

* added tests

* fixed prt issue

* added iv_surface failing tests

* added mocking to llama tests

* new tests

* skipped rich test for now
2022-01-14 11:14:15 +00:00
jose-donato
4d26b3f7db Features (crypto): adds two features to Defi menu (#1180)
* added new terra features

* removed wrong multiplication

* allow aterra without --address arg

* Updating tests : crypto/defi

Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
2022-01-14 09:30:25 +00:00
jmaslek
5a5c7193db Volatility surface (#1176)
* Add a 3D volatility surface from yfinance data

* Update _index.md

* other tests
2022-01-11 11:59:02 -05:00
jose-donato
a8e7a896d7 Feature (crypto): BTC rainbow chart (#1158)
* added tests

* update colors

* replaces tests

* mock api key

* trying to fix tests

* added theo funcformatter to y ticks

* black lint
2022-01-10 19:15:55 -05:00
jmaslek
966cd3c6d5 New alternative data context + first sub context (Covid) (#1142) 2022-01-06 13:12:38 -05:00
Colin Delahunty
eb0dde4603 Refactored Reports (#1123)
* First working program

* added Voila support

* Attempt to fix requirements

* Revert depen

* Another dependency test

* Fixed errors

* Small changes

* Fixed help

* Added port warning

* Fixed continued terminal use

* Last change, we good fam

* Added placeholder so we can have stored

* Didier changes

* Fixed exit

* Fixed issue
2022-01-04 20:51:11 -05:00
jmaslek
f5b0dc8e7b Add prediction to economy/fred (#1133) 2022-01-04 14:10:40 -05:00
jose-donato
31dad613a7 added new hr feature (#1128) 2022-01-03 19:29:06 +00:00
jmaslek
e437f29ae4 Mutual funds (#1106)
* Add mutual fund menu based primarily on investpy (investment.com)

* Add start/end date for loading + some bug fixes

* hugo

* poetry add investpy rich dnspython  then poetry update

* fix reset (need to load country) and dim yfinance commands when country not US

* Fix search and add better error handling

* Catch yfinance commands when country not US.  Improve loading to change country if symbol found but not in matching country.  Changed main menu printing.

* Fix poetry / reqs merge conflict

* review comments

* Once again update poetry

* Clean up poetry to match conda (numpy was culprit)

* cvxpy down

* Think i goofed on generating reqs full

* update poetry metadata

* cleanup after review 2

* move space

* another deps try

* bump pygmnets in yaml

* try something different

* rename console -> t_console (terminal_console) for mypy
2022-01-01 14:16:32 -05:00
Didier Rodrigues Lopes
c961fcb278 Add whatif scenario feature (#1122)
* Add whatif scenario feature

* fix tests
2022-01-01 17:57:52 +00:00
Colin Delahunty
18180c2126 Fix to dcf command (#1115)
* Fix to dcf command

* Forgot to take out a comment

* Dider change

* user data patch for now
2022-01-01 17:28:26 +03:00
jose-donato
c901bb9267 NFT feature opensea collection statistics (#1109)
* added statistics for opensea collection feature

* trying to fix json error

* trying to fix json error

* fixing vcr tests

* print to include 2 decimal cases

* fixing tests

* added to script, date format and require

* fix: linting
2021-12-30 11:34:25 +00:00
jose-donato
1cd7d26255 Feature: Adds new nonzero command (#1110)
* adds new nonzero command

* fix: removed wild print
2021-12-30 11:34:02 +00:00
Didier Rodrigues Lopes
78f110b389 ETF context new and improved (#1103)
* Add lookup commands

* main ETF commands

* Add technical analysis to ETF

* add prediction techniques to ETF

* add comparison analysis to etf

* allow to select nr of holdings on load

* add shold and summary commands to ETF

* minor improvs

* screener on ETF menu

* add etf/scr wsj commands

* readd compare command

* add sbc to etf/screener

* rename chold and shold

* fix rogue etf and reset

* minor corrections

* minor menu print improv

* legend of weights and title of plot

* refactor screener to screener and disc on ETF

* add ETF scripts
2021-12-30 03:21:21 +00:00
Didier Rodrigues Lopes
63b2c72f6a Remove unnecessary return self.queue (#1083)
* remove unnecessary return self.queue

* fix some bugs found by running script files

* add ticker to crypto/dd reset
2021-12-22 22:39:32 +00:00
Didier Rodrigues Lopes
a85758c9ec Big UX improvement (#1041)
Co-authored-by: jmaslek <jmaslek11@gmail.com>
Co-authored-by: Chavithra <chavithra@gmail.com>
Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>
Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com>
Co-authored-by: Didier Rodrigues Lopes <dro.lopes@campus.fct.unl.pt>

* improve user experience phase 1

* add difflib replacement

* implement auto-complete on discovery menu

* auoto-complete, difflib,jump through menus with cd

* Updating tests : terminal

* improve navigation on gst

* add q command to terminal.py

* usage instructions

* Updating tests : terminal

* fix cd command

* vars updated

* show menu when user is going through menus

* allow user to forget the intiail / on scripting

* terminal to accept text file with configuration

* refactor -n to -l and clean code

* add all commands to the tests_stocks_disc

* remove fds from disc since we have search on stocks/ and stocks/sia

* hopefully fix tests

* skip test

* fix completer type and calling menu after command for stocks/disc

* show help menu when moving forward/backwards in menus

* skip test

* skip test - bug fix

* add reset, help and quit to choices

* improve stocks/disc controller

* refactor sia menu

* UX improvements for sia menu

* improve ux design

* refactor ca controller

* fix infinite loop

* improve ux on dps controller

* Add capability of going back from a menu going into a menu

* Ux economy (#1056)

* First round of UX improvements on economy menu

* Do fred menu + sample tests file

* revert to > on menu

* rename jobs file to .gst

* remove cd option

* improve return

* final refactoring of disc_controller

* fix ca,dps,sia,disc,stocks and terminal controllers

* work on ba_controller menu

* fix reset and try_except

* UX on screener controller

* fix for full reset name

* Ux etfs (#1059)

* Refactor ETF menu for new UX

* Add couple more examples to test

* r->reset

* Clean up switch

* gov menu refactored

* fix reset issue

* 80% of refactoring options and pricing/payoff menu is done

* improve payoff controller

* minor fix

* fix: refactor pred and ta stocks controller

* fix: refactor fa(and fmp) controllers

* fix: refactored dd controller (still missing .gst tests)

* fix infinite loop bug

* refactor options controller

* add tests for payoff and pricing

* fix reset for options

* UX Upgrade for Crypto controller(s) (#1049)

* refactor crypto controller

* refactor crypto/defi controller

* added simple test and fixes not returning queue in commands

* Clean up unused functions / iex load (#1047)

* Clean up unused functions and adjust iex load function to not depend on dates

* Had an incorrect tab on s_start definition

* wrong default arg

* regenerate pytest yml

* Comment out parametrization

* Tests : Stocks > Discovery (#1050)

* Updating tests : stocks/discovery/ark

* Updating tests : stocks/discovery/fidelity

* Updating tests : stocks/discovery/fidelity

* Updating tests : stocks/discovery/fidelity

* Updating tests : stocks/discovery/seeking_alpha

* Updating tests : stocks/discovery/seeking_alpha

* Updating tests : stocks/discovery/shortinterest

* Updating tests : stocks/discovery/shortinterest

* Updating tests : stocks/discovery/seeking_alpha

* Updating tests : stocks/discovery/shortinterest

* Updating tests : stocks/discovery/disc_controller

* Updating tests : stocks/dd

* Updating tests : stocks/fa

* Updating tests : stocks/discovery/financedatabase

* Updating tests : stocks/discovery/finnhub

* Updating tests : stocks/discovery/geekofwallstreet

* Updating tests : stocks/discovery/marketbeat

* Updating tests : stocks/discovery/nasdaq

* Updating tests : stocks / discovery / yahoofinance

* Updating tests : black

* Updating tests : unused import

* Updating tests : stocks/discovery/ark

* Tests : Stocks > Doc + Helpers + Government (#1051)

* Updating tests : stocks/government/controller

* Updating tests : stocks/government

* Updating tests : conftest

* Updating tests : stocks > government

* Updating tests : stocks/government

* Updating tests : docs

* Tests : Stocks > Insider (#1054)

* Updating tests : stocks > helper

* Updating tests : doc

* Updating tests : clean stocks > fa > av

* Updating tests : stocks/insider/controller

* Updating tests : stocks/insider/business insider

* Updating tests : stocks/insider/finviz

* Updating tests :  stocks/insider/openinsider

* Updating tests :  stocks/insider/controller

* Updating tests : black

* Updating tests : stocks/insider/controller

* Tests : Stocks > Backtesting + Behavioural Analysis  (#1057)

* Updating tests : add __init__ files

* Updating tests : stocsk/behavioural_analysis

* Updating tests : black

* Updating tests : stocks/backtesting

* Updating tests : stocks/backtesting

* fix: converted top to limit arguments

* fix: refactor disc controller, updated docs

* fix: refactor dd_controller and docs

* fix: refactor nft controller and docs

* fix: pass test temporarily, onchain controller refactor, docs

* fix: overview controller refactor, fix quit command

* fix: linting issues

* fix: refacot ta controller

* fix: refactor pred controller

* fix: linting

* fix: crypto controller

* fix: added tests, updated all controlers

* fix: menu print renamed from stocks to crypto controller, added tests

* fix: fix faster function execution

* Fix annoying pylint C0201 error

* fix: renamed commands to long format

* DISC Cleanup (#1058)

* Get rid/cleanup of marketbeat functions

* Get rid of last unused disc function + fix related tests

* fix test

* Dividend History Chart (#1053)

* Dividend History Chart

* changed to default number 10

* changed divs flag default to false

* updating the expected result for test_fa_controller.

* else statement

* fix: added load on dd

* fix: added autocompletion in all commands with argument choices

* fix: linting

* Workflows + Stocks > Insider (#1061)

* Updating code : stocks/insider remove unused file

* Updating workflows : tests - set mypy==0.910

* fix: linting

* Fixing Linting (#1062)

* Updating code : fixing linting

mypy message = Too many arguments for <lambda>

* Updating workflows : allow newest mypy version

* Updating code : apply black

* Updating code : black

* fix: updated predict controller help to match stocks

* Ux: portfolio (#1063)

* First step of portfolio UX

* Add all broker controllers to UX stuff

* UX Improvement for PO

Co-authored-by: Didier Rodrigues Lopes <dro.lopes@campus.fct.unl.pt>

* UX Improvement for resources (#1064)

Co-authored-by: Didier Rodrigues Lopes <dro.lopes@campus.fct.unl.pt>

* UX: stock/bt (#1065)

* UX: stocks>qa (#1068)

* fix mypy lambda

* skip tests for now

* remove unused paths.py

* rename tests/simulator to tests/e2e

* refactor options/screener menu

* UX : move `gst` files location

* fix stocks_controller

* UX upgrade of the Forex menu (#1048)

* Add basic forex menu test

* Add forex routes to terminal paths

* Remove commands from paths because they're not menus

* WIP Refactor forex controller

* refactor crypto controller

* Remove commented code

* Improve user output with printed text

* Add "help" back to the list of choices

* Enable the command queue for the forex controller

* refactor crypto/defi controller

* Fix candle chart blocking the terminal

* Black

* Return help and reset to the list of known args

* added simple test and fixes not returning queue in commands

* Add currency codes loading to the av_model

* Return the queue in edge cases (when commands don't process)

* Split select into to and from to enable autocompletion

* Style text output

* Stop printing help after the execution of every command

* Update test scenarios

* Black

* fix: converted top to limit arguments

* fix: refactor disc controller, updated docs

* Delete oanda the old view file that was moved into the oanda menu

* fix: refactor dd_controller and docs

* fix: refactor nft controller and docs

* fix: pass test temporarily, onchain controller refactor, docs

* fix: overview controller refactor, fix quit command

* fix: linting issues

* fix: refacot ta controller

* fix: refactor pred controller

* fix: linting

* fix: crypto controller

* fix: added tests, updated all controlers

* fix: menu print renamed from stocks to crypto controller, added tests

* fix: fix faster function execution

* Implement basic UX improvement of the oanda controller

* Update the forex controller

* Fix annoying pylint C0201 error

* Add latest convention changes to the forex controller

* fix: renamed commands to long format

* fix: added load on dd

* Merge the latest updates of the controller design

* fix: added autocompletion in all commands with argument choices

* fix: linting

* fix: linting

* fix: updated predict controller help to match stocks

* Update the forex menu e2e test scripts

* Add check_non_negative_float helper

* Update the controller with the latest changes to the convention

* Update the currency pair loading mechanism

* Move data models logic to the models file

* Update update oanda views to be interact with the models

* Upgrade oanda controller

* Remove raw stocks ba and eda code from the forex menu

* Update "help wanted" banner for ba and eda in forex menu

* Remove remainders of stocks ba and eda from forex context

* Improve typing, docstrings and error messages

* Remove stocks ba and eda code that was merged from other ux branches

* Add fixes that prevented incorrect argument handling

* Remove -argument from the candles call
If there is an expected agr `-g` and you put an incorrect argument
`-argument` the difflib will interpret `argument` as `g`

Co-authored-by: jose-donato <zmcdonato@gmail.com>
Co-authored-by: Didier Rodrigues Lopes <dro.lopes@campus.fct.unl.pt>

* fix reset for menus that require ticker

* UX improvement on research menu

* skip insider controller test

* initial refactoring of insider_controller

* improve insider controller ux part 2

* finish refactoring ins controller ux menu

* fix bug of when commands in queue have args

* skip test

* comment test stuff

* UX: stocks>qa (#1071)

* refactor return self.queue

* fix return None

* minor fix

* minor tabulate fix

* Get rid of leading '/' in terminal and add some newlines on quits. (#1074)

* Get rid of leading '/' in terminal and add some newlines on quits.

* print crypto help on menu entry

* looks like a format issue here...

* newlines on quit

* remove unnecessary line break

* fix pylint issue

* refactor

* refactor

* allow portfolio optimization to quit context

* add exit at end of scripts

* improve dd_controller

* test ux in stocks/dd menu

* Ux upgrade for reports context (#1075)

* Refactor reports and upgrade them with the latest controller convention

* Add test scenarios for the reports context

* test ux stocks/ta

* ux branch scripts/ta

* improvement on main param

* Upgrades for the UX upgrade for the fa and fa/fmp menus (#1076)

* Change --num to --limit

* Remove inconsistent/unreliable functions from the choices list

* Improve docstring compliance with numpy doc format

* Fix hardcoded class id in dcf scrapper

* Fix annoying pylint error in discordbot that was blocking the hook

* Add test scenarios for the fa and fa/fmp menus

* Fix forgotten replacement of --num to --limit

* Fix tests

* Return some excluded commands to the choices list

* Fix dd report to reflect the updates

* Fix set function not returning the queue

* Update gst test files

* fix exit on ca from another submenu

* fix changes of options/screener

* fix dps controller

* fix fa when running out of AV calls

* Fix TVL plot locking interpreter during defi test

* Add exception handling for broken coingecko scrapper

* skip fa/av test that fails

* fix dps tests

Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
Co-authored-by: jmaslek <jmaslek11@gmail.com>
Co-authored-by: jose-donato <zmcdonato@gmail.com>
Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com>
Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>
Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com>
2021-12-21 15:19:23 +03:00