Commit Graph

60 Commits

Author SHA1 Message Date
LBolte29
0f61f0b08e Log exceptions (#1393)
* log user settings, errors and exceptions
2022-02-26 10:56:10 +01:00
Jeroen Bouma
3c9c2b9223 Complete check on Hugo Documentation (#1358)
* 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

* This is not a function on CA

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* This command does not exist on CA

* 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

* 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

* 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

* 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

* Type in dcf help text

* Missing the index on dividends function

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Missing index

* 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

* Update _index.md

* Fix missing index

* 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 missing index

* 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

* 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

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* doesn't exists

The command 'disp' doesn't exist on the /stocks/options/ menu.

2022 Feb 16, 08:49 (✨) /stocks/options/ $ disp
usage: options {calc,yf,tr,info,pcr,load,exp,vol,voi,oi,hist,chains,grhist,unu,plot,parity,binom,vsurf,greeks,payoff,pricing,screen,cls,home,h,?,help,q,quit,..,exit,r,reset}
options: error: argument cmd: invalid choice: 'disp' (choose from 'calc', 'yf', 'tr', 'info', 'pcr', 'load', 'exp', 'vol', 'voi', 'oi', 'hist', 'chains', 'grhist', 'unu', 'plot', 'parity', 'binom', 'vsurf', 'greeks', 'payoff', 'pricing', 'screen', 'cls', 'home', 'h', '?', 'help', 'q', 'quit', '..', 'exit', 'r', 'reset')

The command 'disp' doesn't exist on the /stocks/options/ menu.

2022 Feb 16, 08:49 (✨) /stocks/options/ $

* 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

* Create _index.md

* Create _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

* 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

* 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 and rename website/content/common/quantitative_analysis/data/_index.md to website/content/common/quantitative_analysis/raw/_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

* 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

* 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

* Black formatting

* Update _index.md

* Update _index.md

* small ba edits

* black formatting code

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* black formatting code + mc axes

* Update _index.md

* Update _index.md

* Update _index.md

* regression

* regression

* Update _index.md

* codespell

* codespell

* flake8 fix

Co-authored-by: Jeroen Bouma <jeroenbouma@MacBook-Pro-van-Jeroen.local>
Co-authored-by: jmaslek <jmaslek11@gmail.com>
2022-02-20 13:40:58 +00:00
LBolte29
fd58219282 adjusted format of logs (#1292)
adjusted format of logs
2022-02-17 12:33:59 +01:00
Theodore Aptekarev
e1b6022b9c Global plot styles (#1228)
* Add default stylesheets

* Add terminal style helper class and global style initialization in cfg

* Style comments and docstrings

* Load rich terminal theme from config file

* Add application chart styles to candle charts

* Add todos

* Remove explicit color setting for some ta charts

* Add user styles folder to gitignore

* Update default stylesheets

* Add matplotlib font manager support

* Add matplotlib font manager support

* Update docstrings and default style

* Update stocks candle chart formatting (return fig to style title)

* Style common ta overlap view

* Make up and down market colors a part of the style helper

* Update stylesheets

* Style common ta volume view

* Style common ta momentum view

* Style common ta trend indicators view

* Style common ta volatility view

* Style common ta volume view

* Style common ta custom indicators view

* Fix styling bugs and remove the obvious time x lablel

* Style charts in the covid menu

* Set legend position to upper left in the mpl stylesheet

* Add mpl_rcparams configs for parameters not covered by stylesheets

* Remove font configuration files

* Update style class utility functions

* Implement passing external axes and style utility usage in ema & stoch

* Add theme watermark and output helpers

* Rename style to theme

* Update helper usage in ta/ma and ta/stoch

* Update style to theme in sample menus

* Style forex (#1305)

* Make tight layout optional 'cause mplfinance doesn't support it

* Apply global style to the forex menu

* Update code layout in oanda view and black

* Style common TA (#1315)

* Make tight layout optional 'cause mplfinance doesn't support it

* Apply global style to the forex menu

* Add linewidth to theme for use in mpf's addplots

* Add vwap to the stocks notebook api

* Update common/ta overlap to follow charting style

* Apply style on TerminalStyle init

* Enable infrastructure for excluding non-trading days from plots

* Update notebook api to include there and resolve bandit warning

* Update ta/common/overlap to exclude non-trading days

* Enable external ax, style and non-trading days in common/ta/momentum

* Enable external ax, style and non-trading days in common/ta/trend

* Update vwap to the argument naming convention

* Enable external ax, style and non-trading days in common/ta/volatility

* Enable external ax, style and non-trading days in common/ta/volume

* Enable external ax, style and non-trading days in common/ta/custom

* Fix controller tests

* Forgot to disable rewriting of the cassettes ...

* Fix controller errors that came up because a merge conflict

* Fix price label position on fib

* Fix line having wrong x values in fib

Co-authored-by: Colin Delahunty <72827203+colin99d@users.noreply.github.com>

* Style economy (#1308)

* Began converting

* Added alphavan_view

* Added CNN View

* Updated nasdaq view, fixed glitch

* Added fred

* Refactored URL

* Theo's requested changes

* Updated docstrings

* Updated tests

* Fixed pylint

* Fixed tests

* Theo changes

* Econ Fix

* Refactor chart style for Crypto context (#1306)

* Remove mock for gff

* Mock visualize_output helper function

* Refactor

* Fix plot helper

* Update legend loc

* Refactor mplfinance candle plot

* Fix errors in the helper function

* Fix binbook having the wrong call_ function name

* Remove hardcoded style params

* Resolve kwargs future warning from pandas

* Remove warnings import

Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>

* funds + custom (#1311)

* funds + custom

* cleanup cleanup everybody everywhere

* Fix external axes conditional and a typo

Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>

* Add external axes mode to covid charts (#1328)

* Add portfolio menu plots (#1318)

* Portfolio view plots (commenting out report stuff)

* PA Menu broken.  Commenting out and fix tests

* portfolio optimization

* comment out commented api line

* Add notes on disabling the pa submenu

Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>

* Plot updates in common BA (#1335)

* Add external axes support to common/ba/finbrain

* Add external axes support to common/ba/twitter

* Add external axes support to common/ba/google

* Add external axes support to common/ba/sentimentinvestor

* Add sentimentinvestor to the notebooks API

* Fix tests

* Etf refactor (#1323)

* Refactored no ETF

* Fixed gtff import

* Fixed tests

* Fix pie chart style

* Refactored etf/candle

* Added pylint fix

* Fixed tests

* Update candle chart layout

* Update etf controller test

* Remove strange binary file

Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>

* Expose ETF candle function in the notebooks API

* Common BA and Common QA charts update (#1342)

* Add external axes support to common/ba/finbrain

* Add external axes support to common/ba/twitter

* Add external axes support to common/ba/google

* Add external axes support to common/ba/sentimentinvestor

* Add sentimentinvestor to the notebooks API

* Fix tests

* Update stylesheet files

* Refactor charts for common/qa

* Update the forgotten line plot

* Update tests

* Add missing arg to a docstring

* Remove scientific notation

* Black imports

Co-authored-by: Minh Hoang <nminh.hoang1023@gmail.com>

* Options refactor (#1324)

* Fixed alphaquery_view

* finished options

* Fixed pylint

* Fixed tests

* Fixed tests

* Fixed tests

* update yfinance

* Tradier + Chartexchange

* change mocks from gtff to theme.visualize output

* tests

Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>
Co-authored-by: james <jmaslek11@gmail.com>

* Refactor Stocks menu (#1325)

* Fix backtesting menu

* Refactor comparison analysis

* Refactor Dark pool shorts

* Refactor rest of menu

* Fix test

* Fix tests failing

* Fix tests fail

* Fix test failing

* Remove record mode=none to record new output

* Rewrite test output

* Rewrite test outputs

* Adding more rewritten test output

* Mock plt.show

* Mock missing plt.show

* Missing @pytest.mark.vcr

* Updating tests : common/behavioural_analysis/finbrain

* Improve notebooks API coverage for CA and DPS

* Silence annoying flake8 warning

Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>

* Charts update for common/pred (#1344)

* Add external axes support to common/ba/finbrain

* Add external axes support to common/ba/twitter

* Add external axes support to common/ba/google

* Add external axes support to common/ba/sentimentinvestor

* Add sentimentinvestor to the notebooks API

* Fix tests

* Update stylesheet files

* Refactor charts for common/qa

* Update the forgotten line plot

* Update tests

* Add missing arg to a docstring

* Style pred helper and controllers

* Update ETS plot

* Update plots in KNN and pred helper

* Update plot and pretty table for arima

* Update plot for common/pred/regression

* Refactor mc_view

* Fix linting

* Fix mypy

* Move plot title to the axis level to make more vertical space

Co-authored-by: Minh Hoang <nminh.hoang1023@gmail.com>
Co-authored-by: jmaslek <jmaslek11@gmail.com>

* linter

* Update common/ba test data

* Change etf candle to match stock candle

* try updating sia test

Co-authored-by: Colin Delahunty <72827203+colin99d@users.noreply.github.com>
Co-authored-by: jmaslek <jmaslek11@gmail.com>
Co-authored-by: minhhoang1023 <40023817+minhhoang1023@users.noreply.github.com>
Co-authored-by: Minh Hoang <nminh.hoang1023@gmail.com>
Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
2022-02-11 20:33:16 -05:00
jmaslek
41df272c76 bugs (#1347) 2022-02-10 20:30:06 -05: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
6ca1473f80 Fixed overview table (#1329) 2022-02-07 20:53:20 -05: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
94eedfc55e Added show_index (#1298) 2022-02-01 16:45:10 -05:00
LBolte29
6426b76771 decorated functions (#1282)
* decorated functions and removed assertion tests that are now caught by decorator logs
* modified functions with @property
* fixed bc of coingecko
* fixed outedated tests
2022-01-31 20:37:16 +01:00
didierlopes.eth
ee35be07d4 some fixes (#1285)
* some fixes

* update test

* fix stocks tests controller

* update black
2022-01-29 22:29:01 +00:00
Colin Delahunty
92d6276c21 Remove Tabulate 2 (#1259)
* Removed tabulate

* Removed way more tab

* Fixed tests

* Reverted test

* Fixed pylint

* Fixed tests

* Fixed Mypy Issue

Co-authored-by: didierlopes.eth <dro.lopes@campus.fct.unl.pt>
2022-01-25 19:03:46 -05:00
didierlopes.eth
d8ca7556ed ETF tests (#1208)
* etf tests for stockanalysis

* add financedatabase etf tests

* fix financedatabase etf documentation

* yfinance etf tests

* add etf/discovery tests

* add tests to etf/screener

* add etf controller tests

* add etf/ta tests

* remove tabulate and use rich table

* etf/pred

* add more etf tests, thanks Chavi

* update about us website

* Updating tests : etf

Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
2022-01-20 22:51:19 +00:00
Colin Delahunty
3b73898f1a Refactored Call Resources (#1217) 2022-01-19 23:04:23 +00:00
Colin Delahunty
277f45704a Expanded GST API (#1215)
* Added custom

* Added economy API

* Added ETF API

* Fixed pylint

* Theo change
2022-01-20 01:08:33 +03:00
didierlopes.eth
c568747ab4 Several fixes (#1143) 2022-01-18 01:29:49 +00:00
didierlopes.eth
0f2e0d60ff Add resources to main contexts (#1194)
* remove all unnecessary READMEs

* add resources to mains contexts

* add resources to main cmds

* fix bare-url

* mini fix

* test for surface
2022-01-17 01:14:26 +00:00
Colin Delahunty
9e671aeba9 Remember Contexts (#1187)
* Refacotred classes

* Handling for new instance desired

* Added feature flag

* Converted all menu calls
2022-01-16 16:57:23 -05:00
Colin Delahunty
82747072c5 Terminal Wide Rich (#1161)
* My idea for how we handle Rich moving forward

* remove independent consoles

* FIxed pylint issues

* add a few vars

* Switched print to console

* More transitions

* Changed more prints

* Replaced all prints

* Fixing tabulate

* Finished replace tabulate

* Finished removing rich from Tabulate

* add Panel around menu

* add GST watermark under feature flag

* Fixed 46 tests

* Delete test_screener[False].yaml

* Delete test_screener[True].yaml

* Fixed the rest of the tests

* add help and source color vars and use rgb

* rich on stocks/options

* update rich on disc, dps, sia

* rich in gov, ins and scr menus

* ba and ca menus with rich

* Fixed import issue

* Fixed some tests

* removed termcolor

* Removed prettytable

* add rich to remaining stocks menus

* FIxed linting issue

* Added James' changes

* Updated dependencies

* Add rich to cryptocurrency menu

* refactor economy and forex

* refactor etf with rich

* refactor mfunds

* refactor rich rest

* not specify style so default color works well on any background

* Fixing mypy issues

* Updated tests

* More test fixes

* James' test fixes

* Updating tests : stocks/screener - fix cassettes using BR

* Updating tests : crypto

* Updating tests : disable DEBUG_MODE

* Updating tests : stocks/fa/yfinance

* minor fixes that escape

* Improve the rich table function (that replaces tabulate :D )

* Fixed bad code

* delete rogue file + dcf fix + NoConsole

* sia mypy

* fuck you linter

* fuck you linter pt 2

* skip hehe

* i hate the black linter

* ubuntu mypy attempt

* Update : rich_config + gtff

* Updating tests : conftest

* Updating tests : stocks

* Update : rich_config

* Updating : rich_config

* make panel configurable for Theodore :b

* colors update

* Merged

* Updating : rich_config + feature_flags

* Updating : rich_config

* Updating tests : stocks

* Updating : feature_flags

Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt>
Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
Co-authored-by: james <jmaslek11@gmail.com>
Co-authored-by: jose-donato <zmcdonato@gmail.com>
2022-01-15 02:06:00 +00:00
jmaslek
4017253340 Refactor common/ta for easier report usage (#1148)
* Refactor common/ta for easier report usage

* overlap

* fix etf ta overlap

* momentum fns

* trend indicators

* volatility

* volume

* cci

* macd and rsi

* fisher and stoch

* All momentum done with discord fixes

* All of the moving averages

* uncommit oops

* All discord functions work now

* fix le tests

* fix le  (other) tests
2022-01-10 17:30:11 -05:00
Colin Delahunty
006b3570b7 Baseclass (#1141)
* A working decorator

* Basic intro

* Added more

* Refactor

* Refactor

* Cleaned code

* Simplified function (thanks Chavi)

* Small change

* Updating tests : fix issue with mock

* Updating tests : fix remaining mocks after merging

* Updating tests : black

* Cleaned up

* Finished base cases

* Notes

* Slight changes

* Added dynamic options handling, error persists

* Fixed pylint issues

* Fixed mock

* fix decorator with dynamic dictionary of args

* move choices from dynamic to const in crypto/ov

* Updated var names

* Check

* Moved decorators

* Fixed import issues

* Fixed tests, update payoff controller

* Fixed tests

* Fixed pylint

* Updated files

* Added base class

* Added reset

* Improved base class

* For James

* More menues converted

* Added contexts

* 24 controllers left

* 18 Controllers left

* Changes choices

* 9 controllers left

* Added all controllers

* Fixed glitch

* Replaced all improper callings of class

* Removed menu decorator

* refactored try_except

* Last commit

* Black fix

* Bug fix

* Added James' new menus

* Fixed tests

* Fixed 8 tests

* Fixing mypy issue

* Updating tests : stocks/options

* Fixed options

* Fixed tests

* Updating tests : stocks/options

* Fixed tests

* More test fixes

* Updating tests : stocks/ba

* Fixed options test

* More bug fixes

* Fixed tests

* fixed pylint

* Skipped test_call_load

* Add typings to base class

* Fix issue with appending auto completer options + bugfixes

* Add typings to base class

* Terminal throws error for bad path

* sexy solution to auto completer in runtime

* more sexy reset with reset_level stored

* no so sexy jump between indirect menus

* Removing choices argument

* refactor custom_reset

* Fixed tests

* Theo fixes

* Added back function

* Fixed tests

Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt>
2022-01-08 19:30:03 +00:00
jose-donato
efab61a281 Crypto Tool: Calculate potential returns (#1146)
* enabled some crypto commands in dd to be called independent of source loaded

* support for coin_map_df in all dd functions + load ta and plot chart refactor

* updated tests and removed coingecko scrapping where possible

* removed ref of command from hugo

* updated pycoingecko version

* refactoring load

* refactored load to fetch prices; pred can run independent of source now

* load by default usd on cp/cg and usdt on cb/bin

* updated to rich for formatting and updated dependencies

* fixed changes requested

* created prt controller

* creating model

* removed unused print

* restaged

* adds current market cap

* added reports to gitignore
2022-01-07 09:53:54 -05:00
David Khouya
abf79a5249 Handle KeyboardInterrupt on user input read (#1124)
Co-authored-by: David Khouya <david.khouya@leddartech.com>
2022-01-02 22:03:36 +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
Chavithra
73624dcc18 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
2021-12-16 14:03:40 +01:00
jmaslek
819a49196a Update etf endpoint for stockanalysis.com (#1013) 2021-12-04 01:05:51 +00:00
jmaslek
0d49294f1a Add difflib to controllers (#982)
* First few

* Rest of stock controllers

* Other context controllers

Co-authored-by: James Maslek <james@macbook-pro.myfiosgateway.com>
2021-11-25 20:47:10 +03:00
DidierRLopes
146a58f5c1 Fix etf/fds function (#962)
* Fix etf/fds function

* improv from user comment

* fix lint
2021-11-19 19:11:08 +03:00
Colin Delahunty
6994273aad Fraud error (#944)
* Updated try except

* Added patch for fraud

* Updated tests

* Fix

* Attempting to resolve test issue

* Fixed again

Co-authored-by: Colin Delahunty <colindelahunty@Colins-Air.indiana.edu>
2021-11-15 15:12:15 -05:00
DidierRLopes
93379e7d6b Use get_user_agent for all requests (#914) 2021-11-04 21:17:20 -04:00
DidierRLopes
255968cce0 Refactor remaining READMEs (#912)
* Refactor remaining READMEs

* markdown lint
2021-11-04 17:32:57 +00:00
DidierRLopes
485367956e Refactor code and terminal menus (#911)
* Improve ta README

* Refactor terminal menus
2021-11-04 13:56:58 +00:00
Artem Veremey
f608cdb88d Update bandit settings and add a wrapper for os clear (#905)
* Add bandit to dev requirements

* Adding bandit exceptions

* Wrap system clear os call

* Apply black
2021-11-03 11:05:14 -07:00
Artem Veremey
30425557a0 Another batch of markdownlint updates (#901)
* Another batch of markdownlint updates

* Update additional markdowns in gamestonk_terminal/
2021-11-02 09:01:42 -07:00
Jeroen Bouma
9e5b86086e Add the Finance Database to ETFs and Stocks section (#869)
* Add the Finance Database to the ETF menu

* Add the Finance Database to the stocks/discovery menu

* Update website with Finance Database info

* Update website sections of the Finance Database

* Update Finance Database functions to match layout of controller modules

* Merge website links

* Add missing thepassiveinvestor dependency

* Fix website bug

* Name change

* Update website with include exchanges parameter

* Add include_exchanges, make searching less case sensitive, change market cap to millions and minor improvements

* Change help message a bit
2021-10-29 16:57:24 +01:00
Colin Delahunty
a168034832 Replaced applicable try/except blocks (#870)
* First rework

* Continued rework

* Continued rework

* Continued rework

* Continued rework

* Continued rework

* Fixed black

Co-authored-by: Colin Delahunty <colindelahunty@Colins-MacBook-Air.local>
Co-authored-by: Colin Delahunty <colindelahunty@Colins-Air.indiana.edu>
2021-10-28 00:03:23 +01:00
Jeroen Bouma
3401f157e5 Add ETF Report functionality from The Passive Investor (#857)
* Add ETF report functionalty from The Passive Investor

* Add documentation about ETF Report

* Add thepassiveinvestor to the requirements

* Correct accidental typo

* Rename report to pir

* Change report to pir and some minor changes

* Update thepassiveinvestor to 1.0.9
2021-10-25 22:35:54 +01:00
DidierRLopes
874736832c Allow reset everywhere and to execute terminal in context directly (#841)
* Allow reset everywhere and to execute terminal in context directly

* minor comment fix
2021-10-22 03:25:19 +01:00
DidierRLopes
595a94faf6 Updated Hugo Server (#752)
* Push some changes towards updated Hugo Server

* More hugo server refactoring

* Update Hugo Server website with stock context and economy context

* Small bugs fixes

* Add ETF, options and PO to Hugo Server

* More bugfixes

* Add crypto hugo server

* Improve docs

* merge bugs fixed
2021-09-16 18:43:42 +01:00
jmaslek
0263f41cbe Sort imports using isort (#674) 2021-08-16 07:59:52 -04:00
jmaslek
52a73fdd53 Options refactor (#658) 2021-08-13 13:52:23 -04:00
jmaslek
113db94184 Etf bug headers (#662)
* Ignore nft of the day test

* Add user agent to etf requests
2021-08-12 11:32:56 -04:00
jmaslek
dddc912c2d Fix ETF Menu + Refactor to new standard (#648) 2021-08-09 19:32:31 -04:00
colin99d
4d2239d386 Refactored Tests (#640)
* Added basic openpyxl

* Add screener checks to confirm that preset is correct (#580)

* refactor screener finviz_view to view and model

* Add checks for defined screener preset

* Feature/fraud indicators (#581)

* Fixed glitch reading AlphaVantage API key

* Bug fix

* Added mscore metric

* Refactored code, added error handling

* Updated reademe.md

* Figuring out pre-commit

* Figuring out pre-commit

* Improved formating and code

* Added Zscore

* Formatted code

Co-authored-by: Colin Delahunty <colindelahunty@Colins-Air.attlocal.net>

* Reformated tests and started writing FA

* Removed excel analytics

* Figured out testing with input and print

* Figured out testing with input and print

* Added av_view tests

* Added av_view tests

* Added main_helper tests

* Fixed Poetry

* Added main helper tests

* Expanded pycoingecko_view

* Fixed ETF model

* Added coinpaprika view tests

* Added optimizer view tests

* Updated tests

Co-authored-by: Colin Delahunty <colindelahunty@Colins-Air.attlocal.net>
Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt>
Co-authored-by: Colin Delahunty <colindelahunty@Colins-MacBook-Air.local>
2021-08-07 00:34:25 +01:00
DidierRLopes
c2197a7375 Big Code Refactoring with contexts vs category division (#644)
* big-refactoring

* add terminal_helper

* fix tests

* remove init modules

Co-authored-by: jmaslek <jmaslek11@gmail.com>
2021-08-06 12:50:29 -04:00
DidierRLopes
4261f5d113 Tidy code (#555)
* clean main helper funcs

* clean main helper funcs

* Refactor bt_view code

* refactor finbrain docs

* refactor googleview.py

* refactor brokers

* refactor finviz_view

* refactor reddit_view

* refactor stocktwits_view

* refactor twitter_view

* refactor ca_controller

* refactor finbrain_view

* refactor finviz_compare_view

* refactor market watch view

* refactor yf view

* refactor crypto view

* refactor binance model

* finra_view refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* refactor

* fixe ba func

* fix view docstring
2021-07-18 21:52:14 +01:00
jmaslek
1092cefa82 Add market overview - type data form WSJ (#548)
* Add wsj scraping functions.  Add top movers from wsj to etf menu

* Add wsj functions to econ menu (seems like a rational place)

* update readme files

* etf readme

* Refactor for bossman :)

* OS path cleanup

* revert changes

* poetry lock still had charset 2.0.3
2021-07-16 14:40:39 -04:00
jmaslek
72f8de3623 Etf screener (#539)
* Add an etf screener option

* Update readme files

* pylint error

* try another approach for pylint error/ default all config to None

* change pylint disable  location

* chop long df results and fill nans with ""
2021-07-11 15:31:54 -04:00