diff --git a/tests/conftest.py b/tests/conftest.py index ddf8ff5db..32540a779 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -297,24 +297,6 @@ def patch_whitelist(mocker, conf) -> None: ) -def patch_edge(mocker) -> None: - # "ETH/BTC", - # "LTC/BTC", - # "XRP/BTC", - # "NEO/BTC" - - mocker.patch( - "freqtrade.edge.Edge._cached_pairs", - mocker.PropertyMock( - return_value={ - "NEO/BTC": PairInfo(-0.20, 0.66, 3.71, 0.50, 1.71, 10, 25), - "LTC/BTC": PairInfo(-0.21, 0.66, 3.71, 0.50, 1.71, 11, 20), - } - ), - ) - mocker.patch("freqtrade.edge.Edge.calculate", MagicMock(return_value=True)) - - # Functions for recurrent object patching diff --git a/tests/freqtradebot/test_freqtradebot.py b/tests/freqtradebot/test_freqtradebot.py index cfcd85a32..7edf30d2d 100644 --- a/tests/freqtradebot/test_freqtradebot.py +++ b/tests/freqtradebot/test_freqtradebot.py @@ -43,7 +43,6 @@ from tests.conftest import ( get_patched_worker, log_has, log_has_re, - patch_edge, patch_exchange, patch_get_signal, patch_wallet, diff --git a/tests/freqtradebot/test_stoploss_on_exchange.py b/tests/freqtradebot/test_stoploss_on_exchange.py index a31a98a8f..c71621620 100644 --- a/tests/freqtradebot/test_stoploss_on_exchange.py +++ b/tests/freqtradebot/test_stoploss_on_exchange.py @@ -16,7 +16,6 @@ from tests.conftest import ( get_patched_freqtradebot, log_has, log_has_re, - patch_edge, patch_exchange, patch_get_signal, patch_whitelist, diff --git a/tests/optimize/test_optimize_reports.py b/tests/optimize/test_optimize_reports.py index 4667f3e1c..be13d2605 100644 --- a/tests/optimize/test_optimize_reports.py +++ b/tests/optimize/test_optimize_reports.py @@ -18,12 +18,10 @@ from freqtrade.data.btanalysis import ( load_backtest_data, load_backtest_stats, ) -from freqtrade.edge import PairInfo from freqtrade.enums import ExitType from freqtrade.optimize.optimize_reports import ( generate_backtest_stats, generate_daily_stats, - generate_edge_table, generate_pair_metrics, generate_periodic_breakdown_stats, generate_strategy_comparison, @@ -646,15 +644,6 @@ def test_text_table_strategy(testdatadir, capsys): ) -def test_generate_edge_table(capsys): - results = {} - results["ETH/BTC"] = PairInfo(-0.01, 0.60, 2, 1, 3, 10, 60) - generate_edge_table(results) - text = capsys.readouterr().out - assert re.search(r".* ETH/BTC .*", text) - assert re.search(r".* Risk Reward Ratio .* Required Risk Reward .* Expectancy .*", text) - - def test_generate_periodic_breakdown_stats(testdatadir): filename = testdatadir / "backtest_results/backtest-result.json" bt_data = load_backtest_data(filename).to_dict(orient="records") diff --git a/tests/rpc/test_rpc.py b/tests/rpc/test_rpc.py index 7d1b87b55..54f427f66 100644 --- a/tests/rpc/test_rpc.py +++ b/tests/rpc/test_rpc.py @@ -6,7 +6,6 @@ import pytest from numpy import isnan from sqlalchemy import select -from freqtrade.edge import PairInfo from freqtrade.enums import SignalDirection, State, TradingMode from freqtrade.exceptions import ExchangeError, InvalidOrderException, TemporaryError from freqtrade.persistence import Order, Trade @@ -1393,36 +1392,6 @@ def test_rpc_blacklist(mocker, default_conf) -> None: assert isinstance(ret["errors"], dict) -def test_rpc_edge_disabled(mocker, default_conf) -> None: - mocker.patch("freqtrade.rpc.telegram.Telegram", MagicMock()) - freqtradebot = get_patched_freqtradebot(mocker, default_conf) - rpc = RPC(freqtradebot) - with pytest.raises(RPCException, match=r"Edge is not enabled."): - rpc._rpc_edge() - - -def test_rpc_edge_enabled(mocker, edge_conf) -> None: - mocker.patch("freqtrade.rpc.telegram.Telegram", MagicMock()) - mocker.patch( - "freqtrade.edge.Edge._cached_pairs", - mocker.PropertyMock( - return_value={ - "E/F": PairInfo(-0.02, 0.66, 3.71, 0.50, 1.71, 10, 60), - } - ), - ) - freqtradebot = get_patched_freqtradebot(mocker, edge_conf) - - rpc = RPC(freqtradebot) - ret = rpc._rpc_edge() - - assert len(ret) == 1 - assert ret[0]["Pair"] == "E/F" - assert ret[0]["Winrate"] == 0.66 - assert ret[0]["Expectancy"] == 1.71 - assert ret[0]["Stoploss"] == -0.02 - - def test_rpc_health(mocker, default_conf) -> None: mocker.patch("freqtrade.rpc.telegram.Telegram", MagicMock()) diff --git a/tests/rpc/test_rpc_telegram.py b/tests/rpc/test_rpc_telegram.py index 3409cc0e5..4d489c415 100644 --- a/tests/rpc/test_rpc_telegram.py +++ b/tests/rpc/test_rpc_telegram.py @@ -21,7 +21,6 @@ from telegram.error import BadRequest, NetworkError, TelegramError from freqtrade import __version__ from freqtrade.constants import CANCEL_REASON -from freqtrade.edge import PairInfo from freqtrade.enums import ( ExitType, MarketDirection, @@ -171,7 +170,7 @@ def test_telegram_init(default_conf, mocker, caplog) -> None: "['reload_conf', 'reload_config'], ['show_conf', 'show_config'], " "['pause', 'stopbuy', 'stopentry'], ['whitelist'], ['blacklist'], " "['bl_delete', 'blacklist_delete'], " - "['logs'], ['edge'], ['health'], ['help'], ['version'], ['marketdir'], " + "['logs'], ['health'], ['help'], ['version'], ['marketdir'], " "['order'], ['list_custom_data'], ['tg_info']]" ) @@ -1952,40 +1951,6 @@ async def test_telegram_logs(default_conf, update, mocker) -> None: assert msg_mock.call_count >= 2 -async def test_edge_disabled(default_conf, update, mocker) -> None: - telegram, _, msg_mock = get_telegram_testobject(mocker, default_conf) - - await telegram._edge(update=update, context=MagicMock()) - assert msg_mock.call_count == 1 - assert "Edge is not enabled." in msg_mock.call_args_list[0][0][0] - - -async def test_edge_enabled(edge_conf, update, mocker) -> None: - mocker.patch( - "freqtrade.edge.Edge._cached_pairs", - mocker.PropertyMock( - return_value={ - "E/F": PairInfo(-0.01, 0.66, 3.71, 0.50, 1.71, 10, 60), - } - ), - ) - - telegram, _, msg_mock = get_telegram_testobject(mocker, edge_conf) - - await telegram._edge(update=update, context=MagicMock()) - assert msg_mock.call_count == 1 - assert "Edge only validated following pairs:\n
" in msg_mock.call_args_list[0][0][0]
-    assert "Pair      Winrate    Expectancy    Stoploss" in msg_mock.call_args_list[0][0][0]
-
-    msg_mock.reset_mock()
-
-    mocker.patch("freqtrade.edge.Edge._cached_pairs", mocker.PropertyMock(return_value={}))
-    await telegram._edge(update=update, context=MagicMock())
-    assert msg_mock.call_count == 1
-    assert "Edge only validated following pairs:" in msg_mock.call_args_list[0][0][0]
-    assert "Winrate" not in msg_mock.call_args_list[0][0][0]
-
-
 @pytest.mark.parametrize(
     "is_short,regex_pattern",
     [(True, r"now[ ]*XRP\/BTC \(#3\)  -1.00% \("), (False, r"now[ ]*XRP\/BTC \(#3\)  1.00% \(")],