summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDanglewood <85772166+deeleeramone@users.noreply.github.com>2023-06-06 11:40:52 -0700
committerGitHub <noreply@github.com>2023-06-06 18:40:52 +0000
commita311ce4686f78fff8b3f971512d8db97a2c19686 (patch)
treeab0e0ea4438249161de1cb82ed3a3b437d66ac1f
parente040e9e6c4e52d8f84c94dd7d2bd59d8906adfcd (diff)
hotfix/deprecate-options-screener: Sunsets deprecated Options screener (#5111)
* Sunsets deprecated Options screener * mypy * docstring fix * one more docstrings fix * missed i18n.yaml artifacts * pylint * fix test
-rw-r--r--openbb_terminal/core/sdk/controllers/stocks_sdk_controller.py7
-rw-r--r--openbb_terminal/core/sdk/models/econometrics_sdk_model.py2
-rw-r--r--openbb_terminal/core/sdk/models/stocks_sdk_model.py13
-rw-r--r--openbb_terminal/core/sdk/sdk_init.py5
-rw-r--r--openbb_terminal/core/sdk/trail_map.csv8
-rw-r--r--openbb_terminal/miscellaneous/i18n/en.yml7
-rw-r--r--openbb_terminal/miscellaneous/integration_tests_scripts/stocks/test_options.openbb6
-rw-r--r--openbb_terminal/miscellaneous/integration_tests_scripts/stocks/test_options_screen_ca.openbb10
-rw-r--r--openbb_terminal/miscellaneous/sources/openbb_default.json10
-rw-r--r--openbb_terminal/miscellaneous/stocks/options/README.md55
-rw-r--r--openbb_terminal/miscellaneous/stocks/options/high_iv.ini183
-rw-r--r--openbb_terminal/miscellaneous/stocks/options/iv_below_20day.ini183
-rw-r--r--openbb_terminal/miscellaneous/stocks/options/liquid_otm.ini176
-rw-r--r--openbb_terminal/miscellaneous/stocks/options/spy_30_delta.ini183
-rw-r--r--openbb_terminal/miscellaneous/stocks/options/template.ini179
-rw-r--r--openbb_terminal/sdk.py2
-rw-r--r--openbb_terminal/stocks/options/intrinio_model.py6
-rw-r--r--openbb_terminal/stocks/options/intrinio_view.py17
-rw-r--r--openbb_terminal/stocks/options/options_controller.py81
-rw-r--r--openbb_terminal/stocks/options/screen/__init__.py0
-rw-r--r--openbb_terminal/stocks/options/screen/screener_controller.py172
-rw-r--r--openbb_terminal/stocks/options/screen/syncretism_model.py361
-rw-r--r--openbb_terminal/stocks/options/screen/syncretism_view.py217
-rw-r--r--tests/openbb_terminal/stocks/options/cassettes/test_syncretism_model/test_get_historical_greeks[False].yaml333
-rw-r--r--tests/openbb_terminal/stocks/options/cassettes/test_syncretism_model/test_get_historical_greeks[True].yaml338
-rw-r--r--tests/openbb_terminal/stocks/options/cassettes/test_syncretism_model/test_get_screener_output.yaml543
-rw-r--r--tests/openbb_terminal/stocks/options/cassettes/test_syncretism_view/test_view_historical_greeks.yaml120
-rw-r--r--tests/openbb_terminal/stocks/options/cassettes/test_syncretism_view/test_view_screener_output.yaml385
-rw-r--r--tests/openbb_terminal/stocks/options/csv/test_syncretism_model/test_get_historical_greeks.csv58
-rw-r--r--tests/openbb_terminal/stocks/options/csv/test_syncretism_model/test_get_historical_greeks[False].csv61
-rw-r--r--tests/openbb_terminal/stocks/options/csv/test_syncretism_model/test_get_historical_greeks[True].csv61
-rw-r--r--tests/openbb_terminal/stocks/options/csv/test_syncretism_model/test_get_screener_output.csv101
-rw-r--r--tests/openbb_terminal/stocks/options/csv/test_syncretism_model/test_get_screener_output_30_delta_spy.csv1
-rw-r--r--tests/openbb_terminal/stocks/options/ini/high_iv.ini183
-rw-r--r--tests/openbb_terminal/stocks/options/ini/spy_30_delta.ini183
-rw-r--r--tests/openbb_terminal/stocks/options/test_options_controller.py5
-rw-r--r--tests/openbb_terminal/stocks/options/test_screener_controller.py290
-rw-r--r--tests/openbb_terminal/stocks/options/test_syncretism_model.py99
-rw-r--r--tests/openbb_terminal/stocks/options/test_syncretism_view.py85
-rw-r--r--tests/openbb_terminal/stocks/options/txt/test_options_controller/test_print_help.txt4
-rw-r--r--tests/openbb_terminal/stocks/options/txt/test_screener_controller/test_print_help.txt11
-rw-r--r--tests/openbb_terminal/stocks/options/txt/test_syncretism_view/test_view_available_presets[high_IV.ini].txt12
-rw-r--r--tests/openbb_terminal/stocks/options/txt/test_syncretism_view/test_view_available_presets[spy_30_delta.ini].txt13
-rw-r--r--tests/openbb_terminal/stocks/options/txt/test_syncretism_view/test_view_available_presets[template.ini].txt5
-rw-r--r--tests/openbb_terminal/stocks/options/txt/test_syncretism_view/test_view_screener_output.txt2
-rw-r--r--tests/openbb_terminal/stocks/options/txt/test_syncretism_view/test_view_screener_output[False].txt6
-rw-r--r--tests/openbb_terminal/stocks/options/txt/test_syncretism_view/test_view_screener_output[True].txt6
-rw-r--r--tests/openbb_terminal/stocks/options/txt/test_syncretism_view/test_view_screener_output_error.txt2
48 files changed, 60 insertions, 4730 deletions
diff --git a/openbb_terminal/core/sdk/controllers/stocks_sdk_controller.py b/openbb_terminal/core/sdk/controllers/stocks_sdk_controller.py
index ca9df548983..97abe17d836 100644
--- a/openbb_terminal/core/sdk/controllers/stocks_sdk_controller.py
+++ b/openbb_terminal/core/sdk/controllers/stocks_sdk_controller.py
@@ -256,9 +256,6 @@ class StocksController(model.StocksRoot):
def options(self):
"""Stocks Options Submodule
- Submodules:
- `screen`: Screen Module
-
Attributes:
`chains`: Get Option Chain For A Stock. No greek data is returned\n
`dte`: Returns a new column containing the DTE as an integer, including 0.\n
@@ -266,8 +263,8 @@ class StocksController(model.StocksRoot):
`expirations`: Get Option Chain Expirations\n
`generate_data`: Gets x values, and y values before and after premiums\n
`greeks`: Gets the greeks for a given option\n
- `grhist`: Get histoical option greeks\n
- `grhist_chart`: Plots historical greeks for a given option. [Source: Syncretism]\n
+ `grhist`: Get historical EOD option prices, with Greeks, for a given OCC chain label.\n
+ `grhist_chart`: Plots historical greeks for a given option.\n
`hist`: Get historical option pricing.\n
`info`: Scrape barchart for options info\n
`info_chart`: Scrapes Barchart.com for the options information\n
diff --git a/openbb_terminal/core/sdk/models/econometrics_sdk_model.py b/openbb_terminal/core/sdk/models/econometrics_sdk_model.py
index 018d5de9fcf..7cbb8ecfeb8 100644
--- a/openbb_terminal/core/sdk/models/econometrics_sdk_model.py
+++ b/openbb_terminal/core/sdk/models/econometrics_sdk_model.py
@@ -39,7 +39,7 @@ class EconometricsRoot(Category):
`re`: The random effects model is virtually identical to the pooled OLS model except that is accounts for the\n
`root`: Calculate test statistics for unit roots\n
`root_chart`: Determine the normality of a timeseries.\n
- `vif`: Determine the vif, which tests for collinearity.\n
+ `vif`: Calculates VIF (variance inflation factor), which tests collinearity.\n
"""
_location_path = "econometrics"
diff --git a/openbb_terminal/core/sdk/models/stocks_sdk_model.py b/openbb_terminal/core/sdk/models/stocks_sdk_model.py
index 0ae58032c5f..f09f99742ba 100644
--- a/openbb_terminal/core/sdk/models/stocks_sdk_model.py
+++ b/openbb_terminal/core/sdk/models/stocks_sdk_model.py
@@ -446,9 +446,6 @@ class StocksInsiders(Category):
class StocksOptions(Category):
"""Options Module.
- Submodules:
- `screen`: Screen Module
-
Attributes:
`chains`: Get Option Chain For A Stock. No greek data is returned\n
`dte`: Returns a new column containing the DTE as an integer, including 0.\n
@@ -456,8 +453,8 @@ class StocksOptions(Category):
`expirations`: Get Option Chain Expirations\n
`generate_data`: Gets x values, and y values before and after premiums\n
`greeks`: Gets the greeks for a given option\n
- `grhist`: Get histoical option greeks\n
- `grhist_chart`: Plots historical greeks for a given option. [Source: Syncretism]\n
+ `grhist`: Get historical EOD option prices, with Greeks, for a given OCC chain label.\n
+ `grhist_chart`: Plots historical greeks for a given option.\n
`hist`: Get historical option pricing.\n
`info`: Scrape barchart for options info\n
`info_chart`: Scrapes Barchart.com for the options information\n
@@ -484,10 +481,8 @@ class StocksOptions(Category):
self.expirations = lib.stocks_options_sdk_helper.get_option_expirations
self.generate_data = lib.stocks_options_yfinance_model.generate_data
self.greeks = lib.stocks_options_sdk_helper.get_greeks
- self.grhist = lib.stocks_options_screen_syncretism_model.get_historical_greeks
- self.grhist_chart = (
- lib.stocks_options_screen_syncretism_view.view_historical_greeks
- )
+ self.grhist = lib.stocks_options_intrinio_model.get_historical_options
+ self.grhist_chart = lib.stocks_options_intrinio_view.view_historical_greeks
self.hist = lib.stocks_options_sdk_helper.hist
self.info = lib.stocks_options_barchart_model.get_options_info
self.info_chart = lib.stocks_options_barchart_view.print_options_data
diff --git a/openbb_terminal/core/sdk/sdk_init.py b/openbb_terminal/core/sdk/sdk_init.py
index 7cd7dd71b2d..b2e7c512165 100644
--- a/openbb_terminal/core/sdk/sdk_init.py
+++ b/openbb_terminal/core/sdk/sdk_init.py
@@ -481,11 +481,6 @@ from openbb_terminal.stocks.options import (
yfinance_view as stocks_options_yfinance_view,
)
-from openbb_terminal.stocks.options.screen import (
- syncretism_model as stocks_options_screen_syncretism_model,
- syncretism_view as stocks_options_screen_syncretism_view,
-)
-
# Stocks - Screener
diff --git a/openbb_terminal/core/sdk/trail_map.csv b/openbb_terminal/core/sdk/trail_map.csv
index e339b496bbf..2cca3686912 100644
--- a/openbb_terminal/core/sdk/trail_map.csv
+++ b/openbb_terminal/core/sdk/trail_map.csv
@@ -173,6 +173,7 @@ econometrics.comparison,econometrics_regression_model.get_comparison,
econometrics.dwat,econometrics_regression_model.get_dwat,econometrics_regression_view.display_dwat
econometrics.fdols,econometrics_regression_model.get_fdols,
econometrics.fe,econometrics_regression_model.get_fe,
+econometrics.garch,econometrics_model.get_garch,econometrics_view.display_garch
econometrics.get_regression_data,econometrics_regression_model.get_regression_data,
econometrics.granger,econometrics_model.get_granger_causality,econometrics_view.display_granger
econometrics.load,common_model.load,
@@ -184,7 +185,6 @@ econometrics.pols,econometrics_regression_model.get_pols,
econometrics.re,econometrics_regression_model.get_re,
econometrics.root,econometrics_model.get_root,econometrics_view.display_root
econometrics.vif,econometrics_model.get_vif,
-econometrics.garch,econometrics_model.get_garch,econometrics_view.display_garch
economy.available_indices,economy_yfinance_model.get_available_indices,
economy.balance,economy_oecd_model.get_balance,economy_oecd_view.plot_balance
economy.bigmac,economy_nasdaq_model.get_big_mac_indices,economy_nasdaq_view.display_big_mac_index
@@ -286,6 +286,7 @@ futures.search,futures_yfinance_model.get_search_futures,
keys.av,keys_model.set_av_key,
keys.binance,keys_model.set_binance_key,
keys.bitquery,keys_model.set_bitquery_key,
+keys.biztoc,keys_model.set_biztoc_key,
keys.cmc,keys_model.set_cmc_key,
keys.coinbase,keys_model.set_coinbase_key,
keys.coinglass,keys_model.set_coinglass_key,
@@ -303,7 +304,6 @@ keys.glassnode,keys_model.set_glassnode_key,
keys.messari,keys_model.set_messari_key,
keys.mykeys,keys_model.get_keys,
keys.news,keys_model.set_news_key,
-keys.biztoc,keys_model.set_biztoc_key,
keys.oanda,keys_model.set_oanda_key,
keys.polygon,keys_model.set_polygon_key,
keys.quandl,keys_model.set_quandl_key,
@@ -515,15 +515,13 @@ stocks.options.eodchain,stocks_options_intrinio_model.get_full_chain_eod,
stocks.options.expirations,stocks_options_sdk_helper.get_option_expirations,
stocks.options.generate_data,stocks_options_yfinance_model.generate_data,
stocks.options.greeks,stocks_options_sdk_helper.get_greeks,
-stocks.options.grhist,stocks_options_screen_syncretism_model.get_historical_greeks,stocks_options_screen_syncretism_view.view_historical_greeks
+stocks.options.grhist,stocks_options_intrinio_model.get_historical_options,stocks_options_intrinio_view.view_historical_greeks
stocks.options.hist,stocks_options_sdk_helper.hist,
stocks.options.info,stocks_options_barchart_model.get_options_info,stocks_options_barchart_view.print_options_data
stocks.options.last_price,stocks_options_tradier_model.get_last_price,
stocks.options.oi,stocks_options_view.plot_oi,
stocks.options.pcr,stocks_options_alphaquery_model.get_put_call_ratio,stocks_options_alphaquery_view.display_put_call_ratio
stocks.options.price,stocks_options_sdk_helper.get_option_current_price,
-stocks.options.screen.check_presets,stocks_options_screen_syncretism_model.check_presets,
-stocks.options.screen.screener_output,stocks_options_screen_syncretism_model.get_screener_output,stocks_options_screen_syncretism_view.view_screener_output
stocks.options.unu,stocks_options_fdscanner_model.unusual_options,stocks_options_fdscanner_view.display_options
stocks.options.voi,stocks_options_view.plot_voi,
stocks.options.vol,stocks_options_view.plot_vol,
diff --git a/openbb_terminal/miscellaneous/i18n/en.yml b/openbb_terminal/miscellaneous/i18n/en.yml
index 04be224f771..9f1dab93733 100644
--- a/openbb_terminal/miscellaneous/i18n/en.yml
+++ b/openbb_terminal/miscellaneous/i18n/en.yml
@@ -146,7 +146,6 @@ en:
stocks/forecast: forecast techniques rnn, nbeats, transformer, block rnn
stocks/options/unu: show unusual options activity
stocks/options/calc: basic call/put PnL calculator
- stocks/options/screen: screens tickers based on preset
stocks/options/load: load new ticker
stocks/options/exp: see and set expiration dates
stocks/options/_ticker: Ticker
@@ -165,12 +164,6 @@ en:
stocks/options/eodchain: gets option chain at a specific date
stocks/options/pricing: shows options pricing and risk neutral valuation
stocks/options/hedge: shows portfolio weights in order to neutralise delta
- stocks/options/screen/view: view available presets (or one in particular)
- stocks/options/screen/set: set one of the available presets
- stocks/options/screen/_preset: Preset
- stocks/options/screen/scr: screen data from this preset
- stocks/options/screen/_screened_tickers: Last screened tickers
- stocks/options/screen/ca: take these to comparison analysis menu
stocks/options/hedge/_ticker: Ticker
stocks/options/hedge/_expiry: Expiry
stocks/options/hedge/pick: pick the underlying asset position
diff --git a/openbb_terminal/miscellaneous/integration_tests_scripts/stocks/test_options.openbb b/openbb_terminal/miscellaneous/integration_tests_scripts/stocks/test_options.openbb
index fb6a9ccd8e6..be866ac4fa3 100644
--- a/openbb_terminal/miscellaneous/integration_tests_scripts/stocks/test_options.openbb
+++ b/openbb_terminal/miscellaneous/integration_tests_scripts/stocks/test_options.openbb
@@ -1,11 +1,5 @@
stocks
options
-screen
-view
-view --preset high_IV.ini
-set --preset high_IV.ini
-scr
-q
unu -l 2 -s Strike -r -c
unu -l 2 -s Vol
calc
diff --git a/openbb_terminal/miscellaneous/integration_tests_scripts/stocks/test_options_screen_ca.openbb b/openbb_terminal/miscellaneous/integration_tests_scripts/stocks/test_options_screen_ca.openbb
deleted file mode 100644
index 1414b04fb1e..00000000000
--- a/openbb_terminal/miscellaneous/integration_tests_scripts/stocks/test_options_screen_ca.openbb
+++ /dev/null
@@ -1,10 +0,0 @@
-stocks
-options
-screen
-view
-view high_IV.ini
-set high_IV.ini
-scr
-ca
-historical
-exit
diff --git a/openbb_terminal/miscellaneous/sources/openbb_default.json b/openbb_terminal/miscellaneous/sources/openbb_default.json
index 04dc5b14551..a595239aacb 100644
--- a/openbb_terminal/miscellaneous/sources/openbb_default.json
+++ b/openbb_terminal/miscellaneous/sources/openbb_default.json
@@ -51,15 +51,6 @@
"FDScanner"
],
"calc": [],
- "screen": {
- "view": [
- "Syncretism"
- ],
- "set": [],
- "scr": [
- "Syncretism"
- ]
- },
"load": [
"YahooFinance",
"Tradier",
@@ -81,7 +72,6 @@
"YahooFinance"
],
"grhist": [
- "Syncretism",
"Intrinio"
],
"plot": [
diff --git a/openbb_terminal/miscellaneous/stocks/options/README.md b/openbb_terminal/miscellaneous/stocks/options/README.md
deleted file mode 100644
index 7ec93768e92..00000000000
--- a/openbb_terminal/miscellaneous/stocks/options/README.md
+++ /dev/null
@@ -1,55 +0,0 @@
-# PRESETS
-
-- [How to add presets](#how-to-add-presets)
-- [template](#template)
-
----
-
-## How to add Presets
-
-1. Go to the folder OpenBBTerminal/openbb_terminal/options/presets.
-
-2. There should be a `README.md` file and multiple `.ini` files. One of these `.ini` files should be named `template.ini`.
-
- <img width="470" alt="Image1" src="https://user-images.githubusercontent.com/25267873/123706416-2be7be80-d860-11eb-9255-58787e264f49.png">
-
-3. Copy the `template.ini` file and paste it in the same directory.
-4. Rename that file to something you find meaningful, e.g. `my_own_filter.ini`.
-
- <img width="450" alt="Image2" src="https://user-images.githubusercontent.com/25267873/123706424-2db18200-d860-11eb-9523-e4647a073645.png">
-
-5. Open the file you just renamed (e.g. `my_own_filter.ini`), and set the parameters you want to filter.
-
- <img width="472" alt="Image3" src="https://user-images.githubusercontent.com/25267873/123706427-2e4a1880-d860-11eb-8523-24654013d3e4.png">
-
-6. It may be useful to play with the main source <https://ops.syncretism.io> since you can tweak these and understand
- how they influence the outcome of the filtered stocks.
-
- <img width="1036" alt="Image4" src="https://user-images.githubusercontent.com/25267873/123708702-c85f9000-d863-11eb-835e-13ea07e45e04.png">
-
-7. Update the Author and Description name. E.g.
-
- <img width="462" alt="Image5" src="https://user-images.githubusercontent.com/25267873/123711451-6b1a0d80-d868-11eb-9887-3389bbff6514.png">
-
-8. Start the terminal, and go to the `> op` menu. In there, you can play with it on the terminal as shown:
-
- - **disp**: Allows to see the screeners available. I.e. all `.ini` files in presets folder.
- - **disp <selected_preset>**: Allows to see the specific parameters set for the preset selected.
- - **scr <selected_preset>**: Allows to show stocks that are filtered using the selected preset.
- - Note: As default, if the user does **scr** this will use the `template.ini` file. So, the user can do some tests
- with tweaking of parameters on the `template.ini` file.
-
- <img width="1220" alt="Image6" src="https://user-images.githubusercontent.com/25267873/123711622-aa485e80-d868-11eb-8c9f-ed9e6453632b.png">
-
-9. Share with other Apes. You can do so by either creating yourself a Pull Request with this change, or asking a dev
- (e.g. @Sexy_Year) on our discord server to add it for you.
-
----
-
-## template
-
-- **Author of preset:** OpenBBTerminal
-- **Contact:** <https://github.com/OpenBB-finance/OpenBBTerminal>