From 48317c2307906ff50635b2830b40d1c5f379963c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 22 Nov 2023 11:13:58 +0000 Subject: [PATCH 01/86] Bump scikit-learn from 1.1.3 to 1.3.2 Bumps [scikit-learn](https://github.com/scikit-learn/scikit-learn) from 1.1.3 to 1.3.2. - [Release notes](https://github.com/scikit-learn/scikit-learn/releases) - [Commits](https://github.com/scikit-learn/scikit-learn/compare/1.1.3...1.3.2) --- updated-dependencies: - dependency-name: scikit-learn dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- requirements-freqai.txt | 2 +- requirements-hyperopt.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/requirements-freqai.txt b/requirements-freqai.txt index d990b0714..7d817c2d9 100644 --- a/requirements-freqai.txt +++ b/requirements-freqai.txt @@ -3,7 +3,7 @@ -r requirements-plot.txt # Required for freqai -scikit-learn==1.1.3 +scikit-learn==1.3.2 joblib==1.3.2 catboost==1.2.2; 'arm' not in platform_machine lightgbm==4.1.0 diff --git a/requirements-hyperopt.txt b/requirements-hyperopt.txt index b4bca9751..639d48da9 100644 --- a/requirements-hyperopt.txt +++ b/requirements-hyperopt.txt @@ -3,6 +3,6 @@ # Required for hyperopt scipy==1.11.4 -scikit-learn==1.1.3 +scikit-learn==1.3.2 scikit-optimize==0.9.0 filelock==3.13.1 From d050beb6274bc295d8af51300e0679db4e2bad16 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 26 Nov 2023 11:40:46 +0000 Subject: [PATCH 02/86] Bump torch from 2.0.1 to 2.1.1 Bumps [torch](https://github.com/pytorch/pytorch) from 2.0.1 to 2.1.1. - [Release notes](https://github.com/pytorch/pytorch/releases) - [Changelog](https://github.com/pytorch/pytorch/blob/main/RELEASE.md) - [Commits](https://github.com/pytorch/pytorch/compare/v2.0.1...v2.1.1) --- updated-dependencies: - dependency-name: torch dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- requirements-freqai-rl.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements-freqai-rl.txt b/requirements-freqai-rl.txt index fba25d409..6256c387a 100644 --- a/requirements-freqai-rl.txt +++ b/requirements-freqai-rl.txt @@ -2,7 +2,7 @@ -r requirements-freqai.txt # Required for freqai-rl -torch==2.0.1 +torch==2.1.1 #until these branches will be released we can use this gymnasium==0.29.1 stable_baselines3==2.2.1 From cbe6d52a731c8de5fc61234e9c968a6d0d0eb505 Mon Sep 17 00:00:00 2001 From: Matthias Date: Tue, 5 Dec 2023 06:36:54 +0100 Subject: [PATCH 03/86] Try macos-13 CI --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f5e6bf08c..593a5bd03 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -126,7 +126,7 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [ macos-latest ] + os: [ "macos-latest", "macos-13" ] python-version: ["3.9", "3.10", "3.11"] steps: From 2207773678f9d6a8e26405c038dcf3535e0fe5c3 Mon Sep 17 00:00:00 2001 From: Matthias Date: Tue, 5 Dec 2023 10:39:51 +0100 Subject: [PATCH 04/86] Attempt more granular cache for macos --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 593a5bd03..4d14f2649 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -143,7 +143,7 @@ jobs: id: cache with: path: ~/dependencies/ - key: ${{ runner.os }}-dependencies + key: ${{ runner.os }}-${{ env.ImageOS }}-dependencies - name: pip cache (macOS) uses: actions/cache@v3 From 68db8d0201c397291e1abf1999f5deb748cf0241 Mon Sep 17 00:00:00 2001 From: Matthias Date: Tue, 5 Dec 2023 15:38:15 +0100 Subject: [PATCH 05/86] install libomp --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4d14f2649..025ce5504 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -175,7 +175,7 @@ jobs: rm /usr/local/bin/python3-config || true rm /usr/local/bin/python3.11-config || true - brew install hdf5 c-blosc + brew install hdf5 c-blosc libomp python -m pip install --upgrade pip wheel export LD_LIBRARY_PATH=${HOME}/dependencies/lib:$LD_LIBRARY_PATH export TA_LIBRARY_PATH=${HOME}/dependencies/lib From 3c48208b3190afb25a7e164a0969288de430a4bd Mon Sep 17 00:00:00 2001 From: Matthias Date: Tue, 5 Dec 2023 18:07:08 +0100 Subject: [PATCH 06/86] Fix cache keys --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 025ce5504..de823e9dd 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -143,14 +143,14 @@ jobs: id: cache with: path: ~/dependencies/ - key: ${{ runner.os }}-${{ env.ImageOS }}-dependencies + key: ${{ matrix.os }}-dependencies - name: pip cache (macOS) uses: actions/cache@v3 if: runner.os == 'macOS' with: path: ~/Library/Caches/pip - key: test-${{ matrix.os }}-${{ matrix.python-version }}-pip + key: ${{ matrix.os }}-${{ matrix.python-version }}-pip - name: TA binary *nix if: steps.cache.outputs.cache-hit != 'true' From 9a425af76f67a1a838fcf3edd001138a7d9f398e Mon Sep 17 00:00:00 2001 From: Matthias Date: Tue, 5 Dec 2023 18:08:00 +0100 Subject: [PATCH 07/86] Remove unnecessary conditions in Ci run --- .github/workflows/ci.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index de823e9dd..3a1eca7a7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -147,7 +147,6 @@ jobs: - name: pip cache (macOS) uses: actions/cache@v3 - if: runner.os == 'macOS' with: path: ~/Library/Caches/pip key: ${{ matrix.os }}-${{ matrix.python-version }}-pip @@ -158,7 +157,6 @@ jobs: cd build_helpers && ./install_ta-lib.sh ${HOME}/dependencies/; cd .. - name: Installation - macOS - if: runner.os == 'macOS' run: | # brew update # TODO: Should be the brew upgrade From d3d9f3281ef19b242e3236fe38be08c19e618429 Mon Sep 17 00:00:00 2001 From: Matthias Date: Wed, 6 Dec 2023 19:26:09 +0100 Subject: [PATCH 08/86] Fix torch logging setup mess --- tests/freqai/conftest.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/freqai/conftest.py b/tests/freqai/conftest.py index be208408f..d2383c5b9 100644 --- a/tests/freqai/conftest.py +++ b/tests/freqai/conftest.py @@ -20,6 +20,11 @@ def is_mac() -> bool: return "Darwin" in machine +@pytest.fixture(autouse=True) +def patch_torch_initlogs(mocker) -> None: + mocker.patch("torch._logging._init_logs") + + @pytest.fixture(scope="function") def freqai_conf(default_conf, tmp_path): freqaiconf = deepcopy(default_conf) From d123d3bb8212e449613f050574eb2e1a572b8c4e Mon Sep 17 00:00:00 2001 From: Matthias Date: Thu, 7 Dec 2023 07:25:34 +0100 Subject: [PATCH 09/86] Completely mock Torch on macos we already skip tests - now we also need to skip it's imports. --- tests/freqai/conftest.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/tests/freqai/conftest.py b/tests/freqai/conftest.py index d2383c5b9..8a9425a32 100644 --- a/tests/freqai/conftest.py +++ b/tests/freqai/conftest.py @@ -22,7 +22,17 @@ def is_mac() -> bool: @pytest.fixture(autouse=True) def patch_torch_initlogs(mocker) -> None: - mocker.patch("torch._logging._init_logs") + + if is_mac(): + # Mock torch import completely + import sys + import types + + module_name = 'torch' + mocked_module = types.ModuleType(module_name) + sys.modules[module_name] = mocked_module + else: + mocker.patch("torch._logging._init_logs") @pytest.fixture(scope="function") From 2745a5d334d1e9c1458372a4527003cf60d92e86 Mon Sep 17 00:00:00 2001 From: Matthias Date: Fri, 8 Dec 2023 20:07:44 +0100 Subject: [PATCH 10/86] Rename informative_pair test --- tests/strategy/test_strategy_helpers.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/strategy/test_strategy_helpers.py b/tests/strategy/test_strategy_helpers.py index 831856702..631752751 100644 --- a/tests/strategy/test_strategy_helpers.py +++ b/tests/strategy/test_strategy_helpers.py @@ -63,7 +63,7 @@ def test_merge_informative_pair(): assert result.iloc[8]['date_1h'] is pd.NaT -def test_merge_informative_pair_high_tf(): +def test_merge_informative_pair_monthly(): # Covers roughly 2 months - until 2023-01-10 data = generate_test_data('1h', 1040, '2022-11-28') informative = generate_test_data('1M', 40, '2022-01-01') From 7321a14c354b1fd2e84f7a7fb07527c0dc4772ea Mon Sep 17 00:00:00 2001 From: Matthias Date: Fri, 8 Dec 2023 20:34:23 +0100 Subject: [PATCH 11/86] Fix generate-test-data for 1w data --- tests/conftest.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/conftest.py b/tests/conftest.py index 9b983882a..2d7a805b1 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -91,6 +91,8 @@ def generate_test_data(timeframe: str, size: int, start: str = '2020-07-05'): base = np.random.normal(20, 2, size=size) if timeframe == '1M': date = pd.date_range(start, periods=size, freq='1MS', tz='UTC') + elif timeframe == '1w': + date = pd.date_range(start, periods=size, freq='1W-MON', tz='UTC') else: tf_mins = timeframe_to_minutes(timeframe) date = pd.date_range(start, periods=size, freq=f'{tf_mins}min', tz='UTC') From bb85efd6adb9ecb6c69be1efaecb5bc37b6e9c5b Mon Sep 17 00:00:00 2001 From: Matthias Date: Fri, 8 Dec 2023 20:34:56 +0100 Subject: [PATCH 12/86] Add test for informative weekly merging closes #9518 --- tests/strategy/test_strategy_helpers.py | 28 +++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/tests/strategy/test_strategy_helpers.py b/tests/strategy/test_strategy_helpers.py index 631752751..22c7359bf 100644 --- a/tests/strategy/test_strategy_helpers.py +++ b/tests/strategy/test_strategy_helpers.py @@ -63,6 +63,34 @@ def test_merge_informative_pair(): assert result.iloc[8]['date_1h'] is pd.NaT +def test_merge_informative_pair_weekly(): + # Covers roughly 2 months - until 2023-01-10 + data = generate_test_data('1h', 1040, '2022-11-28') + informative = generate_test_data('1w', 40, '2022-11-01') + informative['day'] = informative['date'].dt.day_name() + + result = merge_informative_pair(data, informative, '1h', '1w', ffill=True) + assert isinstance(result, pd.DataFrame) + # 2022-12-24 is a Saturday + candle1 = result.loc[(result['date'] == '2022-12-24T22:00:00.000Z')] + assert candle1.iloc[0]['date'] == pd.Timestamp('2022-12-24T22:00:00.000Z') + assert candle1.iloc[0]['date_1w'] == pd.Timestamp('2022-12-12T00:00:00.000Z') + + candle2 = result.loc[(result['date'] == '2022-12-24T23:00:00.000Z')] + assert candle2.iloc[0]['date'] == pd.Timestamp('2022-12-24T23:00:00.000Z') + assert candle2.iloc[0]['date_1w'] == pd.Timestamp('2022-12-12T00:00:00.000Z') + + # 2022-12-25 is a Sunday + candle3 = result.loc[(result['date'] == '2022-12-25T22:00:00.000Z')] + assert candle3.iloc[0]['date'] == pd.Timestamp('2022-12-25T22:00:00.000Z') + # Still old candle + assert candle3.iloc[0]['date_1w'] == pd.Timestamp('2022-12-12T00:00:00.000Z') + + candle4 = result.loc[(result['date'] == '2022-12-25T23:00:00.000Z')] + assert candle4.iloc[0]['date'] == pd.Timestamp('2022-12-25T23:00:00.000Z') + assert candle4.iloc[0]['date_1w'] == pd.Timestamp('2022-12-19T00:00:00.000Z') + + def test_merge_informative_pair_monthly(): # Covers roughly 2 months - until 2023-01-10 data = generate_test_data('1h', 1040, '2022-11-28') From 3bdfa85237b48d1c6d60b1f902873b17c8b59e96 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 9 Dec 2023 12:12:30 +0100 Subject: [PATCH 13/86] Update scikit-optimize to ft-scikit-optimize Compatibility fork of scikit-optimize. --- requirements-hyperopt.txt | 2 +- setup.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/requirements-hyperopt.txt b/requirements-hyperopt.txt index 639d48da9..d7f440c0a 100644 --- a/requirements-hyperopt.txt +++ b/requirements-hyperopt.txt @@ -4,5 +4,5 @@ # Required for hyperopt scipy==1.11.4 scikit-learn==1.3.2 -scikit-optimize==0.9.0 +ft-scikit-optimize==0.9.2 filelock==3.13.1 diff --git a/setup.py b/setup.py index 2e92d0839..6bebf1553 100644 --- a/setup.py +++ b/setup.py @@ -6,7 +6,7 @@ plot = ['plotly>=4.0'] hyperopt = [ 'scipy', 'scikit-learn<=1.1.3', - 'scikit-optimize>=0.7.0', + 'ft-scikit-optimize>=0.9.2', 'filelock', ] From d428d483937273401b8e61c42cc3888081258d2a Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 9 Dec 2023 12:12:52 +0100 Subject: [PATCH 14/86] Ease install dependencies for scikit-learn --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 6bebf1553..e8215a3e2 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ from setuptools import setup plot = ['plotly>=4.0'] hyperopt = [ 'scipy', - 'scikit-learn<=1.1.3', + 'scikit-learn', 'ft-scikit-optimize>=0.9.2', 'filelock', ] From dd08c134b4e5d8ffbd444511c5cebbe9e301b2a7 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 9 Dec 2023 13:40:00 +0100 Subject: [PATCH 15/86] Remove macos 13 ci again --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3a1eca7a7..1eb291a92 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -126,7 +126,7 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [ "macos-latest", "macos-13" ] + os: [ "macos-latest" ] python-version: ["3.9", "3.10", "3.11"] steps: From cd09d3567fdadc5e12f90e96646af609a65bf452 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 9 Dec 2023 19:42:13 +0100 Subject: [PATCH 16/86] Add spy test on funding_fees in backtesting --- tests/optimize/test_backtesting.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/optimize/test_backtesting.py b/tests/optimize/test_backtesting.py index ca4dc73f5..40136dab0 100644 --- a/tests/optimize/test_backtesting.py +++ b/tests/optimize/test_backtesting.py @@ -975,6 +975,7 @@ def test_backtest_one_detail_futures_funding_fees( default_conf_usdt['max_open_trades'] = 1 backtesting = Backtesting(default_conf_usdt) + ff_spy = mocker.spy(backtesting.exchange, 'calculate_funding_fees') backtesting._set_strategy(backtesting.strategylist[0]) backtesting.strategy.populate_entry_trend = advise_entry backtesting.strategy.adjust_trade_position = adjust_trade_position @@ -1000,6 +1001,8 @@ def test_backtest_one_detail_futures_funding_fees( assert len(results) == 1 assert 'orders' in results.columns + # funding_fees have been calculated for each candle + assert ff_spy.call_count == (324 if use_detail else 27) for t in Trade.trades: # At least 4 adjustment orders From 476703bf766dce82151717d9f627df942bfb17a9 Mon Sep 17 00:00:00 2001 From: Robert Caulk Date: Sun, 10 Dec 2023 12:26:39 +0100 Subject: [PATCH 17/86] Update data_kitchen.py Ensure our exception is raised when users dont download the data --- freqtrade/freqai/data_kitchen.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/freqtrade/freqai/data_kitchen.py b/freqtrade/freqai/data_kitchen.py index d58943777..1bdd8b0d5 100644 --- a/freqtrade/freqai/data_kitchen.py +++ b/freqtrade/freqai/data_kitchen.py @@ -244,7 +244,7 @@ class FreqaiDataKitchen: f"{self.pair}: dropped {len(unfiltered_df) - len(filtered_df)} training points" f" due to NaNs in populated dataset {len(unfiltered_df)}." ) - if len(unfiltered_df) == 0 and not self.live: + if len(filtered_df) == 0 and not self.live: raise OperationalException( f"{self.pair}: all training data dropped due to NaNs. " "You likely did not download enough training data prior " From 1d73b57e8c40cf58615476960a9dfb9af0b0b3ca Mon Sep 17 00:00:00 2001 From: Matthias Date: Sun, 10 Dec 2023 12:56:20 +0100 Subject: [PATCH 18/86] Extract some assert values from bt test --- tests/optimize/test_backtesting.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/tests/optimize/test_backtesting.py b/tests/optimize/test_backtesting.py index 40136dab0..0d33518ea 100644 --- a/tests/optimize/test_backtesting.py +++ b/tests/optimize/test_backtesting.py @@ -940,9 +940,12 @@ def test_backtest_one_detail_futures( # assert late_entry > 0 -@pytest.mark.parametrize('use_detail', [True, False]) +@pytest.mark.parametrize('use_detail,entries,max_stake', [ + (True, 50, 3000), + (False, 6, 360)]) def test_backtest_one_detail_futures_funding_fees( - default_conf_usdt, fee, mocker, testdatadir, use_detail) -> None: + default_conf_usdt, fee, mocker, testdatadir, use_detail, entries, max_stake +) -> None: default_conf_usdt['use_exit_signal'] = False default_conf_usdt['trading_mode'] = 'futures' default_conf_usdt['margin_mode'] = 'isolated' @@ -1005,10 +1008,11 @@ def test_backtest_one_detail_futures_funding_fees( assert ff_spy.call_count == (324 if use_detail else 27) for t in Trade.trades: - # At least 4 adjustment orders - assert t.nr_of_successful_entries >= 6 + # At least 6 adjustment orders + assert t.nr_of_successful_entries == entries # Funding fees will vary depending on the number of adjustment orders # That number is a lot higher with detail data. + assert t.max_stake_amount == max_stake assert -1.81 < t.funding_fees < -0.1 From b4cd46d6dbb0f07026eaa8658c79f4a5607554da Mon Sep 17 00:00:00 2001 From: Matthias Date: Sun, 10 Dec 2023 13:21:05 +0100 Subject: [PATCH 19/86] Further improve funding_Fee test --- tests/optimize/test_backtesting.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/tests/optimize/test_backtesting.py b/tests/optimize/test_backtesting.py index 0d33518ea..406dff1cf 100644 --- a/tests/optimize/test_backtesting.py +++ b/tests/optimize/test_backtesting.py @@ -940,12 +940,16 @@ def test_backtest_one_detail_futures( # assert late_entry > 0 -@pytest.mark.parametrize('use_detail,entries,max_stake', [ - (True, 50, 3000), - (False, 6, 360)]) +@pytest.mark.parametrize('use_detail,entries,max_stake,expected_ff', [ + (True, 50, 3000, -1.18038144), + (False, 6, 360, -0.14679994)]) def test_backtest_one_detail_futures_funding_fees( - default_conf_usdt, fee, mocker, testdatadir, use_detail, entries, max_stake + default_conf_usdt, fee, mocker, testdatadir, use_detail, entries, max_stake, + expected_ff, ) -> None: + """ + Funding fees are expected to differ, as the maximum position size differs. + """ default_conf_usdt['use_exit_signal'] = False default_conf_usdt['trading_mode'] = 'futures' default_conf_usdt['margin_mode'] = 'isolated' @@ -1013,7 +1017,7 @@ def test_backtest_one_detail_futures_funding_fees( # Funding fees will vary depending on the number of adjustment orders # That number is a lot higher with detail data. assert t.max_stake_amount == max_stake - assert -1.81 < t.funding_fees < -0.1 + assert pytest.approx(t.funding_fees) == expected_ff def test_backtest_timedout_entry_orders(default_conf, fee, mocker, testdatadir) -> None: From 778bd7b3b0e4d8f814257e8bddba707587507e2a Mon Sep 17 00:00:00 2001 From: Matthias Date: Sun, 10 Dec 2023 13:57:19 +0100 Subject: [PATCH 20/86] enhance further test for funding-fee checking --- tests/optimize/test_backtesting.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/tests/optimize/test_backtesting.py b/tests/optimize/test_backtesting.py index 406dff1cf..b1e2a47ad 100644 --- a/tests/optimize/test_backtesting.py +++ b/tests/optimize/test_backtesting.py @@ -851,9 +851,13 @@ def test_backtest_one_detail(default_conf_usdt, fee, mocker, testdatadir, use_de assert late_entry > 0 -@pytest.mark.parametrize('use_detail', [True, False]) +@pytest.mark.parametrize('use_detail,exp_funding_fee, exp_ff_updates', [ + (True, -0.018054162, 44), + (False, -0.01780296, 8), + ]) def test_backtest_one_detail_futures( - default_conf_usdt, fee, mocker, testdatadir, use_detail) -> None: + default_conf_usdt, fee, mocker, testdatadir, use_detail, exp_funding_fee, + exp_ff_updates) -> None: default_conf_usdt['use_exit_signal'] = False default_conf_usdt['trading_mode'] = 'futures' default_conf_usdt['margin_mode'] = 'isolated' @@ -882,6 +886,8 @@ def test_backtest_one_detail_futures( default_conf_usdt['max_open_trades'] = 10 backtesting = Backtesting(default_conf_usdt) + ff_spy = mocker.spy(backtesting.exchange, 'calculate_funding_fees') + backtesting._set_strategy(backtesting.strategylist[0]) backtesting.strategy.populate_entry_trend = advise_entry backtesting.strategy.custom_entry_price = custom_entry_price @@ -936,7 +942,8 @@ def test_backtest_one_detail_futures( assert (round(ln2.iloc[0]["low"], 6) <= round( t["close_rate"], 6) <= round(ln2.iloc[0]["high"], 6)) - assert -0.0181 < Trade.trades[1].funding_fees < -0.01 + assert pytest.approx(Trade.trades[1].funding_fees) == exp_funding_fee + assert ff_spy.call_count == exp_ff_updates # assert late_entry > 0 From 966eb59fd303a9261880f59b2bc56879f688829b Mon Sep 17 00:00:00 2001 From: Matthias Date: Sun, 10 Dec 2023 11:52:40 +0100 Subject: [PATCH 21/86] Extract funding fee calculation to separate method --- freqtrade/optimize/backtesting.py | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/freqtrade/optimize/backtesting.py b/freqtrade/optimize/backtesting.py index d5caf7070..bbafd0650 100644 --- a/freqtrade/optimize/backtesting.py +++ b/freqtrade/optimize/backtesting.py @@ -725,16 +725,7 @@ class Backtesting: self, trade: LocalTrade, row: Tuple, current_time: datetime ) -> Optional[LocalTrade]: - if self.trading_mode == TradingMode.FUTURES: - trade.set_funding_fees( - self.exchange.calculate_funding_fees( - self.futures_data[trade.pair], - amount=trade.amount, - is_short=trade.is_short, - open_date=trade.date_last_filled_utc, - close_date=current_time - ) - ) + self._run_funding_fees(trade, current_time) # Check if we need to adjust our current positions if self.strategy.position_adjustment_enable: @@ -753,6 +744,21 @@ class Backtesting: return t return None + def _run_funding_fees(self, trade: Trade, current_time: datetime): + """ + Calculate funding fees if necessary and add them to the trade. + """ + if self.trading_mode == TradingMode.FUTURES: + trade.set_funding_fees( + self.exchange.calculate_funding_fees( + self.futures_data[trade.pair], + amount=trade.amount, + is_short=trade.is_short, + open_date=trade.date_last_filled_utc, + close_date=current_time + ) + ) + def get_valid_price_and_stake( self, pair: str, row: Tuple, propose_rate: float, stake_amount: float, direction: LongShort, current_time: datetime, entry_tag: Optional[str], From 074343f0f1f365afb176ce0b28b9d25f40394eae Mon Sep 17 00:00:00 2001 From: Matthias Date: Sun, 10 Dec 2023 13:23:40 +0100 Subject: [PATCH 22/86] Don't calculate funding_fees on every iteration --- freqtrade/optimize/backtesting.py | 30 +++++++++++++++++++----------- 1 file changed, 19 insertions(+), 11 deletions(-) diff --git a/freqtrade/optimize/backtesting.py b/freqtrade/optimize/backtesting.py index bbafd0650..77efbf35c 100644 --- a/freqtrade/optimize/backtesting.py +++ b/freqtrade/optimize/backtesting.py @@ -283,11 +283,13 @@ class Backtesting: else: self.detail_data = {} if self.trading_mode == TradingMode.FUTURES: + self.funding_fee_timeframe: str = self.exchange.get_option('mark_ohlcv_timeframe') + self.funding_fee_timeframe_secs: int = timeframe_to_seconds(self.funding_fee_timeframe) # Load additional futures data. funding_rates_dict = history.load_data( datadir=self.config['datadir'], pairs=self.pairlists.whitelist, - timeframe=self.exchange.get_option('mark_ohlcv_timeframe'), + timeframe=self.funding_fee_timeframe, timerange=self.timerange, startup_candles=0, fail_without_data=True, @@ -299,7 +301,7 @@ class Backtesting: mark_rates_dict = history.load_data( datadir=self.config['datadir'], pairs=self.pairlists.whitelist, - timeframe=self.exchange.get_option('mark_ohlcv_timeframe'), + timeframe=self.funding_fee_timeframe, timerange=self.timerange, startup_candles=0, fail_without_data=True, @@ -744,20 +746,26 @@ class Backtesting: return t return None - def _run_funding_fees(self, trade: Trade, current_time: datetime): + def _run_funding_fees(self, trade: Trade, current_time: datetime, force: bool = False): """ Calculate funding fees if necessary and add them to the trade. """ if self.trading_mode == TradingMode.FUTURES: - trade.set_funding_fees( - self.exchange.calculate_funding_fees( - self.futures_data[trade.pair], - amount=trade.amount, - is_short=trade.is_short, - open_date=trade.date_last_filled_utc, - close_date=current_time + + if ( + force + or (current_time.timestamp() % self.funding_fee_timeframe_secs) == 0 + ): + # Funding fee interval. + trade.set_funding_fees( + self.exchange.calculate_funding_fees( + self.futures_data[trade.pair], + amount=trade.amount, + is_short=trade.is_short, + open_date=trade.date_last_filled_utc, + close_date=current_time + ) ) - ) def get_valid_price_and_stake( self, pair: str, row: Tuple, propose_rate: float, stake_amount: float, From ef23f0fcbac3795ca2d60cce9941fa35b0214d31 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sun, 10 Dec 2023 13:47:17 +0100 Subject: [PATCH 23/86] Fix test to account for new funding_fee count --- tests/optimize/test_backtesting.py | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/tests/optimize/test_backtesting.py b/tests/optimize/test_backtesting.py index b1e2a47ad..c6941d7c7 100644 --- a/tests/optimize/test_backtesting.py +++ b/tests/optimize/test_backtesting.py @@ -947,12 +947,13 @@ def test_backtest_one_detail_futures( # assert late_entry > 0 -@pytest.mark.parametrize('use_detail,entries,max_stake,expected_ff', [ - (True, 50, 3000, -1.18038144), - (False, 6, 360, -0.14679994)]) +@pytest.mark.parametrize('use_detail,entries,max_stake,ff_updates,expected_ff', [ + (True, 50, 3000, 54, -1.18038144), + (False, 6, 360, 10, -0.14679994), +]) def test_backtest_one_detail_futures_funding_fees( default_conf_usdt, fee, mocker, testdatadir, use_detail, entries, max_stake, - expected_ff, + ff_updates, expected_ff, ) -> None: """ Funding fees are expected to differ, as the maximum position size differs. @@ -1015,8 +1016,10 @@ def test_backtest_one_detail_futures_funding_fees( assert len(results) == 1 assert 'orders' in results.columns - # funding_fees have been calculated for each candle - assert ff_spy.call_count == (324 if use_detail else 27) + # funding_fees have been calculated for each funding-fee candle + # the trade is open for 26 hours - hence we expect the 8h fee to apply 4 times. + # Additional counts will happen due each successful entry, which needs to call this, too. + assert ff_spy.call_count == ff_updates for t in Trade.trades: # At least 6 adjustment orders From 8964c138f15b2321cba878d89e4d62266cdbb5c7 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sun, 10 Dec 2023 13:47:43 +0100 Subject: [PATCH 24/86] Call funding fee calculation whenever a trade is closed --- freqtrade/optimize/backtesting.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/freqtrade/optimize/backtesting.py b/freqtrade/optimize/backtesting.py index 77efbf35c..3ea1c5a78 100644 --- a/freqtrade/optimize/backtesting.py +++ b/freqtrade/optimize/backtesting.py @@ -606,6 +606,8 @@ class Backtesting: """ if order and self._get_order_filled(order.ft_price, row): order.close_bt_order(current_date, trade) + self._run_funding_fees(trade, current_date, force=True) + if not (order.ft_order_side == trade.exit_side and order.safe_amount == trade.amount): # trade is still open trade.set_liquidation_price(self.exchange.get_liquidation_price( From 3f6cd9ee5119942286ff9f14e2f03b5c1ce2c5f9 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sun, 10 Dec 2023 13:51:18 +0100 Subject: [PATCH 25/86] Patch funding_fee calculation for unrelated test --- tests/optimize/test_backtesting.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/optimize/test_backtesting.py b/tests/optimize/test_backtesting.py index c6941d7c7..17d1c8192 100644 --- a/tests/optimize/test_backtesting.py +++ b/tests/optimize/test_backtesting.py @@ -549,6 +549,7 @@ def test_backtest__enter_trade_futures(default_conf_usdt, fee, mocker) -> None: default_conf_usdt['exchange']['pair_whitelist'] = ['.*'] backtesting = Backtesting(default_conf_usdt) backtesting._set_strategy(backtesting.strategylist[0]) + mocker.patch('freqtrade.optimize.backtesting.Backtesting._run_funding_fees') pair = 'ETH/USDT:USDT' row = [ pd.Timestamp(year=2020, month=1, day=1, hour=5, minute=0), From 0bd513012a6cf1165ec3affd24afb28090092792 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sun, 10 Dec 2023 13:57:19 +0100 Subject: [PATCH 26/86] enhance further test for funding-fee checking --- tests/optimize/test_backtesting.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/optimize/test_backtesting.py b/tests/optimize/test_backtesting.py index 17d1c8192..fd594e94b 100644 --- a/tests/optimize/test_backtesting.py +++ b/tests/optimize/test_backtesting.py @@ -853,8 +853,8 @@ def test_backtest_one_detail(default_conf_usdt, fee, mocker, testdatadir, use_de @pytest.mark.parametrize('use_detail,exp_funding_fee, exp_ff_updates', [ - (True, -0.018054162, 44), - (False, -0.01780296, 8), + (True, -0.018054162, 11), + (False, -0.01780296, 5), ]) def test_backtest_one_detail_futures( default_conf_usdt, fee, mocker, testdatadir, use_detail, exp_funding_fee, From 78cb1e608fbbd4f102a96ae05ae65480c9f70d0d Mon Sep 17 00:00:00 2001 From: robcaulk Date: Sun, 10 Dec 2023 15:30:19 +0100 Subject: [PATCH 27/86] fix: ensure we have a row of zeros appended (not the function) --- freqtrade/freqai/data_drawer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/freqtrade/freqai/data_drawer.py b/freqtrade/freqai/data_drawer.py index e3027267b..6316c0a86 100644 --- a/freqtrade/freqai/data_drawer.py +++ b/freqtrade/freqai/data_drawer.py @@ -323,7 +323,7 @@ class FreqaiDataDrawer: index = self.historic_predictions[pair].index[-1:] columns = self.historic_predictions[pair].columns - zeros_df = pd.DataFrame(np.zeros, index=index, columns=columns) + zeros_df = pd.DataFrame(np.zeros((1, len(columns))), index=index, columns=columns) self.historic_predictions[pair] = pd.concat( [self.historic_predictions[pair], zeros_df], ignore_index=True, axis=0) df = self.historic_predictions[pair] From a304080c088495106986a79558087657e71fb471 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Dec 2023 03:33:18 +0000 Subject: [PATCH 28/86] Bump actions/setup-python from 4 to 5 Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5. - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](https://github.com/actions/setup-python/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/setup-python dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1eb291a92..1dcd969c9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -31,7 +31,7 @@ jobs: - uses: actions/checkout@v4 - name: Set up Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} @@ -133,7 +133,7 @@ jobs: - uses: actions/checkout@v4 - name: Set up Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} check-latest: true @@ -241,7 +241,7 @@ jobs: - uses: actions/checkout@v4 - name: Set up Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} @@ -305,7 +305,7 @@ jobs: - uses: actions/checkout@v4 - name: Set up Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: "3.10" @@ -319,7 +319,7 @@ jobs: steps: - uses: actions/checkout@v4 - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: python-version: "3.10" - uses: pre-commit/action@v3.0.0 @@ -334,7 +334,7 @@ jobs: ./tests/test_docs.sh - name: Set up Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: "3.11" @@ -360,7 +360,7 @@ jobs: - uses: actions/checkout@v4 - name: Set up Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: "3.9" @@ -444,7 +444,7 @@ jobs: - uses: actions/checkout@v4 - name: Set up Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: "3.11" From 327f750eadd344a3e034abc29deb487555ff9922 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Dec 2023 03:52:31 +0000 Subject: [PATCH 29/86] Bump technical from 1.4.0 to 1.4.1 Bumps [technical](https://github.com/freqtrade/technical) from 1.4.0 to 1.4.1. - [Release notes](https://github.com/freqtrade/technical/releases) - [Commits](https://github.com/freqtrade/technical/compare/1.4.0...1.4.1) --- updated-dependencies: - dependency-name: technical dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 5ef69111d..8083512bb 100644 --- a/requirements.txt +++ b/requirements.txt @@ -15,7 +15,7 @@ requests==2.31.0 urllib3==2.1.0 jsonschema==4.20.0 TA-Lib==0.4.28 -technical==1.4.0 +technical==1.4.1 tabulate==0.9.0 pycoingecko==3.1.0 jinja2==3.1.2 From cc14cf23b112e5bcafe324b3b671a09f2ffa5b15 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Dec 2023 03:52:41 +0000 Subject: [PATCH 30/86] Bump isort from 5.12.0 to 5.13.0 Bumps [isort](https://github.com/pycqa/isort) from 5.12.0 to 5.13.0. - [Release notes](https://github.com/pycqa/isort/releases) - [Changelog](https://github.com/PyCQA/isort/blob/main/CHANGELOG.md) - [Commits](https://github.com/pycqa/isort/compare/5.12.0...5.13.0) --- updated-dependencies: - dependency-name: isort dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- requirements-dev.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements-dev.txt b/requirements-dev.txt index 2302a0426..2cfb7aa91 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -15,7 +15,7 @@ pytest-asyncio==0.21.1 pytest-cov==4.1.0 pytest-mock==3.12.0 pytest-random-order==1.1.0 -isort==5.12.0 +isort==5.13.0 # For datetime mocking time-machine==2.13.0 From 199e3f91f23cc00f5992cf4c6e552e2f64e3e408 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Dec 2023 03:52:51 +0000 Subject: [PATCH 31/86] Bump ruff from 0.1.6 to 0.1.7 Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.6 to 0.1.7. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.6...v0.1.7) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- requirements-dev.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements-dev.txt b/requirements-dev.txt index 2302a0426..6782ff38b 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -7,7 +7,7 @@ -r docs/requirements-docs.txt coveralls==3.3.1 -ruff==0.1.6 +ruff==0.1.7 mypy==1.7.1 pre-commit==3.5.0 pytest==7.4.3 From 17f0697c432e7b18865e15f6bfb499d28e6ef9c8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Dec 2023 03:52:56 +0000 Subject: [PATCH 32/86] Bump mkdocs-material from 9.4.14 to 9.5.1 Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.4.14 to 9.5.1. - [Release notes](https://github.com/squidfunk/mkdocs-material/releases) - [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG) - [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.4.14...9.5.1) --- updated-dependencies: - dependency-name: mkdocs-material dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- docs/requirements-docs.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/requirements-docs.txt b/docs/requirements-docs.txt index 10c70939e..317d84926 100644 --- a/docs/requirements-docs.txt +++ b/docs/requirements-docs.txt @@ -1,6 +1,6 @@ markdown==3.5.1 mkdocs==1.5.3 -mkdocs-material==9.4.14 +mkdocs-material==9.5.1 mdx_truly_sane_lists==1.3 pymdown-extensions==10.5 jinja2==3.1.2 From a0e92f5a47c382229109c35e5583c10967315c3b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Dec 2023 03:53:12 +0000 Subject: [PATCH 33/86] Bump pandas from 2.1.3 to 2.1.4 Bumps [pandas](https://github.com/pandas-dev/pandas) from 2.1.3 to 2.1.4. - [Release notes](https://github.com/pandas-dev/pandas/releases) - [Commits](https://github.com/pandas-dev/pandas/compare/v2.1.3...v2.1.4) --- updated-dependencies: - dependency-name: pandas dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 5ef69111d..32a7083ea 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,5 @@ numpy==1.26.2 -pandas==2.1.3 +pandas==2.1.4 pandas-ta==0.3.14b ccxt==4.1.76 From 4b3230689ca5566cbcf1cf42b4e889b582bb4d84 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Dec 2023 05:26:12 +0000 Subject: [PATCH 34/86] Bump pre-commit from 3.5.0 to 3.6.0 Bumps [pre-commit](https://github.com/pre-commit/pre-commit) from 3.5.0 to 3.6.0. - [Release notes](https://github.com/pre-commit/pre-commit/releases) - [Changelog](https://github.com/pre-commit/pre-commit/blob/main/CHANGELOG.md) - [Commits](https://github.com/pre-commit/pre-commit/compare/v3.5.0...v3.6.0) --- updated-dependencies: - dependency-name: pre-commit dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- requirements-dev.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements-dev.txt b/requirements-dev.txt index c289e6197..b2a9cca94 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -9,7 +9,7 @@ coveralls==3.3.1 ruff==0.1.7 mypy==1.7.1 -pre-commit==3.5.0 +pre-commit==3.6.0 pytest==7.4.3 pytest-asyncio==0.21.1 pytest-cov==4.1.0 From 4b43ccae117323f52cc0205ee6547f7beb1e054f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Dec 2023 05:29:11 +0000 Subject: [PATCH 35/86] Bump ccxt from 4.1.76 to 4.1.84 Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.1.76 to 4.1.84. - [Release notes](https://github.com/ccxt/ccxt/releases) - [Changelog](https://github.com/ccxt/ccxt/blob/master/CHANGELOG.md) - [Commits](https://github.com/ccxt/ccxt/compare/4.1.76...4.1.84) --- updated-dependencies: - dependency-name: ccxt dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 283bb9121..3edae7498 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,7 +2,7 @@ numpy==1.26.2 pandas==2.1.4 pandas-ta==0.3.14b -ccxt==4.1.76 +ccxt==4.1.84 cryptography==41.0.7 aiohttp==3.9.1 SQLAlchemy==2.0.23 From eac5d53a647c7f955704d3ee7ed54bbd559d019c Mon Sep 17 00:00:00 2001 From: Matthias Date: Mon, 11 Dec 2023 06:48:05 +0100 Subject: [PATCH 36/86] Add mock to backtest adjust position --- tests/optimize/test_backtesting_adjust_position.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/optimize/test_backtesting_adjust_position.py b/tests/optimize/test_backtesting_adjust_position.py index ad1f31068..9b40b3a9d 100644 --- a/tests/optimize/test_backtesting_adjust_position.py +++ b/tests/optimize/test_backtesting_adjust_position.py @@ -104,6 +104,7 @@ def test_backtest_position_adjustment_detailed(default_conf, fee, mocker, levera mocker.patch(f"{EXMS}.get_max_pair_stake_amount", return_value=float('inf')) mocker.patch(f"{EXMS}.get_max_leverage", return_value=10) mocker.patch(f"{EXMS}.get_maintenance_ratio_and_amt", return_value=(0.1, 0.1)) + mocker.patch('freqtrade.optimize.backtesting.Backtesting._run_funding_fees') patch_exchange(mocker) default_conf.update({ From 30f94ef5b77b0f52b99c0da7652f72a1311c1fc0 Mon Sep 17 00:00:00 2001 From: Matthias Date: Mon, 11 Dec 2023 19:12:08 +0100 Subject: [PATCH 37/86] Use LocalTrade for typehint --- freqtrade/optimize/backtesting.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/freqtrade/optimize/backtesting.py b/freqtrade/optimize/backtesting.py index 3ea1c5a78..36673d2e8 100644 --- a/freqtrade/optimize/backtesting.py +++ b/freqtrade/optimize/backtesting.py @@ -748,7 +748,7 @@ class Backtesting: return t return None - def _run_funding_fees(self, trade: Trade, current_time: datetime, force: bool = False): + def _run_funding_fees(self, trade: LocalTrade, current_time: datetime, force: bool = False): """ Calculate funding fees if necessary and add them to the trade. """ From db7799d2fb125b7d2a103607bcf4d3bd817cf129 Mon Sep 17 00:00:00 2001 From: Matthias Date: Mon, 11 Dec 2023 19:42:13 +0100 Subject: [PATCH 38/86] Use variable instead of config for startup_candle_count --- freqtrade/optimize/backtesting.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/freqtrade/optimize/backtesting.py b/freqtrade/optimize/backtesting.py index d5caf7070..aabd835dd 100644 --- a/freqtrade/optimize/backtesting.py +++ b/freqtrade/optimize/backtesting.py @@ -239,7 +239,7 @@ class Backtesting: if self.config.get('freqai', {}).get('enabled', False): startup_candle_count = self.freqai_startup_candles else: - startup_candle_count = self.config['startup_candle_count'] + startup_candle_count = self.required_startup data = history.load_data( datadir=self.config['datadir'], From 105cd993952e9801ea5deb3d6510d97cbfb863cf Mon Sep 17 00:00:00 2001 From: Matthias Date: Mon, 11 Dec 2023 19:52:49 +0100 Subject: [PATCH 39/86] use max_open_trades from straetgy instead of config --- freqtrade/optimize/backtesting.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/freqtrade/optimize/backtesting.py b/freqtrade/optimize/backtesting.py index aabd835dd..fe458acb5 100644 --- a/freqtrade/optimize/backtesting.py +++ b/freqtrade/optimize/backtesting.py @@ -964,7 +964,7 @@ class Backtesting: def trade_slot_available(self, open_trade_count: int) -> bool: # Always allow trades when max_open_trades is enabled. - max_open_trades: IntOrInf = self.config['max_open_trades'] + max_open_trades: IntOrInf = self.strategy.max_open_trades if max_open_trades <= 0 or open_trade_count < max_open_trades: return True # Rejected trade From 755ce3a8587ee2bd41ec0293048cf86bb8317e16 Mon Sep 17 00:00:00 2001 From: Matthias Date: Mon, 11 Dec 2023 20:32:37 +0100 Subject: [PATCH 40/86] Prevent config modification during webserver startup --- freqtrade/configuration/config_validation.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/freqtrade/configuration/config_validation.py b/freqtrade/configuration/config_validation.py index 395826557..a0e695619 100644 --- a/freqtrade/configuration/config_validation.py +++ b/freqtrade/configuration/config_validation.py @@ -86,7 +86,7 @@ def validate_config_consistency(conf: Dict[str, Any], preliminary: bool = False) _validate_ask_orderbook(conf) _validate_freqai_hyperopt(conf) _validate_freqai_backtest(conf) - _validate_freqai_include_timeframes(conf) + _validate_freqai_include_timeframes(conf, preliminary=preliminary) _validate_consumers(conf) validate_migrated_strategy_settings(conf) @@ -335,7 +335,7 @@ def _validate_freqai_hyperopt(conf: Dict[str, Any]) -> None: 'Using analyze-per-epoch parameter is not supported with a FreqAI strategy.') -def _validate_freqai_include_timeframes(conf: Dict[str, Any]) -> None: +def _validate_freqai_include_timeframes(conf: Dict[str, Any], preliminary: bool) -> None: freqai_enabled = conf.get('freqai', {}).get('enabled', False) if freqai_enabled: main_tf = conf.get('timeframe', '5m') @@ -355,7 +355,7 @@ def _validate_freqai_include_timeframes(conf: Dict[str, Any]) -> None: f"`include_timeframes`.Offending include-timeframes: {', '.join(offending_lines)}") # Ensure that the base timeframe is included in the include_timeframes list - if main_tf not in freqai_include_timeframes: + if not preliminary and main_tf not in freqai_include_timeframes: feature_parameters = conf.get('freqai', {}).get('feature_parameters', {}) include_timeframes = [main_tf] + freqai_include_timeframes conf.get('freqai', {}).get('feature_parameters', {}) \ From c5c2c8c1856a3b08ab4027352c9734e65aec1e4d Mon Sep 17 00:00:00 2001 From: Matthias Date: Mon, 11 Dec 2023 20:35:49 +0100 Subject: [PATCH 41/86] Enforce kwargs for preliminary --- freqtrade/configuration/config_validation.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/freqtrade/configuration/config_validation.py b/freqtrade/configuration/config_validation.py index 395826557..db309053e 100644 --- a/freqtrade/configuration/config_validation.py +++ b/freqtrade/configuration/config_validation.py @@ -67,7 +67,7 @@ def validate_config_schema(conf: Dict[str, Any], preliminary: bool = False) -> D ) -def validate_config_consistency(conf: Dict[str, Any], preliminary: bool = False) -> None: +def validate_config_consistency(conf: Dict[str, Any], *, preliminary: bool = False) -> None: """ Validate the configuration consistency. Should be ran after loading both configuration and strategy, From 5ab61d9da480c159b635a2840f162fe6b061e0e0 Mon Sep 17 00:00:00 2001 From: Matthias Date: Tue, 12 Dec 2023 06:46:22 +0100 Subject: [PATCH 42/86] Improve missing data output --- freqtrade/data/converter/converter.py | 4 ++-- tests/data/test_converter.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/freqtrade/data/converter/converter.py b/freqtrade/data/converter/converter.py index 8d1401e88..e4f905542 100644 --- a/freqtrade/data/converter/converter.py +++ b/freqtrade/data/converter/converter.py @@ -116,8 +116,8 @@ def ohlcv_fill_up_missing_data(dataframe: DataFrame, timeframe: str, pair: str) len_after = len(df) pct_missing = (len_after - len_before) / len_before if len_before > 0 else 0 if len_before != len_after: - message = (f"Missing data fillup for {pair}: before: {len_before} - after: {len_after}" - f" - {pct_missing:.2%}") + message = (f"Missing data fillup for {pair}, {timeframe}: " + f"before: {len_before} - after: {len_after} - {pct_missing:.2%}") if pct_missing > 0.01: logger.info(message) else: diff --git a/tests/data/test_converter.py b/tests/data/test_converter.py index 99c56e1d0..4186708ab 100644 --- a/tests/data/test_converter.py +++ b/tests/data/test_converter.py @@ -64,7 +64,7 @@ def test_ohlcv_fill_up_missing_data(testdatadir, caplog): # Column names should not change assert (data.columns == data2.columns).all() - assert log_has_re(f"Missing data fillup for UNITTEST/BTC: before: " + assert log_has_re(f"Missing data fillup for UNITTEST/BTC, 1m: before: " f"{len(data)} - after: {len(data2)}.*", caplog) # Test fillup actually fixes invalid backtest data @@ -128,7 +128,7 @@ def test_ohlcv_fill_up_missing_data2(caplog): # Column names should not change assert (data.columns == data2.columns).all() - assert log_has_re(f"Missing data fillup for UNITTEST/BTC: before: " + assert log_has_re(f"Missing data fillup for UNITTEST/BTC, {timeframe}: before: " f"{len(data)} - after: {len(data2)}.*", caplog) From c62e52c759348af5b054ca91395f1ce18d256772 Mon Sep 17 00:00:00 2001 From: Matthias Date: Tue, 12 Dec 2023 19:48:17 +0100 Subject: [PATCH 43/86] Add test for dp_get_required_startup --- tests/data/test_dataprovider.py | 64 +++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) diff --git a/tests/data/test_dataprovider.py b/tests/data/test_dataprovider.py index 1eeaffb2c..a852fc523 100644 --- a/tests/data/test_dataprovider.py +++ b/tests/data/test_dataprovider.py @@ -500,3 +500,67 @@ def test_dp__add_external_df(default_conf_usdt): # 36 hours - from 2022-01-03 12:00:00+00:00 to 2022-01-05 00:00:00+00:00 assert isinstance(res[1], int) assert res[1] == 0 + + +def test_dp_get_required_startup(default_conf_usdt): + timeframe = '1h' + default_conf_usdt["timeframe"] = timeframe + dp = DataProvider(default_conf_usdt, None) + + # No FreqAI config + assert dp.get_required_startup('5m', False) == 0 + assert dp.get_required_startup('1h', False) == 0 + assert dp.get_required_startup('1d', False) == 0 + assert dp.get_required_startup('1d', True) == 0 + assert dp.get_required_startup('1d') == 0 + + dp._config['startup_candle_count'] = 20 + assert dp.get_required_startup('5m', False) == 20 + assert dp.get_required_startup('5m', True) == 20 + assert dp.get_required_startup('1h', False) == 20 + assert dp.get_required_startup('1h') == 20 + + # With freqAI config + + dp._config['freqai'] = { + 'enabled': True, + 'train_period_days': 20, + 'feature_parameters': { + 'indicator_periods_candles': [ + 5, + 20, + ] + } + } + assert dp.get_required_startup('5m', False) == 20 + assert dp.get_required_startup('5m', True) == 5780 + + assert dp.get_required_startup('1h', False) == 20 + assert dp.get_required_startup('1h', True) == 500 + + assert dp.get_required_startup('1d', False) == 20 + assert dp.get_required_startup('1d', True) == 40 + assert dp.get_required_startup('1d') == 40 + + # FreqAI kindof ignores startup_candle_count if it's below indicator_periods_candles + dp._config['startup_candle_count'] = 0 + assert dp.get_required_startup('5m', False) == 20 + assert dp.get_required_startup('5m', True) == 5780 + + assert dp.get_required_startup('1h', False) == 20 + assert dp.get_required_startup('1h', True) == 500 + + assert dp.get_required_startup('1d', False) == 20 + assert dp.get_required_startup('1d', True) == 40 + assert dp.get_required_startup('1d') == 40 + + dp._config['freqai']['feature_parameters']['indicator_periods_candles'][1] = 50 + assert dp.get_required_startup('5m', False) == 50 + assert dp.get_required_startup('5m', True) == 5810 + + assert dp.get_required_startup('1h', False) == 50 + assert dp.get_required_startup('1h', True) == 530 + + assert dp.get_required_startup('1d', False) == 50 + assert dp.get_required_startup('1d', True) == 70 + assert dp.get_required_startup('1d') == 70 From e79a58e1c42b46d669925fc061216e9b0bb1794f Mon Sep 17 00:00:00 2001 From: Matthias Date: Tue, 12 Dec 2023 19:59:34 +0100 Subject: [PATCH 44/86] Add test case to verify behavior in #9432 --- tests/data/test_dataprovider.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/tests/data/test_dataprovider.py b/tests/data/test_dataprovider.py index a852fc523..a61dd9679 100644 --- a/tests/data/test_dataprovider.py +++ b/tests/data/test_dataprovider.py @@ -564,3 +564,25 @@ def test_dp_get_required_startup(default_conf_usdt): assert dp.get_required_startup('1d', False) == 50 assert dp.get_required_startup('1d', True) == 70 assert dp.get_required_startup('1d') == 70 + + # scenario from issue https://github.com/freqtrade/freqtrade/issues/9432 + dp._config['freqai'] = { + 'enabled': True, + 'train_period_days': 180, + 'feature_parameters': { + 'indicator_periods_candles': [ + 10, + 20, + ] + } + } + dp._config['startup_candle_count'] = 40 + assert dp.get_required_startup('5m', False) == 40 + assert dp.get_required_startup('5m', True) == 51880 + + assert dp.get_required_startup('1h', False) == 40 + assert dp.get_required_startup('1h', True) == 4360 + + assert dp.get_required_startup('1d', False) == 40 + assert dp.get_required_startup('1d', True) == 220 + assert dp.get_required_startup('1d') == 220 From c9f43587ec6d76f10de7c1d6a27901ae22ccc298 Mon Sep 17 00:00:00 2001 From: Matthias Date: Tue, 12 Dec 2023 21:30:52 +0100 Subject: [PATCH 45/86] Bump binance leverage tiers --- .../exchange/binance_leverage_tiers.json | 3282 ++++++++++++++--- 1 file changed, 2838 insertions(+), 444 deletions(-) diff --git a/freqtrade/exchange/binance_leverage_tiers.json b/freqtrade/exchange/binance_leverage_tiers.json index 39d2ea7fc..3a6e6b0a1 100644 --- a/freqtrade/exchange/binance_leverage_tiers.json +++ b/freqtrade/exchange/binance_leverage_tiers.json @@ -1,4 +1,118 @@ { + "1000BONK/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "25000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], "1000FLOKI/USDT:USDT": [ { "tier": 1.0, @@ -455,6 +569,120 @@ } } ], + "1000SATS/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "25000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], "1000SHIB/BUSD:BUSD": [ { "tier": 1.0, @@ -4705,6 +4933,120 @@ } } ], + "BADGER/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "25000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], "BAKE/USDT:USDT": [ { "tier": 1.0, @@ -5259,6 +5601,120 @@ } } ], + "BEAMX/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "25000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], "BEL/USDT:USDT": [ { "tier": 1.0, @@ -5902,10 +6358,10 @@ "minNotional": 0.0, "maxNotional": 100000.0, "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxLeverage": 11.0, "info": { "bracket": "1", - "initialLeverage": "20", + "initialLeverage": "11", "notionalCap": "100000", "notionalFloor": "0", "maintMarginRatio": "0.025", @@ -5980,13 +6436,13 @@ "tier": 6.0, "currency": "BUSD", "minNotional": 5000000.0, - "maxNotional": 8000000.0, + "maxNotional": 5500000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { "bracket": "6", "initialLeverage": "1", - "notionalCap": "8000000", + "notionalCap": "5500000", "notionalFloor": "5000000", "maintMarginRatio": "0.5", "cum": "1527500.0" @@ -6602,10 +7058,10 @@ "minNotional": 0.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.004, - "maxLeverage": 75.0, + "maxLeverage": 30.0, "info": { "bracket": "1", - "initialLeverage": "75", + "initialLeverage": "30", "notionalCap": "50000", "notionalFloor": "0", "maintMarginRatio": "0.004", @@ -6618,10 +7074,10 @@ "minNotional": 50000.0, "maxNotional": 250000.0, "maintenanceMarginRate": 0.005, - "maxLeverage": 50.0, + "maxLeverage": 25.0, "info": { "bracket": "2", - "initialLeverage": "50", + "initialLeverage": "25", "notionalCap": "250000", "notionalFloor": "50000", "maintMarginRatio": "0.005", @@ -6634,10 +7090,10 @@ "minNotional": 250000.0, "maxNotional": 1000000.0, "maintenanceMarginRate": 0.01, - "maxLeverage": 25.0, + "maxLeverage": 20.0, "info": { "bracket": "3", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "1000000", "notionalFloor": "250000", "maintMarginRatio": "0.01", @@ -6650,10 +7106,10 @@ "minNotional": 1000000.0, "maxNotional": 7500000.0, "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxLeverage": 15.0, "info": { "bracket": "4", - "initialLeverage": "20", + "initialLeverage": "15", "notionalCap": "7500000", "notionalFloor": "1000000", "maintMarginRatio": "0.025", @@ -6744,13 +7200,13 @@ "tier": 10.0, "currency": "BUSD", "minNotional": 600000000.0, - "maxNotional": 1000000000.0, + "maxNotional": 600500000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { "bracket": "10", "initialLeverage": "1", - "notionalCap": "1000000000", + "notionalCap": "600500000", "notionalFloor": "600000000", "maintMarginRatio": "0.5", "cum": "199703800.0" @@ -6778,13 +7234,13 @@ "tier": 2.0, "currency": "USDT", "minNotional": 50000.0, - "maxNotional": 250000.0, + "maxNotional": 500000.0, "maintenanceMarginRate": 0.005, "maxLeverage": 100.0, "info": { "bracket": "2", "initialLeverage": "100", - "notionalCap": "250000", + "notionalCap": "500000", "notionalFloor": "50000", "maintMarginRatio": "0.005", "cum": "50.0" @@ -6793,55 +7249,55 @@ { "tier": 3.0, "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 3000000.0, + "minNotional": 500000.0, + "maxNotional": 8000000.0, "maintenanceMarginRate": 0.01, "maxLeverage": 50.0, "info": { "bracket": "3", "initialLeverage": "50", - "notionalCap": "3000000", - "notionalFloor": "250000", + "notionalCap": "8000000", + "notionalFloor": "500000", "maintMarginRatio": "0.01", - "cum": "1300.0" + "cum": "2550.0" } }, { "tier": 4.0, "currency": "USDT", - "minNotional": 3000000.0, - "maxNotional": 20000000.0, + "minNotional": 8000000.0, + "maxNotional": 50000000.0, "maintenanceMarginRate": 0.025, "maxLeverage": 20.0, "info": { "bracket": "4", "initialLeverage": "20", - "notionalCap": "20000000", - "notionalFloor": "3000000", + "notionalCap": "50000000", + "notionalFloor": "8000000", "maintMarginRatio": "0.025", - "cum": "46300.0" + "cum": "122550.0" } }, { "tier": 5.0, "currency": "USDT", - "minNotional": 20000000.0, - "maxNotional": 40000000.0, + "minNotional": 50000000.0, + "maxNotional": 80000000.0, "maintenanceMarginRate": 0.05, "maxLeverage": 10.0, "info": { "bracket": "5", "initialLeverage": "10", - "notionalCap": "40000000", - "notionalFloor": "20000000", + "notionalCap": "80000000", + "notionalFloor": "50000000", "maintMarginRatio": "0.05", - "cum": "546300.0" + "cum": "1372550.0" } }, { "tier": 6.0, "currency": "USDT", - "minNotional": 40000000.0, + "minNotional": 80000000.0, "maxNotional": 100000000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, @@ -6849,9 +7305,9 @@ "bracket": "6", "initialLeverage": "5", "notionalCap": "100000000", - "notionalFloor": "40000000", + "notionalFloor": "80000000", "maintMarginRatio": "0.1", - "cum": "2546300.0" + "cum": "5372550.0" } }, { @@ -6867,7 +7323,7 @@ "notionalCap": "120000000", "notionalFloor": "100000000", "maintMarginRatio": "0.125", - "cum": "5046300.0" + "cum": "7872550.0" } }, { @@ -6883,7 +7339,7 @@ "notionalCap": "200000000", "notionalFloor": "120000000", "maintMarginRatio": "0.15", - "cum": "8046300.0" + "cum": "10872550.0" } }, { @@ -6899,7 +7355,7 @@ "notionalCap": "300000000", "notionalFloor": "200000000", "maintMarginRatio": "0.25", - "cum": "28046300.0" + "cum": "30872550.0" } }, { @@ -6915,121 +7371,7 @@ "notionalCap": "500000000", "notionalFloor": "300000000", "maintMarginRatio": "0.5", - "cum": "103046300.0" - } - } - ], - "BTC/USDT:USDT-230929": [ - { - "tier": 1.0, - "currency": "USDT", - "minNotional": 0.0, - "maxNotional": 375000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, - "info": { - "bracket": "1", - "initialLeverage": "25", - "notionalCap": "375000", - "notionalFloor": "0", - "maintMarginRatio": "0.02", - "cum": "0.0" - } - }, - { - "tier": 2.0, - "currency": "USDT", - "minNotional": 375000.0, - "maxNotional": 2000000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "2", - "initialLeverage": "10", - "notionalCap": "2000000", - "notionalFloor": "375000", - "maintMarginRatio": "0.05", - "cum": "11250.0" - } - }, - { - "tier": 3.0, - "currency": "USDT", - "minNotional": 2000000.0, - "maxNotional": 4000000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, - "info": { - "bracket": "3", - "initialLeverage": "5", - "notionalCap": "4000000", - "notionalFloor": "2000000", - "maintMarginRatio": "0.1", - "cum": "111250.0" - } - }, - { - "tier": 4.0, - "currency": "USDT", - "minNotional": 4000000.0, - "maxNotional": 10000000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, - "info": { - "bracket": "4", - "initialLeverage": "4", - "notionalCap": "10000000", - "notionalFloor": "4000000", - "maintMarginRatio": "0.125", - "cum": "211250.0" - } - }, - { - "tier": 5.0, - "currency": "USDT", - "minNotional": 10000000.0, - "maxNotional": 20000000.0, - "maintenanceMarginRate": 0.15, - "maxLeverage": 3.0, - "info": { - "bracket": "5", - "initialLeverage": "3", - "notionalCap": "20000000", - "notionalFloor": "10000000", - "maintMarginRatio": "0.15", - "cum": "461250.0" - } - }, - { - "tier": 6.0, - "currency": "USDT", - "minNotional": 20000000.0, - "maxNotional": 40000000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "6", - "initialLeverage": "2", - "notionalCap": "40000000", - "notionalFloor": "20000000", - "maintMarginRatio": "0.25", - "cum": "2461250.0" - } - }, - { - "tier": 7.0, - "currency": "USDT", - "minNotional": 40000000.0, - "maxNotional": 120000000.0, - "maintenanceMarginRate": 0.5, - "maxLeverage": 1.0, - "info": { - "bracket": "7", - "initialLeverage": "1", - "notionalCap": "120000000", - "notionalFloor": "40000000", - "maintMarginRatio": "0.5", - "cum": "12461250.0" + "cum": "105872550.0" } } ], @@ -7701,6 +8043,120 @@ } } ], + "CAKE/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "25000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], "CELO/USDT:USDT": [ { "tier": 1.0, @@ -11341,14 +11797,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.01, - "maxLeverage": 20.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, "info": { "bracket": "1", - "initialLeverage": "20", + "initialLeverage": "50", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.01", + "maintMarginRatio": "0.015", "cum": "0.0" } }, @@ -11358,14 +11814,14 @@ "minNotional": 5000.0, "maxNotional": 25000.0, "maintenanceMarginRate": 0.025, - "maxLeverage": 10.0, + "maxLeverage": 20.0, "info": { "bracket": "2", - "initialLeverage": "10", + "initialLeverage": "20", "notionalCap": "25000", "notionalFloor": "5000", "maintMarginRatio": "0.025", - "cum": "75.0" + "cum": "50.0" } }, { @@ -11374,14 +11830,14 @@ "minNotional": 25000.0, "maxNotional": 100000.0, "maintenanceMarginRate": 0.05, - "maxLeverage": 8.0, + "maxLeverage": 10.0, "info": { "bracket": "3", - "initialLeverage": "8", + "initialLeverage": "10", "notionalCap": "100000", "notionalFloor": "25000", "maintMarginRatio": "0.05", - "cum": "700.0" + "cum": "675.0" } }, { @@ -11397,7 +11853,7 @@ "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1", - "cum": "5700.0" + "cum": "5675.0" } }, { @@ -11413,7 +11869,7 @@ "notionalCap": "1000000", "notionalFloor": "250000", "maintMarginRatio": "0.125", - "cum": "11950.0" + "cum": "11925.0" } }, { @@ -11429,7 +11885,7 @@ "notionalCap": "8000000", "notionalFloor": "1000000", "maintMarginRatio": "0.5", - "cum": "386950.0" + "cum": "386925.0" } } ], @@ -12024,10 +12480,10 @@ "minNotional": 0.0, "maxNotional": 50000.0, "maintenanceMarginRate": 0.004, - "maxLeverage": 75.0, + "maxLeverage": 30.0, "info": { "bracket": "1", - "initialLeverage": "75", + "initialLeverage": "30", "notionalCap": "50000", "notionalFloor": "0", "maintMarginRatio": "0.004", @@ -12040,10 +12496,10 @@ "minNotional": 50000.0, "maxNotional": 100000.0, "maintenanceMarginRate": 0.005, - "maxLeverage": 50.0, + "maxLeverage": 25.0, "info": { "bracket": "2", - "initialLeverage": "50", + "initialLeverage": "25", "notionalCap": "100000", "notionalFloor": "50000", "maintMarginRatio": "0.005", @@ -12056,10 +12512,10 @@ "minNotional": 100000.0, "maxNotional": 1000000.0, "maintenanceMarginRate": 0.01, - "maxLeverage": 25.0, + "maxLeverage": 20.0, "info": { "bracket": "3", - "initialLeverage": "25", + "initialLeverage": "20", "notionalCap": "1000000", "notionalFloor": "100000", "maintMarginRatio": "0.01", @@ -12072,10 +12528,10 @@ "minNotional": 1000000.0, "maxNotional": 5000000.0, "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxLeverage": 15.0, "info": { "bracket": "4", - "initialLeverage": "20", + "initialLeverage": "15", "notionalCap": "5000000", "notionalFloor": "1000000", "maintMarginRatio": "0.025", @@ -12166,13 +12622,13 @@ "tier": 10.0, "currency": "BUSD", "minNotional": 150000000.0, - "maxNotional": 300000000.0, + "maxNotional": 160000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { "bracket": "10", "initialLeverage": "1", - "notionalCap": "300000000", + "notionalCap": "160000000", "notionalFloor": "150000000", "maintMarginRatio": "0.5", "cum": "47640550.0" @@ -12184,13 +12640,13 @@ "tier": 1.0, "currency": "USDT", "minNotional": 0.0, - "maxNotional": 100000.0, + "maxNotional": 200000.0, "maintenanceMarginRate": 0.005, "maxLeverage": 100.0, "info": { "bracket": "1", "initialLeverage": "100", - "notionalCap": "100000", + "notionalCap": "200000", "notionalFloor": "0", "maintMarginRatio": "0.005", "cum": "0.0" @@ -12199,87 +12655,87 @@ { "tier": 2.0, "currency": "USDT", - "minNotional": 100000.0, - "maxNotional": 250000.0, + "minNotional": 200000.0, + "maxNotional": 800000.0, "maintenanceMarginRate": 0.0065, "maxLeverage": 75.0, "info": { "bracket": "2", "initialLeverage": "75", - "notionalCap": "250000", - "notionalFloor": "100000", + "notionalCap": "800000", + "notionalFloor": "200000", "maintMarginRatio": "0.0065", - "cum": "150.0" + "cum": "300.0" } }, { "tier": 3.0, "currency": "USDT", - "minNotional": 250000.0, - "maxNotional": 2000000.0, + "minNotional": 800000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.01, "maxLeverage": 50.0, "info": { "bracket": "3", "initialLeverage": "50", - "notionalCap": "2000000", - "notionalFloor": "250000", + "notionalCap": "5000000", + "notionalFloor": "800000", "maintMarginRatio": "0.01", - "cum": "1025.0" + "cum": "3100.0" } }, { "tier": 4.0, "currency": "USDT", - "minNotional": 2000000.0, - "maxNotional": 15000000.0, + "minNotional": 5000000.0, + "maxNotional": 30000000.0, "maintenanceMarginRate": 0.02, "maxLeverage": 20.0, "info": { "bracket": "4", "initialLeverage": "20", - "notionalCap": "15000000", - "notionalFloor": "2000000", + "notionalCap": "30000000", + "notionalFloor": "5000000", "maintMarginRatio": "0.02", - "cum": "21025.0" + "cum": "53100.0" } }, { "tier": 5.0, "currency": "USDT", - "minNotional": 15000000.0, - "maxNotional": 30000000.0, + "minNotional": 30000000.0, + "maxNotional": 50000000.0, "maintenanceMarginRate": 0.05, "maxLeverage": 10.0, "info": { "bracket": "5", "initialLeverage": "10", - "notionalCap": "30000000", - "notionalFloor": "15000000", + "notionalCap": "50000000", + "notionalFloor": "30000000", "maintMarginRatio": "0.05", - "cum": "471025.0" + "cum": "953100.0" } }, { "tier": 6.0, "currency": "USDT", - "minNotional": 30000000.0, - "maxNotional": 60000000.0, + "minNotional": 50000000.0, + "maxNotional": 70000000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { "bracket": "6", "initialLeverage": "5", - "notionalCap": "60000000", - "notionalFloor": "30000000", + "notionalCap": "70000000", + "notionalFloor": "50000000", "maintMarginRatio": "0.1", - "cum": "1971025.0" + "cum": "3453100.0" } }, { "tier": 7.0, "currency": "USDT", - "minNotional": 60000000.0, + "minNotional": 70000000.0, "maxNotional": 80000000.0, "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, @@ -12287,9 +12743,9 @@ "bracket": "7", "initialLeverage": "4", "notionalCap": "80000000", - "notionalFloor": "60000000", + "notionalFloor": "70000000", "maintMarginRatio": "0.125", - "cum": "3471025.0" + "cum": "5203100.0" } }, { @@ -12305,7 +12761,7 @@ "notionalCap": "100000000", "notionalFloor": "80000000", "maintMarginRatio": "0.15", - "cum": "5471025.0" + "cum": "7203100.0" } }, { @@ -12321,7 +12777,7 @@ "notionalCap": "150000000", "notionalFloor": "100000000", "maintMarginRatio": "0.25", - "cum": "15471025.0" + "cum": "17203100.0" } }, { @@ -12337,121 +12793,7 @@ "notionalCap": "300000000", "notionalFloor": "150000000", "maintMarginRatio": "0.5", - "cum": "52971025.0" - } - } - ], - "ETH/USDT:USDT-230929": [ - { - "tier": 1.0, - "currency": "USDT", - "minNotional": 0.0, - "maxNotional": 375000.0, - "maintenanceMarginRate": 0.02, - "maxLeverage": 25.0, - "info": { - "bracket": "1", - "initialLeverage": "25", - "notionalCap": "375000", - "notionalFloor": "0", - "maintMarginRatio": "0.02", - "cum": "0.0" - } - }, - { - "tier": 2.0, - "currency": "USDT", - "minNotional": 375000.0, - "maxNotional": 2000000.0, - "maintenanceMarginRate": 0.05, - "maxLeverage": 10.0, - "info": { - "bracket": "2", - "initialLeverage": "10", - "notionalCap": "2000000", - "notionalFloor": "375000", - "maintMarginRatio": "0.05", - "cum": "11250.0" - } - }, - { - "tier": 3.0, - "currency": "USDT", - "minNotional": 2000000.0, - "maxNotional": 4000000.0, - "maintenanceMarginRate": 0.1, - "maxLeverage": 5.0, - "info": { - "bracket": "3", - "initialLeverage": "5", - "notionalCap": "4000000", - "notionalFloor": "2000000", - "maintMarginRatio": "0.1", - "cum": "111250.0" - } - }, - { - "tier": 4.0, - "currency": "USDT", - "minNotional": 4000000.0, - "maxNotional": 10000000.0, - "maintenanceMarginRate": 0.125, - "maxLeverage": 4.0, - "info": { - "bracket": "4", - "initialLeverage": "4", - "notionalCap": "10000000", - "notionalFloor": "4000000", - "maintMarginRatio": "0.125", - "cum": "211250.0" - } - }, - { - "tier": 5.0, - "currency": "USDT", - "minNotional": 10000000.0, - "maxNotional": 20000000.0, - "maintenanceMarginRate": 0.15, - "maxLeverage": 3.0, - "info": { - "bracket": "5", - "initialLeverage": "3", - "notionalCap": "20000000", - "notionalFloor": "10000000", - "maintMarginRatio": "0.15", - "cum": "461250.0" - } - }, - { - "tier": 6.0, - "currency": "USDT", - "minNotional": 20000000.0, - "maxNotional": 40000000.0, - "maintenanceMarginRate": 0.25, - "maxLeverage": 2.0, - "info": { - "bracket": "6", - "initialLeverage": "2", - "notionalCap": "40000000", - "notionalFloor": "20000000", - "maintMarginRatio": "0.25", - "cum": "2461250.0" - } - }, - { - "tier": 7.0, - "currency": "USDT", - "minNotional": 40000000.0, - "maxNotional": 120000000.0, - "maintenanceMarginRate": 0.5, - "maxLeverage": 1.0, - "info": { - "bracket": "7", - "initialLeverage": "1", - "notionalCap": "120000000", - "notionalFloor": "40000000", - "maintMarginRatio": "0.5", - "cum": "12461250.0" + "cum": "54703100.0" } } ], @@ -12715,6 +13057,120 @@ } } ], + "ETHW/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "25000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], "FET/USDT:USDT": [ { "tier": 1.0, @@ -16383,6 +16839,120 @@ } } ], + "ILV/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "25000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], "IMX/USDT:USDT": [ { "tier": 1.0, @@ -17133,6 +17703,234 @@ } } ], + "JTO/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "25000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], + "KAS/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "25000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], "KAVA/USDT:USDT": [ { "tier": 1.0, @@ -17367,14 +18165,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.01, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, "info": { "bracket": "1", - "initialLeverage": "25", + "initialLeverage": "50", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.01", + "maintMarginRatio": "0.015", "cum": "0.0" } }, @@ -17382,22 +18180,22 @@ "tier": 2.0, "currency": "USDT", "minNotional": 5000.0, - "maxNotional": 25000.0, + "maxNotional": 50000.0, "maintenanceMarginRate": 0.025, "maxLeverage": 20.0, "info": { "bracket": "2", "initialLeverage": "20", - "notionalCap": "25000", + "notionalCap": "50000", "notionalFloor": "5000", "maintMarginRatio": "0.025", - "cum": "75.0" + "cum": "50.0" } }, { "tier": 3.0, "currency": "USDT", - "minNotional": 25000.0, + "minNotional": 50000.0, "maxNotional": 400000.0, "maintenanceMarginRate": 0.05, "maxLeverage": 10.0, @@ -17405,9 +18203,9 @@ "bracket": "3", "initialLeverage": "10", "notionalCap": "400000", - "notionalFloor": "25000", + "notionalFloor": "50000", "maintMarginRatio": "0.05", - "cum": "700.0" + "cum": "1300.0" } }, { @@ -17423,7 +18221,7 @@ "notionalCap": "1000000", "notionalFloor": "400000", "maintMarginRatio": "0.1", - "cum": "20700.0" + "cum": "21300.0" } }, { @@ -17439,7 +18237,7 @@ "notionalCap": "2000000", "notionalFloor": "1000000", "maintMarginRatio": "0.125", - "cum": "45700.0" + "cum": "46300.0" } }, { @@ -17455,7 +18253,7 @@ "notionalCap": "6000000", "notionalFloor": "2000000", "maintMarginRatio": "0.25", - "cum": "295700.0" + "cum": "296300.0" } }, { @@ -17471,7 +18269,7 @@ "notionalCap": "10000000", "notionalFloor": "6000000", "maintMarginRatio": "0.5", - "cum": "1795700.0" + "cum": "1796300.0" } } ], @@ -17579,14 +18377,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.01, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, "info": { "bracket": "1", - "initialLeverage": "25", + "initialLeverage": "50", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.01", + "maintMarginRatio": "0.015", "cum": "0.0" } }, @@ -17603,7 +18401,7 @@ "notionalCap": "25000", "notionalFloor": "5000", "maintMarginRatio": "0.025", - "cum": "75.0" + "cum": "50.0" } }, { @@ -17619,7 +18417,7 @@ "notionalCap": "100000", "notionalFloor": "25000", "maintMarginRatio": "0.05", - "cum": "700.0" + "cum": "675.0" } }, { @@ -17635,7 +18433,7 @@ "notionalCap": "250000", "notionalFloor": "100000", "maintMarginRatio": "0.1", - "cum": "5700.0" + "cum": "5675.0" } }, { @@ -17651,7 +18449,7 @@ "notionalCap": "1000000", "notionalFloor": "250000", "maintMarginRatio": "0.125", - "cum": "11950.0" + "cum": "11925.0" } }, { @@ -17667,7 +18465,7 @@ "notionalCap": "5000000", "notionalFloor": "1000000", "maintMarginRatio": "0.5", - "cum": "386950.0" + "cum": "386925.0" } } ], @@ -20113,6 +20911,120 @@ } } ], + "MBL/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "25000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], "MDT/USDT:USDT": [ { "tier": 1.0, @@ -20227,20 +21139,20 @@ } } ], - "MINA/USDT:USDT": [ + "MEME/USDT:USDT": [ { "tier": 1.0, "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.01, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, "info": { "bracket": "1", - "initialLeverage": "25", + "initialLeverage": "50", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.01", + "maintMarginRatio": "0.015", "cum": "0.0" } }, @@ -20257,13 +21169,127 @@ "notionalCap": "25000", "notionalFloor": "5000", "maintMarginRatio": "0.025", - "cum": "75.0" + "cum": "50.0" } }, { "tier": 3.0, "currency": "USDT", "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], + "MINA/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "50000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 50000.0, "maxNotional": 400000.0, "maintenanceMarginRate": 0.05, "maxLeverage": 10.0, @@ -20271,9 +21297,9 @@ "bracket": "3", "initialLeverage": "10", "notionalCap": "400000", - "notionalFloor": "25000", + "notionalFloor": "50000", "maintMarginRatio": "0.05", - "cum": "700.0" + "cum": "1300.0" } }, { @@ -20289,7 +21315,7 @@ "notionalCap": "1000000", "notionalFloor": "400000", "maintMarginRatio": "0.1", - "cum": "20700.0" + "cum": "21300.0" } }, { @@ -20305,7 +21331,7 @@ "notionalCap": "2000000", "notionalFloor": "1000000", "maintMarginRatio": "0.125", - "cum": "45700.0" + "cum": "46300.0" } }, { @@ -20321,7 +21347,7 @@ "notionalCap": "6000000", "notionalFloor": "2000000", "maintMarginRatio": "0.25", - "cum": "295700.0" + "cum": "296300.0" } }, { @@ -20337,7 +21363,7 @@ "notionalCap": "10000000", "notionalFloor": "6000000", "maintMarginRatio": "0.5", - "cum": "1795700.0" + "cum": "1796300.0" } } ], @@ -21155,6 +22181,120 @@ } } ], + "NTRN/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "25000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], "OCEAN/USDT:USDT": [ { "tier": 1.0, @@ -21563,20 +22703,20 @@ } } ], - "ONT/USDT:USDT": [ + "ONG/USDT:USDT": [ { "tier": 1.0, "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.01, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, "info": { "bracket": "1", - "initialLeverage": "25", + "initialLeverage": "50", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.01", + "maintMarginRatio": "0.015", "cum": "0.0" } }, @@ -21593,13 +22733,127 @@ "notionalCap": "25000", "notionalFloor": "5000", "maintMarginRatio": "0.025", - "cum": "75.0" + "cum": "50.0" } }, { "tier": 3.0, "currency": "USDT", "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], + "ONT/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "50000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 50000.0, "maxNotional": 600000.0, "maintenanceMarginRate": 0.05, "maxLeverage": 10.0, @@ -21607,9 +22861,9 @@ "bracket": "3", "initialLeverage": "10", "notionalCap": "600000", - "notionalFloor": "25000", + "notionalFloor": "50000", "maintMarginRatio": "0.05", - "cum": "700.0" + "cum": "1300.0" } }, { @@ -21625,7 +22879,7 @@ "notionalCap": "1600000", "notionalFloor": "600000", "maintMarginRatio": "0.1", - "cum": "30700.0" + "cum": "31300.0" } }, { @@ -21641,7 +22895,7 @@ "notionalCap": "2000000", "notionalFloor": "1600000", "maintMarginRatio": "0.125", - "cum": "70700.0" + "cum": "71300.0" } }, { @@ -21657,7 +22911,7 @@ "notionalCap": "6000000", "notionalFloor": "2000000", "maintMarginRatio": "0.25", - "cum": "320700.0" + "cum": "321300.0" } }, { @@ -21673,7 +22927,7 @@ "notionalCap": "10000000", "notionalFloor": "6000000", "maintMarginRatio": "0.5", - "cum": "1820700.0" + "cum": "1821300.0" } } ], @@ -21921,6 +23175,136 @@ } } ], + "ORDI/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.02, + "maxLeverage": 25.0, + "info": { + "bracket": "2", + "initialLeverage": "25", + "notionalCap": "50000", + "notionalFloor": "5000", + "maintMarginRatio": "0.02", + "cum": "25.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 50000.0, + "maxNotional": 400000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "3", + "initialLeverage": "20", + "notionalCap": "400000", + "notionalFloor": "50000", + "maintMarginRatio": "0.025", + "cum": "275.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 400000.0, + "maxNotional": 800000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "4", + "initialLeverage": "10", + "notionalCap": "800000", + "notionalFloor": "400000", + "maintMarginRatio": "0.05", + "cum": "10275.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 800000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "5", + "initialLeverage": "5", + "notionalCap": "2000000", + "notionalFloor": "800000", + "maintMarginRatio": "0.1", + "cum": "50275.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 2000000.0, + "maxNotional": 4000000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "6", + "initialLeverage": "4", + "notionalCap": "4000000", + "notionalFloor": "2000000", + "maintMarginRatio": "0.125", + "cum": "100275.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 4000000.0, + "maxNotional": 8000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "7", + "initialLeverage": "2", + "notionalCap": "8000000", + "notionalFloor": "4000000", + "maintMarginRatio": "0.25", + "cum": "600275.0" + } + }, + { + "tier": 8.0, + "currency": "USDT", + "minNotional": 8000000.0, + "maxNotional": 15000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "8", + "initialLeverage": "1", + "notionalCap": "15000000", + "notionalFloor": "8000000", + "maintMarginRatio": "0.5", + "cum": "2600275.0" + } + } + ], "OXT/USDT:USDT": [ { "tier": 1.0, @@ -22801,6 +24185,120 @@ } } ], + "PYTH/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "25000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], "QNT/USDT:USDT": [ { "tier": 1.0, @@ -22905,14 +24403,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.01, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, "info": { "bracket": "1", - "initialLeverage": "25", + "initialLeverage": "50", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.01", + "maintMarginRatio": "0.015", "cum": "0.0" } }, @@ -22929,7 +24427,7 @@ "notionalCap": "25000", "notionalFloor": "5000", "maintMarginRatio": "0.025", - "cum": "75.0" + "cum": "50.0" } }, { @@ -22945,7 +24443,7 @@ "notionalCap": "200000", "notionalFloor": "25000", "maintMarginRatio": "0.05", - "cum": "700.0" + "cum": "675.0" } }, { @@ -22961,7 +24459,7 @@ "notionalCap": "500000", "notionalFloor": "200000", "maintMarginRatio": "0.1", - "cum": "10700.0" + "cum": "10675.0" } }, { @@ -22977,7 +24475,7 @@ "notionalCap": "1000000", "notionalFloor": "500000", "maintMarginRatio": "0.125", - "cum": "23200.0" + "cum": "23175.0" } }, { @@ -22993,7 +24491,7 @@ "notionalCap": "3000000", "notionalFloor": "1000000", "maintMarginRatio": "0.25", - "cum": "148200.0" + "cum": "148175.0" } }, { @@ -23009,7 +24507,7 @@ "notionalCap": "5000000", "notionalFloor": "3000000", "maintMarginRatio": "0.5", - "cum": "898200.0" + "cum": "898175.0" } } ], @@ -24969,6 +26467,234 @@ } } ], + "SLP/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "25000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], + "SNT/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "25000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], "SNX/USDT:USDT": [ { "tier": 1.0, @@ -25653,6 +27379,120 @@ } } ], + "STEEM/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "25000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], "STG/USDT:USDT": [ { "tier": 1.0, @@ -26435,20 +28275,20 @@ } } ], - "SUSHI/USDT:USDT": [ + "SUPER/USDT:USDT": [ { "tier": 1.0, "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.01, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, "info": { "bracket": "1", - "initialLeverage": "25", + "initialLeverage": "50", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.01", + "maintMarginRatio": "0.015", "cum": "0.0" } }, @@ -26465,13 +28305,127 @@ "notionalCap": "25000", "notionalFloor": "5000", "maintMarginRatio": "0.025", - "cum": "75.0" + "cum": "50.0" } }, { "tier": 3.0, "currency": "USDT", "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], + "SUSHI/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "50000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 50000.0, "maxNotional": 600000.0, "maintenanceMarginRate": 0.05, "maxLeverage": 10.0, @@ -26479,9 +28433,9 @@ "bracket": "3", "initialLeverage": "10", "notionalCap": "600000", - "notionalFloor": "25000", + "notionalFloor": "50000", "maintMarginRatio": "0.05", - "cum": "700.0" + "cum": "1300.0" } }, { @@ -26497,7 +28451,7 @@ "notionalCap": "1600000", "notionalFloor": "600000", "maintMarginRatio": "0.1", - "cum": "30700.0" + "cum": "31300.0" } }, { @@ -26513,7 +28467,7 @@ "notionalCap": "2000000", "notionalFloor": "1600000", "maintMarginRatio": "0.125", - "cum": "70700.0" + "cum": "71300.0" } }, { @@ -26529,7 +28483,7 @@ "notionalCap": "6000000", "notionalFloor": "2000000", "maintMarginRatio": "0.25", - "cum": "320700.0" + "cum": "321300.0" } }, { @@ -26545,7 +28499,7 @@ "notionalCap": "10000000", "notionalFloor": "6000000", "maintMarginRatio": "0.5", - "cum": "1820700.0" + "cum": "1821300.0" } } ], @@ -26891,6 +28845,120 @@ } } ], + "TIA/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "25000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], "TLM/BUSD:BUSD": [ { "tier": 1.0, @@ -27103,7 +29171,7 @@ } } ], - "TOMO/USDT:USDT": [ + "TOKEN/USDT:USDT": [ { "tier": 1.0, "currency": "USDT", @@ -27124,13 +29192,13 @@ "tier": 2.0, "currency": "USDT", "minNotional": 5000.0, - "maxNotional": 50000.0, + "maxNotional": 25000.0, "maintenanceMarginRate": 0.025, "maxLeverage": 20.0, "info": { "bracket": "2", "initialLeverage": "20", - "notionalCap": "50000", + "notionalCap": "25000", "notionalFloor": "5000", "maintMarginRatio": "0.025", "cum": "50.0" @@ -27139,81 +29207,179 @@ { "tier": 3.0, "currency": "USDT", - "minNotional": 50000.0, - "maxNotional": 600000.0, + "minNotional": 25000.0, + "maxNotional": 100000.0, "maintenanceMarginRate": 0.05, "maxLeverage": 10.0, "info": { "bracket": "3", "initialLeverage": "10", - "notionalCap": "600000", - "notionalFloor": "50000", + "notionalCap": "100000", + "notionalFloor": "25000", "maintMarginRatio": "0.05", - "cum": "1300.0" + "cum": "675.0" } }, { "tier": 4.0, "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], + "TOMO/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 50000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 8.0, + "info": { + "bracket": "1", + "initialLeverage": "8", + "notionalCap": "50000", + "notionalFloor": "0", + "maintMarginRatio": "0.025", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 50000.0, + "maxNotional": 600000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 6.0, + "info": { + "bracket": "2", + "initialLeverage": "6", + "notionalCap": "600000", + "notionalFloor": "50000", + "maintMarginRatio": "0.05", + "cum": "1250.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", "minNotional": 600000.0, "maxNotional": 1280000.0, "maintenanceMarginRate": 0.1, "maxLeverage": 5.0, "info": { - "bracket": "4", + "bracket": "3", "initialLeverage": "5", "notionalCap": "1280000", "notionalFloor": "600000", "maintMarginRatio": "0.1", - "cum": "31300.0" + "cum": "31250.0" } }, { - "tier": 5.0, + "tier": 4.0, "currency": "USDT", "minNotional": 1280000.0, "maxNotional": 1600000.0, "maintenanceMarginRate": 0.125, "maxLeverage": 4.0, "info": { - "bracket": "5", + "bracket": "4", "initialLeverage": "4", "notionalCap": "1600000", "notionalFloor": "1280000", "maintMarginRatio": "0.125", - "cum": "63300.0" + "cum": "63250.0" } }, { - "tier": 6.0, + "tier": 5.0, "currency": "USDT", "minNotional": 1600000.0, "maxNotional": 4800000.0, "maintenanceMarginRate": 0.25, "maxLeverage": 2.0, "info": { - "bracket": "6", + "bracket": "5", "initialLeverage": "2", "notionalCap": "4800000", "notionalFloor": "1600000", "maintMarginRatio": "0.25", - "cum": "263300.0" + "cum": "263250.0" } }, { - "tier": 7.0, + "tier": 6.0, "currency": "USDT", "minNotional": 4800000.0, - "maxNotional": 8000000.0, + "maxNotional": 5000000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { - "bracket": "7", + "bracket": "6", "initialLeverage": "1", - "notionalCap": "8000000", + "notionalCap": "5000000", "notionalFloor": "4800000", "maintMarginRatio": "0.5", - "cum": "1463300.0" + "cum": "1463250.0" } } ], @@ -27705,6 +29871,120 @@ } } ], + "TWT/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "25000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], "UMA/USDT:USDT": [ { "tier": 1.0, @@ -28275,6 +30555,120 @@ } } ], + "USTC/USDT:USDT": [ + { + "tier": 1.0, + "currency": "USDT", + "minNotional": 0.0, + "maxNotional": 5000.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, + "info": { + "bracket": "1", + "initialLeverage": "50", + "notionalCap": "5000", + "notionalFloor": "0", + "maintMarginRatio": "0.015", + "cum": "0.0" + } + }, + { + "tier": 2.0, + "currency": "USDT", + "minNotional": 5000.0, + "maxNotional": 25000.0, + "maintenanceMarginRate": 0.025, + "maxLeverage": 20.0, + "info": { + "bracket": "2", + "initialLeverage": "20", + "notionalCap": "25000", + "notionalFloor": "5000", + "maintMarginRatio": "0.025", + "cum": "50.0" + } + }, + { + "tier": 3.0, + "currency": "USDT", + "minNotional": 25000.0, + "maxNotional": 100000.0, + "maintenanceMarginRate": 0.05, + "maxLeverage": 10.0, + "info": { + "bracket": "3", + "initialLeverage": "10", + "notionalCap": "100000", + "notionalFloor": "25000", + "maintMarginRatio": "0.05", + "cum": "675.0" + } + }, + { + "tier": 4.0, + "currency": "USDT", + "minNotional": 100000.0, + "maxNotional": 200000.0, + "maintenanceMarginRate": 0.1, + "maxLeverage": 5.0, + "info": { + "bracket": "4", + "initialLeverage": "5", + "notionalCap": "200000", + "notionalFloor": "100000", + "maintMarginRatio": "0.1", + "cum": "5675.0" + } + }, + { + "tier": 5.0, + "currency": "USDT", + "minNotional": 200000.0, + "maxNotional": 500000.0, + "maintenanceMarginRate": 0.125, + "maxLeverage": 4.0, + "info": { + "bracket": "5", + "initialLeverage": "4", + "notionalCap": "500000", + "notionalFloor": "200000", + "maintMarginRatio": "0.125", + "cum": "10675.0" + } + }, + { + "tier": 6.0, + "currency": "USDT", + "minNotional": 500000.0, + "maxNotional": 1000000.0, + "maintenanceMarginRate": 0.25, + "maxLeverage": 2.0, + "info": { + "bracket": "6", + "initialLeverage": "2", + "notionalCap": "1000000", + "notionalFloor": "500000", + "maintMarginRatio": "0.25", + "cum": "73175.0" + } + }, + { + "tier": 7.0, + "currency": "USDT", + "minNotional": 1000000.0, + "maxNotional": 2000000.0, + "maintenanceMarginRate": 0.5, + "maxLeverage": 1.0, + "info": { + "bracket": "7", + "initialLeverage": "1", + "notionalCap": "2000000", + "notionalFloor": "1000000", + "maintMarginRatio": "0.5", + "cum": "323175.0" + } + } + ], "VET/USDT:USDT": [ { "tier": 1.0, @@ -29340,10 +31734,10 @@ "minNotional": 0.0, "maxNotional": 100000.0, "maintenanceMarginRate": 0.025, - "maxLeverage": 20.0, + "maxLeverage": 11.0, "info": { "bracket": "1", - "initialLeverage": "20", + "initialLeverage": "11", "notionalCap": "100000", "notionalFloor": "0", "maintMarginRatio": "0.025", @@ -29418,13 +31812,13 @@ "tier": 6.0, "currency": "BUSD", "minNotional": 5000000.0, - "maxNotional": 8000000.0, + "maxNotional": 5500000.0, "maintenanceMarginRate": 0.5, "maxLeverage": 1.0, "info": { "bracket": "6", "initialLeverage": "1", - "notionalCap": "8000000", + "notionalCap": "5500000", "notionalFloor": "5000000", "maintMarginRatio": "0.5", "cum": "1527500.0" @@ -29941,14 +32335,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.01, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, "info": { "bracket": "1", - "initialLeverage": "25", + "initialLeverage": "50", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.01", + "maintMarginRatio": "0.015", "cum": "0.0" } }, @@ -29956,22 +32350,22 @@ "tier": 2.0, "currency": "USDT", "minNotional": 5000.0, - "maxNotional": 25000.0, + "maxNotional": 50000.0, "maintenanceMarginRate": 0.025, "maxLeverage": 20.0, "info": { "bracket": "2", "initialLeverage": "20", - "notionalCap": "25000", + "notionalCap": "50000", "notionalFloor": "5000", "maintMarginRatio": "0.025", - "cum": "75.0" + "cum": "50.0" } }, { "tier": 3.0, "currency": "USDT", - "minNotional": 25000.0, + "minNotional": 50000.0, "maxNotional": 400000.0, "maintenanceMarginRate": 0.05, "maxLeverage": 10.0, @@ -29979,9 +32373,9 @@ "bracket": "3", "initialLeverage": "10", "notionalCap": "400000", - "notionalFloor": "25000", + "notionalFloor": "50000", "maintMarginRatio": "0.05", - "cum": "700.0" + "cum": "1300.0" } }, { @@ -29997,7 +32391,7 @@ "notionalCap": "1000000", "notionalFloor": "400000", "maintMarginRatio": "0.1", - "cum": "20700.0" + "cum": "21300.0" } }, { @@ -30013,7 +32407,7 @@ "notionalCap": "2000000", "notionalFloor": "1000000", "maintMarginRatio": "0.125", - "cum": "45700.0" + "cum": "46300.0" } }, { @@ -30029,7 +32423,7 @@ "notionalCap": "6000000", "notionalFloor": "2000000", "maintMarginRatio": "0.25", - "cum": "295700.0" + "cum": "296300.0" } }, { @@ -30045,7 +32439,7 @@ "notionalCap": "10000000", "notionalFloor": "6000000", "maintMarginRatio": "0.5", - "cum": "1795700.0" + "cum": "1796300.0" } } ], @@ -30381,14 +32775,14 @@ "currency": "USDT", "minNotional": 0.0, "maxNotional": 5000.0, - "maintenanceMarginRate": 0.01, - "maxLeverage": 25.0, + "maintenanceMarginRate": 0.015, + "maxLeverage": 50.0, "info": { "bracket": "1", - "initialLeverage": "25", + "initialLeverage": "50", "notionalCap": "5000", "notionalFloor": "0", - "maintMarginRatio": "0.01", + "maintMarginRatio": "0.015", "cum": "0.0" } }, @@ -30396,22 +32790,22 @@ "tier": 2.0, "currency": "USDT", "minNotional": 5000.0, - "maxNotional": 25000.0, + "maxNotional": 50000.0, "maintenanceMarginRate": 0.025, "maxLeverage": 20.0, "info": { "bracket": "2", "initialLeverage": "20", - "notionalCap": "25000", + "notionalCap": "50000", "notionalFloor": "5000", "maintMarginRatio": "0.025", - "cum": "75.0" + "cum": "50.0" } }, { "tier": 3.0, "currency": "USDT", - "minNotional": 25000.0, + "minNotional": 50000.0, "maxNotional": 600000.0, "maintenanceMarginRate": 0.05, "maxLeverage": 10.0, @@ -30419,9 +32813,9 @@ "bracket": "3", "initialLeverage": "10", "notionalCap": "600000", - "notionalFloor": "25000", + "notionalFloor": "50000", "maintMarginRatio": "0.05", - "cum": "700.0" + "cum": "1300.0" } }, { @@ -30437,7 +32831,7 @@ "notionalCap": "1600000", "notionalFloor": "600000", "maintMarginRatio": "0.1", - "cum": "30700.0" + "cum": "31300.0" } }, { @@ -30453,7 +32847,7 @@ "notionalCap": "2000000", "notionalFloor": "1600000", "maintMarginRatio": "0.125", - "cum": "70700.0" + "cum": "71300.0" } }, { @@ -30469,7 +32863,7 @@ "notionalCap": "6000000", "notionalFloor": "2000000", "maintMarginRatio": "0.25", - "cum": "320700.0" + "cum": "321300.0" } }, { @@ -30485,7 +32879,7 @@ "notionalCap": "10000000", "notionalFloor": "6000000", "maintMarginRatio": "0.5", - "cum": "1820700.0" + "cum": "1821300.0" } } ], From 47a952e41cba4e87fcc92a519ca5c3b36e68381e Mon Sep 17 00:00:00 2001 From: Matthias Date: Tue, 12 Dec 2023 22:43:46 +0100 Subject: [PATCH 46/86] Don't use config['stake_amount'] in wallets --- freqtrade/freqtradebot.py | 3 ++- freqtrade/optimize/backtesting.py | 3 ++- freqtrade/rpc/rpc.py | 3 ++- freqtrade/wallets.py | 13 +++++++------ 4 files changed, 13 insertions(+), 9 deletions(-) diff --git a/freqtrade/freqtradebot.py b/freqtrade/freqtradebot.py index b6ab24529..7b820bfc1 100644 --- a/freqtrade/freqtradebot.py +++ b/freqtrade/freqtradebot.py @@ -580,7 +580,8 @@ class FreqtradeBot(LoggingMixin): else: self.log_once(f"Pair {pair} is currently locked.", logger.info) return False - stake_amount = self.wallets.get_trade_stake_amount(pair, self.edge) + stake_amount = self.wallets.get_trade_stake_amount( + pair, self.config['max_open_trades'], self.edge) bid_check_dom = self.config.get('entry_pricing', {}).get('check_depth_of_market', {}) if ((bid_check_dom.get('enabled', False)) and diff --git a/freqtrade/optimize/backtesting.py b/freqtrade/optimize/backtesting.py index cc35770b7..83e8d3dfe 100644 --- a/freqtrade/optimize/backtesting.py +++ b/freqtrade/optimize/backtesting.py @@ -798,7 +798,8 @@ class Backtesting: leverage = trade.leverage if trade else 1.0 if not pos_adjust: try: - stake_amount = self.wallets.get_trade_stake_amount(pair, None, update=False) + stake_amount = self.wallets.get_trade_stake_amount( + pair, self.strategy.max_open_trades, update=False) except DependencyException: return 0, 0, 0, 0 diff --git a/freqtrade/rpc/rpc.py b/freqtrade/rpc/rpc.py index ef789db52..8437405d7 100644 --- a/freqtrade/rpc/rpc.py +++ b/freqtrade/rpc/rpc.py @@ -914,7 +914,8 @@ class RPC: if not stake_amount: # gen stake amount - stake_amount = self._freqtrade.wallets.get_trade_stake_amount(pair) + stake_amount = self._freqtrade.wallets.get_trade_stake_amount( + pair, self._config['max_open_trades']) # execute buy if not order_type: diff --git a/freqtrade/wallets.py b/freqtrade/wallets.py index ceef8d158..0f41114ed 100644 --- a/freqtrade/wallets.py +++ b/freqtrade/wallets.py @@ -6,7 +6,7 @@ from copy import deepcopy from datetime import datetime, timedelta from typing import Dict, NamedTuple, Optional -from freqtrade.constants import UNLIMITED_STAKE_AMOUNT, Config +from freqtrade.constants import UNLIMITED_STAKE_AMOUNT, Config, IntOrInf from freqtrade.enums import RunMode, TradingMode from freqtrade.exceptions import DependencyException from freqtrade.exchange import Exchange @@ -262,15 +262,15 @@ class Wallets: return min(self.get_total_stake_amount() - Trade.total_open_trades_stakes(), free) def _calculate_unlimited_stake_amount(self, available_amount: float, - val_tied_up: float) -> float: + val_tied_up: float, max_open_trades: IntOrInf) -> float: """ Calculate stake amount for "unlimited" stake amount :return: 0 if max number of trades reached, else stake_amount to use. """ - if self._config['max_open_trades'] == 0: + if max_open_trades == 0: return 0 - possible_stake = (available_amount + val_tied_up) / self._config['max_open_trades'] + possible_stake = (available_amount + val_tied_up) / max_open_trades # Theoretical amount can be above available amount - therefore limit to available amount! return min(possible_stake, available_amount) @@ -298,7 +298,8 @@ class Wallets: return stake_amount - def get_trade_stake_amount(self, pair: str, edge=None, update: bool = True) -> float: + def get_trade_stake_amount( + self, pair: str, max_open_trades: IntOrInf, edge=None, update: bool = True) -> float: """ Calculate stake amount for the trade :return: float: Stake amount @@ -322,7 +323,7 @@ class Wallets: stake_amount = self._config['stake_amount'] if stake_amount == UNLIMITED_STAKE_AMOUNT: stake_amount = self._calculate_unlimited_stake_amount( - available_amount, val_tied_up) + available_amount, val_tied_up, max_open_trades) return self._check_available_stake_amount(stake_amount, available_amount) From cfd5af67ca045381ee673f4d9b355a30b31c8f99 Mon Sep 17 00:00:00 2001 From: Matthias Date: Wed, 13 Dec 2023 06:51:26 +0100 Subject: [PATCH 47/86] Add max-open-trades param to get_trade_stake_amount --- tests/test_freqtradebot.py | 13 +++++++------ tests/test_integration.py | 4 ++-- tests/test_wallets.py | 15 ++++++--------- 3 files changed, 15 insertions(+), 17 deletions(-) diff --git a/tests/test_freqtradebot.py b/tests/test_freqtradebot.py index c9cb86cc0..70c3fee3e 100644 --- a/tests/test_freqtradebot.py +++ b/tests/test_freqtradebot.py @@ -146,7 +146,7 @@ def test_get_trade_stake_amount(default_conf_usdt, mocker) -> None: freqtrade = FreqtradeBot(default_conf_usdt) - result = freqtrade.wallets.get_trade_stake_amount('ETH/USDT') + result = freqtrade.wallets.get_trade_stake_amount('ETH/USDT', 1) assert result == default_conf_usdt['stake_amount'] @@ -211,12 +211,12 @@ def test_check_available_stake_amount( if expected[i] is not None: limit_buy_order_usdt_open['id'] = str(i) - result = freqtrade.wallets.get_trade_stake_amount('ETH/USDT') + result = freqtrade.wallets.get_trade_stake_amount('ETH/USDT', 1) assert pytest.approx(result) == expected[i] freqtrade.execute_entry('ETH/USDT', result) else: with pytest.raises(DependencyException): - freqtrade.wallets.get_trade_stake_amount('ETH/USDT') + freqtrade.wallets.get_trade_stake_amount('ETH/USDT', 1) def test_edge_called_in_process(mocker, edge_conf) -> None: @@ -238,9 +238,9 @@ def test_edge_overrides_stake_amount(mocker, edge_conf) -> None: freqtrade = FreqtradeBot(edge_conf) assert freqtrade.wallets.get_trade_stake_amount( - 'NEO/BTC', freqtrade.edge) == (999.9 * 0.5 * 0.01) / 0.20 + 'NEO/BTC', 1, freqtrade.edge) == (999.9 * 0.5 * 0.01) / 0.20 assert freqtrade.wallets.get_trade_stake_amount( - 'LTC/BTC', freqtrade.edge) == (999.9 * 0.5 * 0.01) / 0.21 + 'LTC/BTC', 1, freqtrade.edge) == (999.9 * 0.5 * 0.01) / 0.21 @pytest.mark.parametrize('buy_price_mult,ignore_strat_sl', [ @@ -420,7 +420,8 @@ def test_create_trade_minimal_amount( else: assert not freqtrade.create_trade('ETH/USDT') if not max_open_trades: - assert freqtrade.wallets.get_trade_stake_amount('ETH/USDT', freqtrade.edge) == 0 + assert freqtrade.wallets.get_trade_stake_amount( + 'ETH/USDT', default_conf_usdt['max_open_trades'], freqtrade.edge) == 0 @pytest.mark.parametrize('whitelist,positions', [ diff --git a/tests/test_integration.py b/tests/test_integration.py index 12647f6e2..31b742273 100644 --- a/tests/test_integration.py +++ b/tests/test_integration.py @@ -185,7 +185,7 @@ def test_forcebuy_last_unlimited(default_conf, ticker, fee, mocker, balance_rati trades = Trade.session.scalars(select(Trade)).all() assert len(trades) == 4 - assert freqtrade.wallets.get_trade_stake_amount('XRP/BTC') == result1 + assert freqtrade.wallets.get_trade_stake_amount('XRP/BTC', 5) == result1 rpc._rpc_force_entry('TKN/BTC', None) @@ -205,7 +205,7 @@ def test_forcebuy_last_unlimited(default_conf, ticker, fee, mocker, balance_rati # One trade sold assert len(trades) == 4 # stake-amount should now be reduced, since one trade was sold at a loss. - assert freqtrade.wallets.get_trade_stake_amount('XRP/BTC') < result1 + assert freqtrade.wallets.get_trade_stake_amount('XRP/BTC', 5) < result1 # Validate that balance of sold trade is not in dry-run balances anymore. bals2 = freqtrade.wallets.get_all_balances() assert bals != bals2 diff --git a/tests/test_wallets.py b/tests/test_wallets.py index 478993058..1c1a3b548 100644 --- a/tests/test_wallets.py +++ b/tests/test_wallets.py @@ -121,7 +121,7 @@ def test_get_trade_stake_amount_no_stake_amount(default_conf, mocker) -> None: freqtrade = get_patched_freqtradebot(mocker, default_conf) with pytest.raises(DependencyException, match=r'.*stake amount.*'): - freqtrade.wallets.get_trade_stake_amount('ETH/BTC') + freqtrade.wallets.get_trade_stake_amount('ETH/BTC', 1) @pytest.mark.parametrize("balance_ratio,capital,result1,result2", [ @@ -148,7 +148,6 @@ def test_get_trade_stake_amount_unlimited_amount(default_conf, ticker, balance_r conf = deepcopy(default_conf) conf['stake_amount'] = UNLIMITED_STAKE_AMOUNT conf['dry_run_wallet'] = 100 - conf['max_open_trades'] = 2 conf['tradable_balance_ratio'] = balance_ratio if capital is not None: conf['available_capital'] = capital @@ -156,30 +155,28 @@ def test_get_trade_stake_amount_unlimited_amount(default_conf, ticker, balance_r freqtrade = get_patched_freqtradebot(mocker, conf) # no open trades, order amount should be 'balance / max_open_trades' - result = freqtrade.wallets.get_trade_stake_amount('ETH/USDT') + result = freqtrade.wallets.get_trade_stake_amount('ETH/USDT', 2) assert result == result1 # create one trade, order amount should be 'balance / (max_open_trades - num_open_trades)' freqtrade.execute_entry('ETH/USDT', result) - result = freqtrade.wallets.get_trade_stake_amount('LTC/USDT') + result = freqtrade.wallets.get_trade_stake_amount('LTC/USDT', 2) assert result == result1 # create 2 trades, order amount should be None freqtrade.execute_entry('LTC/BTC', result) - result = freqtrade.wallets.get_trade_stake_amount('XRP/USDT') + result = freqtrade.wallets.get_trade_stake_amount('XRP/USDT', 2) assert result == 0 - freqtrade.config['max_open_trades'] = 3 freqtrade.config['dry_run_wallet'] = 200 freqtrade.wallets.start_cap = 200 - result = freqtrade.wallets.get_trade_stake_amount('XRP/USDT') + result = freqtrade.wallets.get_trade_stake_amount('XRP/USDT', 3) assert round(result, 4) == round(result2, 4) # set max_open_trades = None, so do not trade - freqtrade.config['max_open_trades'] = 0 - result = freqtrade.wallets.get_trade_stake_amount('NEO/USDT') + result = freqtrade.wallets.get_trade_stake_amount('NEO/USDT', 0) assert result == 0 From 71d3572c27d19c28690edbc5b42e4eadffdbe36e Mon Sep 17 00:00:00 2001 From: Matthias Date: Thu, 14 Dec 2023 18:17:10 +0100 Subject: [PATCH 48/86] Support webserver strategy without max_open_trades --- freqtrade/rpc/rpc.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/freqtrade/rpc/rpc.py b/freqtrade/rpc/rpc.py index 8437405d7..809c63e78 100644 --- a/freqtrade/rpc/rpc.py +++ b/freqtrade/rpc/rpc.py @@ -121,8 +121,8 @@ class RPC: 'stake_currency_decimals': decimals_per_coin(config['stake_currency']), 'stake_amount': str(config['stake_amount']), 'available_capital': config.get('available_capital'), - 'max_open_trades': (config['max_open_trades'] - if config['max_open_trades'] != float('inf') else -1), + 'max_open_trades': (config.get('max_open_trades', 0) + if config.get('max_open_trades', 0) != float('inf') else -1), 'minimal_roi': config['minimal_roi'].copy() if 'minimal_roi' in config else {}, 'stoploss': config.get('stoploss'), 'stoploss_on_exchange': config.get('order_types', From e3fda16d1637646567a752913da94b11d14a99d0 Mon Sep 17 00:00:00 2001 From: Matthias Date: Fri, 15 Dec 2023 06:19:50 +0100 Subject: [PATCH 49/86] Don't overpopulate points at the first iteration improves hyperopt-performance quite some. --- freqtrade/optimize/hyperopt.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/freqtrade/optimize/hyperopt.py b/freqtrade/optimize/hyperopt.py index cba38d84a..58c3fe18a 100644 --- a/freqtrade/optimize/hyperopt.py +++ b/freqtrade/optimize/hyperopt.py @@ -500,7 +500,7 @@ class Hyperopt: while i < 5 and len(asked_non_tried) < n_points: if i < 3: self.opt.cache_ = {} - asked = unique_list(self.opt.ask(n_points=n_points * 5)) + asked = unique_list(self.opt.ask(n_points=n_points * 5 if i > 0 else n_points)) is_random = [False for _ in range(len(asked))] else: asked = unique_list(self.opt.space.rvs(n_samples=n_points * 5)) From e573409925aac8172aadfe153b4474c68254b4ac Mon Sep 17 00:00:00 2001 From: Matthias Date: Fri, 6 Oct 2023 07:08:44 +0200 Subject: [PATCH 50/86] Add windows ta-lib 3.12 wheels --- .../TA_Lib-0.4.28-cp312-cp312-win_amd64.whl | Bin 0 -> 557290 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 build_helpers/TA_Lib-0.4.28-cp312-cp312-win_amd64.whl diff --git a/build_helpers/TA_Lib-0.4.28-cp312-cp312-win_amd64.whl b/build_helpers/TA_Lib-0.4.28-cp312-cp312-win_amd64.whl new file mode 100644 index 0000000000000000000000000000000000000000..81ccc4818def8f1681d12923346638dae5d7d627 GIT binary patch literal 557290 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�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 z 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

`+i`K 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%0A}{i$%>;uS z`}YA1>VT9tRRiU$C@flGIMQAFH?z@Y=ehU@63zsEYImgV0iBLGLPyWAV`$vd+4LQv z{Ns~qY=Pg5^F^wdSWWzvbM}cxxi$%-OR%ZS_X4{7TAiZHdwAERhR-nW9LzS0enhiP z^ml+R)c^l8Vj*XsCndo&s7CH*%+UyD%(sYO7H9-ByaVHomx!70Ne$)%(}H)oj=SU+ z?*UY11XH>L!;&4LfF;eVN?3AWwumKu=v^dc!aMqqI53juWy=BOvsHT;19S8GM75-CRCQv?!&6|yX_A{ zF??%vyeCa%#L(rS9iP3D@S_?Qrd5{G?sOKq5)8$e3HHiyw!L0d2>mUzufy#b?UktG z2cZXe;pg(9(EcoR5Dfhd54{F|h9i*9&zjszuykG%`ryemVY`;j-=2kZE~V{dG*820 zg~o$XDJ&dze9MzeK40rmQlkKJ`QYs>-{X+ETg}iicP!4_aZWUI*M)cRyE1b(57aXE zGPwLVR}nIIBN+Dwxt7YEhHI&Q4|FY|uRG4%-x8B3Ig%P>?zU0}eqTw;+{4LMI7{0P za6@I-#*uUVsY-MkXRx#Z_<{UfCfkSdbM@(8Uw&?uOPQaWPgCS)-(1T4Ty&ZuKd0uj z%+HR~tmWs^IeC7*7NN|~6@RcHKX3m=%g;ODd$*bA=R<)sKX2hpX8HO12$r8`2h!_v z9q+E?=hp#{xB5(z^K;c{JYz<5gSo%yH1mwPtpZ9?>v>3$p9?UxUwM<3pMN51j??7) zd@+KneM8ht5$0+&u-ZxE6JHf6PjL4k;()=h_wNcl$jIJuc?wIbvx0OSt`nmHhmqtdyUVD$vj_F!ZFD zpDT)?-J$)ImHhm3St&oyW}(x;(9@Rrxm!V&pS_{a88JV%JodlM&*5Zcy=StPpG`PF z*Le3@%g=p+y!zi&4cH17-Bo3Ybmjw4f(lE8J+wbTt+89 z7cHaC&sCZ>+ti9DzR!Q#U$dIT;bpp6N(Nw39S&VN5wX zVw#q;BZm!#zA_Hs(rZlvRs9L-X4o-B}(dq$3dui7R2`)`A+SF)_OryiD?ni|=Q zH_w4)Z`#}zHxJ;=1EKj@8Lhb=ZXV8?n~|g*t!29tq+fsk$S%B(pFP=>_Z+{{j{Y=@ z{WKbWLRqkHt#R+|;odsRX9Xsp{6+387zRv4K|Mo{p>$Y#qJiFuaE=1kx*^)nU` z!mLa9d^)m6ACJ4{GL5WH6KQ­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�L1sp>Nb-U#mT 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
CJDxejPuelsx8{ZJP=8>^DZw z&SHgLnUI;S$eR_xEeDAHE`MQjqJHsU7Xdy059VOGrm{zCCI zh@6YM*>9-LpwPyK_QNwq&@H#p!yd~Lob9Fp-!rX~Q;|SBig#^mxw;yicT>Qn&~qJ` z6}Idwn4@5V4G-c}W?ss>aoTZXH#b!opmHSWs#)6cwZrc>eG+QbKO5}t9kge*f-fQ5 z&{Si)`SOI!E1IdEWKF|4I%-6=^~kB}P*d*=ci(%`hO?Ko=JQn6*|)~$`}I(6yPXcE z?T$B}95y>Fn4A6uL6k*7Ya-nh!2=#lmn^d9=`cVZpo$wx?yW>UF~AWg##I;e`;zC= z?-?p}DcztK-(Mnk!9C|pz)kV0;O+kbs6bc0Yz)qbqY#|WTt6efJX;CQ74zKZUwQ9; zf%n3GG&uR+hp#i+BREqW@2wViKJ$mI%j$}!GVnB~pZomlT(0nn!TK4)y#?0&`g!~q z`zgma9Z}>rj-bfD?W7{7u(KE5)m+BZjCxyOnaJbb1>CcJnVMybRMc!Z3)Q?{#HqPV zQ8R9?`}rRo=lubAPwlIwW>G4hCN97%IgL%{=y;ynz*BRkW+ixP(^q+U=)E*f%naW6 z2^c@Ku>SQ{n(*^egTcNjv;Pn5PgR>)Y!uD>| z3LzMe@wNuA?JcpswBu}HBJdH|_hk09z`l+I3LmDUqPgvrwo4fmB{?RyS6VOkYg`B6 zHC?SkSdyV%(2`VM*-Aoy#5o+d@m`|2tVAy?5OVdvmt)x&Sf=#xm^NfCP#f0#Gy}`@ zt%G#1l%h-jhEx=P@Z`NvUPZf&5 z1oo4deHhrU=bN&i)YbO3K00AfO{ny5cb$BE)w1(?Ha9|<{3@}9$;EQfvP2|1hs@aq|T zFM$8E7fuxG6tE*r3h#L{8SijDVH_mf+)Iu3vp2Y4nEkFm;jd@J(|+bj0#D<5v0xZ5 zLkNbSz%I59^p z7@V(TFcjqp!H}nj`oat*>gE49h#>$mtf!i&U%k$W+AK#PyBs`SXP$aM}iQ2slit5~tqH4q%mf~I1A|~q5G=XQ?Qx115;7&Aqh?QBS8ZQQzSqCIEzwSxwX-(>PI2$O74};K^67c$y5JcEm7IH%u2qtp@fQ zW_eD+ z8rXN}!HK#ujK2SFABy_dmx8DZy^C7HL=BlG@a)0k&IjDx-91D-nW`qLW-5LE-CjY| z5=GROZ@AC@Jmw%40mSg`YNCEUg%h>8T_F2Dc-#UiF$IeK(-rr8pS-V!0}I4_xYdK#PdI3{|d8T4ffexIZfny6bQqNu4m1W_v$QO_nbQL}l7eE{JX zr6%gIiJYjX#C5jr;Aubel!xQLNG9r+uL`182m5`@z7Xu~k({XIO;OY>KcT4qiIKX= zyQrE5im0=v3p`if=WvSvw??Fgs4b?ei8_1&iW>5hASxo^^M9|ppa0__jswKEUDQPN znZSuUS6pr@yGK0z#yp+E@n0AB?_W$7fBypPuQ2;FVBfI|C+g}D`ui6@qNo*{1yQ$o z7d3#1+UyO1r6x|*oI90b)dFHBq;W zqrZRg1Ln|wnUKSs-g9VRIgEK-$l+Lkf5PCe0{kzXa3)yo2X@9!;r-?$_wQfu2}^PP ztCJe1zgkUf!qBfk!L_K|ngSZ0_ z){bhTt{;oRko+CpKNf?b$a@Y$SPmmz6LL5R;JY&TdjNkT0)xT1ogF|_cu$#$lDqyO>vn7w~1l-R$cm%^wQ`CaNF&cwm`!*pM!W2>USo*7Kd9MaO2y1h&nD=P1F^mP}EUd1yRElQFkXXQK$0|H38yg zxSFWlMscG4B(9;g08hEhlMy`ShASHYi(TeS(}(4pd0jAnGaNSnM!Ia-X2DV3wjS8V zg|iKSh_T!@&pNRFgjqKP>$>6Gp4pswp2s5K%B%JG-+Dde7+R0M|L9vR(Hkq=CF(jR zfqMaPXw`e!MzXTKI9bTk!H6zsJz ztYBC3{@Z~68j63eU?;x9{hHsEIRaBFc-qfAy$GHTzsPFKkE1#D8-w*eX5AjFKYY>S zcO6eT{;iA3?%jgQo>=eRR-q?bz3Umn^jthiV7al3!|e>XO<(lTv(qFMJ(EYEp6$1A zdd4VvE+6gw{U6@{%iur1otmDtM{s)PqzO!)I*6xVnWt{xX?8oN=cG}bo+rWj7iJv; z)|Pgho}25?_aALWJ+G_~^sMl%r^NK^GErbTjK_@w+|zA6^t?VnMNd;A>Ur&JPESeE z(>#jl`S1qk--7YqR!z?X!#O>>%@&w$0Z)&aCo6br*_P>P9Ledq0IVM|>j7Z>xDBW0 zNF(am@N3j_=$C??mEQGCV0zvdFR=9IafblzqBb6St{ShRXVEa!bNN@Co(YPccVA(8 zZv2b$pNR3_MomxKFiy|gsRGkc;Hgdx#nVXebg?zl^WX?h&lkbEHnScB)?c;e^bD$v zdLG||dd6)K^whNTs%Ik8^Mi2$%b%`uxDx=keQOUr_@dWH_=^!(T+Fs%ljBABPC;AwFyre|s*r{~o_iFJEs{W@5WXvOKdrzYx| z{w3;p{u4pZ0PlJxF+KYv2`ne`xHACvT9}8P55}tK88!sWcrZ--{V%ZZ&+Hdq{I}$O1vaV%`xRK%p^ug|==g5~mWgGfP$mZNWs>Y3|Bc~J zRGj;r|d}bayR4C-L*EsX#VBVjZ8;1&K zfxh6)SAcmFX8zX@;q+`OZ@vo5D_SV#JBDxvG$r2n128UR#!H3>FFCBon|}!AE1CI7 zmw7T<|1agtKLYbf#C%r(M(ALdeVSsw8|54z2^P&&= zBdG~=6rDoa4m=U)Itqwq;gjLmxA$t3!m3UBNDVLNN566M>;!r0gwl$W2J*CaJyVy) zRh&@+u;R4%j82=9fkYY{5Lc>B#$Z-;B6*0t0P%fu>NT13>OTM%CQf~d0!Xg&3d!sh zTHbS*#&Wp!6(NVat`hjw41PbrcSQK$$)B=UXeqpp4Pv|(@(J@H;lIt)c=zv*yz5fl z+tvxZ!@Toe$aw!gLg4KK@Y@;u0f0|O_~37I*(`194?)6Ss=Qand-TT1 z4*lx_g$3a0B=d9x$A3-T&p#yyb*(?xA7}Q*!Tv~7+8ZRho_`9W&p)lFyG z%4SmSNECQp_?5#w4Y&iFdIa&LM71FPz)GKgS}z1~Hf#SA-0eRPaUR?M5H(TFR{H)U zn!|Z^A%~IPbGVG<@ceKghyPqA@MR3X1mLG5eDJ5Au=jf@y#3w0_wWgSfrOn^dE5JO z!QlIvK;cdBDGNr=O1g`YGY~AQ>5M{U&ACHKTN}CV9_rep_@SHX=55x5$!ow=5ooljfK-MId|b67dwu zJl)0dPh(|4sk6)6{rhjc`F$`CX^aa>fm4KXpTpZe0NZ~WDXuRka}NnvdE-a8{?P~> zZ+ETOu|Y)$Z~GW*KLW=(j1aq37_(HAz_AZz{}k+BYeXX?jYh}`f2F5YA|%DJ%U|hf zec81Q{!%}Etdt_ zwHz;Z`NkG*%X9KVIY@Y5+ud zL+X`(z9^%QN1!D-o=z6Xz6PH9Gf%a_(_amgXgD!hSm^A^o7VyJ9StxZKAp@(PEFp@ z1eQ4s*t+GszQQ>0_Y1_{%Iq6}{pbcX8WL$V?AIzIHYFO89h?T&QA%nOKnR$XQ0KvWWX|X256G+7a)tX`7-gN(O4NOT6 zVT8fqTBT6i^ks!wdY%Jl4FDtSt2|e4`$w$MELu!F*3WEc*=;g|Mp4+eU!xd*E7&r9WR1dW%2L5qlf6?+o^1 z>p_7WqGey`tJHdTU$NC!Jhm=5KJr!Sy&t=_7_aH14=^G|r1O1B3a$4r{)SV+-Xmih ziwyq+A-gSj`msQt{s@+THo?lFN}??t39eb^ex+z=m?hF?|(VVK}Z16&7@Z4 zm-V9We_4&$?K|IH0q7}V?>XGbau_;5$YC#l|A4{w1NfiuC)a~3Rv#mim+@-BaLG*D|CK^8s5`)}sk|0J>f2T$jjr?J@n89$VudrxDvXro6?2590ilPrJv!$=t6JyW zH3kbux5DFrb?BUnl){-1%L>QDL!@B&*H*3nJ+P*3eV?AE&Tu~?NRR${&tWmk;oN>g z4nI6a;O{c{nE+oK;e&g>&t9OY@ZQ{u@lN6srb5EYwbXdONO?b6j=UWy0`G<1d6zKW z1$_nH*G>}nYPA&jG=Lw4@WJmcXD?7xc;D~IcyHnp&V_`{Re8_q&OJPPXS6_J40vkA zJk1ABmuj*W=CE0a?iaznC9_`$_FvWH9zqX#ijjPL8A>(jJwd8$?^2bz*Z(a7&!0|k zxLJVPzNSYI$63^Zcy>1o;+SPZ5SJ>VeqwgN|C)!e0|cxbJTGd~ZuI@v@6q}3EFp)> zyywuta`>YpFg$yV!La{blqxbykZO&0sVbOMOZo^r zzdFX@eh9ds29IEfRDJ4gYBYWR_gx_vD%k#S5BL5r5AiWT(F7qya!+Nrm|a|n;S z32;wU_Yn0D)u-N!FQceemkOd*Dx!An&P2U?goD@u5YwuwiMl_E6E$*#K=w=U^eOYS z6+AVo&O|kI6GWX2_UoDbcVK@nm=kr#BNWxR6h)mpSrB!TcTqJB6;VrL1)k0#4tEFO z&JFeu^pjjl}8bv(o#fT$a+ChF8kY_=j~%wgL_LJqfi&tU+| z;j>;s4jTddUIza&z^|!>&DPN+?Cp*U@0Z-X|2)hk%)|LlH8tMfb>V`c&2WLjTJZE6 z^Hd0)jMbD$-P2*hr0zA|{2-41g4q0jm@r)I%9|g?@m~;|)o*xNnAKMU`zy@;D31Sv zxKJzmr{cL;{dw25L^iWacI4wV-P?97u4=3hV6n%B z0JIz?rEtE9bpQS%4{;mIKR~U>!#mR7e|!hC`E`=8AyDK!haoJ72YLuO{G*V-hcNgG zfFFbK!OPxZ$88nf54yO2|B+944-&Re<((G6Z3x^QBv42KPraC@2RQz(!n%N|j7jxjcY){50uJ{-z>TQl5e$7)ADEld z0fV7umJkeKim17rnW#f~2%m8TqS#-x{&(O+T{lo58w8#vGf!IZ^o~Ch)z(Q6^>RM3 zpUCX1fc-FkPSl-uP}Dh@C~AjvLDUlOqJ}e3W4j4FC-At{0QaiSL)3d+)kF<#kD}hr z5JU}EMD5p!iK^it3;;1trzYyjaP<0tYeG!gQ#)y2HIBw657zad9n8~dauWTi!&>05 zwGI{}oyJ=2J%k0*C7z~6Fm-CNdbI}>7r?%{9t|y|8seF%E~Gkwsf@2-#)}-6Z&x^p z?HqDx=Sw=;lsgX5ixcsi(>VMkk5v@#`fR_4*GAxVCVDM$Od}~Jc}*#_sacn?WKQpg zjW>-VTN5yk)w+6(^2Yc_vXfzg?30n_W2<8K!An;8Z%Mw&&;O7IzF*7=WG(|ko?OcnD9s`uQ1sd3eAGI`y)R-!WVwcE zBnNg#>8Mu6U10jmKp&_my0PdwID}M9OH_6w2}N6Xe81~0$YjxOqNTwx=oXZbJ~Iou zFXIGOcvbO6Y6@g65#Ikzyjf&)Bgw^1WBc~X=@>n{r9_3S{zd951zrw@9r&sW^x4H6 z<p%()^DFj=vx6a4GX;6&Al9-Xt*`nN3C_(*48C2whjFGueS93 z*IU9=Ay@B;vc2J~Ihw-*CIH|qWzT@~+M_M4HzYr8+X+=UVlU*!$F;-^J~p9`;9nN7 z@qQy0cn=D0f_d;B0`9}WhmwTlGZbX~(iF%zLDy$Z#v<9*MyDwoNj~mLBx!!W9Z$@= z($D4aIh=kjgU_M#^9}fH`uQ6CsrGXz{L%e>SeB0!J&11N^v}K;LU8uUHV~-!$CjfI)0-cHaRZP56c`U=!b2N0}h%# z$+6q@DcP~j^(oP@(e)|Kv5qDvcC3I88Qr4yk!IP}Q<8N{U>_qRQe&$Zm-VNuwpBg_ z@7tZPBMKJE7aV>#9}lhu5Bz5xv2~CR>z?iA<1BuNpg4_g_U0Qx^FA)l9qlHmnh%nXG>X^^K6`yq58`ShqnlJ|xdL-CO6 zu`aX-V>LcTia750DHz=S5LyD)79Chd{+P#_$CyW(M~yB#?)i^o9~BxP*{6jXAizwL zJv}tUJWR^C6=IcV7~&#G{9KC9dZ>SQ9=OWsX_BH%`b?R8u{iUjjJ$yO=tJq{a9$8{ zmovi@aoZ~UTcS(!nUj%FuYio55Rn>vP7Pq4fnPM57=5M>c#&fQb!1L`^P`2z zZCkJ;A9LiyYiOm=@4i-FpK(e9!-zyf#F6-{%ldbJgr`MvVkoCA5LM26;ADwDmR=s8 zlVBo45`B{x&E(0G^-VI-uSE`&WV6C){^UoC7~m^X^d;LANzOlFbo-acSO=0v=i3@XVc(IWPuXf)ocWfF0;1J1 z{nEK479#S>>+gixS6<5^7n6)SjnUY0bX(dMs%UCE$$3!9I7A@+)-T=s3{pt)sL*gp zo)#J@$+plKNlqt?K*oU(^O!>F>ME9}Y)K;Vm+BXhS4chwNYO`A{qa8e+B1OZtJP=u z5VvLPtQrj$4@4ZRyl@!^O(gKMI7=mGi*LhpE-MllVIDTtXx&;e;z_M-#_=S?OU8jP zlEM}S?G#}QUUX(>aXD$nUWJQt3FtBdBh6{-+8P_oZ}3m0B-bDvJ!HUUb+NZKwG!U$ zz|h*NIQsnObe8KJrTwr&XeP-6lBC0Ms9J+{uLi&W-4a|AFj7ubL&C6-i~r#e?~?pj zl260=r#a9GS^^vfCv=KPH_T}~+KN`+`ov^b7*^j8=0NXx7;A9z7XXGKgp8#SF@vdZ zbFxLgWR;E8NJe2kDhB}5Di%^argA@vOs>QPfcxukJ)B&(wUK=+_5c{p_`;CNOsc7` zY{)2p?*=kn0mV|Dmt(;5XiA2fhna^<@-0FjJT8K$c?km4B0sj;=T}(d z3i5|EH219bc}bEzz7jY!p;?Wqpn3JT8%V2G=`?l#{q1of)||KyDQ9SowggQY)P&{5rw9(RM~fQ)?b9DrBk_zKiQt^s&~_8NEv?+}!% zGd5GK>}!T{(8t<+J#Sj<)g^l!$zFvtb7YP{vTR`9Vxywm$}R{6o#I2DzcVq^C2ed} zG$(C8a)UGzqrhRjy}K3u?eTp2Q0lqz`8$DLF)NzuG&`Lb+@oNqhlkYD$&e}IKsa<0 zqs91f_YX=W1z4c6-ox^Q*CmoX+)fQ3<4GcS`C!s9uA8MJ!-fT@zD-Lq(j6e`>KRuw^Qc$u*3UEE0)U#qMeT0HWvIL|w(I)c zrHyCCBJ5oW$Ga3%pLvknCDE*3x);b3+4Wi9VTc@aA=wBLfRMHe6O*Q>FSbx_s}hqK}z`=#z&r2J$f_fRxPTa;+qfFp(lF zvq6y^YmP-$lXW=EvjndnJ?6ZCrT1$nE4}TZ?$X;p8UAc@F+3jvAHc=)O(Wyy5n2#d z7@FjtwcN%Yida?t=gn~(g#<;B{pO@O4b&oHC z=rkMq1V1trsBe-o3In8!J3gtuBM_-xCmpfGaR$C_u_WCfWxTGzFg)Qj-fsdJ)1YJv z1vZ7We~*;xLqfwWIB39yr5y5AIvg7s0$&|{QOpC8h0pabzd#q7b>=NHA~KGe0i9@1 z6K!gTK~vk)kA0BxInN!v`uT~bE5 zPwHP5IZq{`+4K65>eMRm`b;BZ}vG6#?fs9%|9A)oXs3(Q%?`pkb} zJR=V@#77S_=(AqI6a!5b*-XZl#Wo`16Q?au%BXbev$~O+^1zT-xgbs+5n`4L&G`;r z@~=6gv^GM$9BTu8j2e=Gv}Al$hbx$qe!1+gviJbu^Ato z&bUU3{Rl1gG7=akAu#%rz{m@+)g=FqvH43G1!3jHdqE`J8$?3lF@}T>2?<{aiN_cc zJ0z(Z;^j#?S{M0${ z`LwIprd2N$wKCh=$RPUT6ZJ^MZ74r00%)=>#_EiGk)yf@UfKhAD|S>4DkosKT@> z7Fm0%oD4#=1?6Yy{N;dTPYjXl35KD=hLcDc>WY zW$hV@v%pH)OoEyj3Q<+w&YH6nKanQangff#qzxsrorm>sG@7{$*9oog>=h)FtHTh5 zjMI#goNpyF%ygKmks`+#!QU1b5X)ED6v&{@wBQu=h(0q1Mmc0&>h2$^TA+`QG8fxfV%MI-=U&Px zu?x&}W$YMox3oDatzR?J0%cET~0?ENZGRHWPzVdWcedu8_LvuB* zC9rgpYwTOzo>+ZCtjbGZJ*Ga6TPD9Qn8!17UkJu^q1iZGq~l~*P8mCfUr?d*Ju7q? zFgAwyAtBP&h8!3`JE13-KZDfEjKR{!P!dkntK5GYN;h^`Fb7%mm+LF-fXV(S0 z!(|6?e(+GAnStUhFllV*goLdZ89>ehvtR0TH`;b!97SZDJg)xl!B!nApPot$0gVR`;Y?oQ(7$RgsGAxDEizoAZ z_+Y@{^fWT{$~X`+7M58^$tKXfg{(9B%y3+RoomwQGh5KXON}~&aa5mx)HEnN*S2?l zMya3FrkHd-hMCpmu_j5s^%p8zewiQna#YI5*OI#dvpbUbez&l~DQ7Nmbkl1jzXE5e zJhma^G5?RoQcy|xaPF)0=yG`+3Sy#Cm3P5!XMhGh^6xL@Bs$Aqz|P@5Q7xmpGV6H} zV}M-FG!pBKf1Rm)Nj#Wnl=mRx!-+;^UEgVpakYv#6_fiA)e=ok;}au2A66G@=F+K9 zGYiY!gC^Nk(xkXfILdJZT>?Lfpix%!h7*9xuR^VR-((;|);_nv1}NLQlIbBCLqvKE zZ()@R+UH2z|GH1c%`_VwFdJ<#8~bXLhN7uejtd}M!s+`|qlgfsG))+pp~L`Yp13uH zW0(YY=@w32w!W)g1OMf?{wn`1@c8VxUi1r@N7kY9sx+sue_i@<60E0^jC-tx^>l6I zmK#~6B>D!&V%;c4ZWZJ+^t>&xZZ^g6zf}wRe5J7oHYzpjKwbBBcig)hAgi2D6nJL} zDp0o;rXo}17PVXpge25_q#Rw($xvMR)|}uK^p&2sYGN_YCkd_k*dm(hPEDPLuRgB) z6FuwD?8q_j0K1KJN)oP^k!od3stxyQI!e31>@PKlu4TBg(l1Fm+{?>S;G>%E%yD?o zdJ^l-ob{2K$h-q(z9Ja|5Jl=zQ&~Wvpx9FPB;V=!sAZ={i7hf~ibO6XzG57D+L(tu zKmVNuLt9&Di06of^deIN;vyc#%cZgKxV9A=6N{X+3>$Y{Q&Qr#Mxah0X*=c0G7WCk z_+p_{mfeGiK-7-`e8Z` z%Cd<*YdOZQo?MCQ&b1p>;x{8bG(nR(8MYrXH{zgxR6m&B9y2>HsPs3c8g%_~Hfbz> zHMknfsZ!K*6Yv{rko{cw6W2F?BgPhc!%(`8K1I=?3O@JbL28GAF5#?)+O!stS0eH! zlJzBBc_Fq17U&C%WWwQRZga$}-zu4$`J}Ra zM?|*B`4-YIV4qQB(QiG%dIt-ssww*_oMt)GuIZ)MSp4#xrDj=bXoeOp{~GBLilj%E zBy`n;WJM$aS*Y1y42Bu3-(usLu~Z!jC~=@WI&u2v;8vKAL10-P<1s_Qgo zdg}4Nk6nM2|8{wN{vX$~?&3=1QEV~q5Hwf6NJgi5WPV{_oxDL@&SGmfPUA~8uz?ig z3HZ5E9rm`u=6(MRHp1?~ib&KHlRoQTWCbGv;@cqXvMBo_ee?=leP(~?^zASJi3x!I z5^_RHKhuOG_v}Qhg-2{J#p87_cb1SVMXcX<*lFFpCYbKU?Z8A zS}sK!Ym*|;XYN6ZUa$}rlG=}aGC_6jNeXfZk;oPWI~O^@A){SOT4$ZcU#lyl0e$92 zBz069PQonMh_uf(xjHHT8mzVHWTuUSpV{tjwa+x6!vQ3_XC2vPqz{JTaB#k&a8vW( z|F9262!~-uVIN?C&$495xb~iXKuB3S-E=E_K7Mq&t3k|`;85+Z6xB08pH&41Ts;k& zd~6L|V-0alcp@pPO}_f9UvWrVX_%>#`1?T_W|l{^b_sdCy7$0#tm9e9mENQ;kM6Q{|0d|E?M~xnGa-7@lPXD(&t6X8b-(St_@X z$R^|WoEWDyI&a1pI#h(=qjdN%-9RA(zY1nS-2zwbi?K8OteQ?`CCnD+YEz&Dz!71C zL?C+2Cb>>uxmq6G_o^e24x_KVV;(mui3p_Yw=pzSFeNvBf@P0k(xO`-bk^|sjX;eQ zaR8Pk40z?HMSg6Ni%HhZKhsy-WCyyNo!>CprGSiG*!`!ISy6C85DGdc3Buu|6{;YS zv_n-gOG!J=#v(`^(38K9-i5XIJyyljuKt3_zZJ-v*YG0 zarqm$UvACV8wy8qd{Spg(HCdE39HfJ)*Rhum?}LqOvSc>jonW zMoeZHZWYm4rC-n|?P$z?wT9aCjBybvss<@NvTX2EP zO7sb_5;8H?9J-`MSMW*jhFRoO19Cdv+6SvhPUEXp=)`Lymf||svd1G!8#3m6rtn!x zU64B692dms_Cp|SKPb0`goe;zNFWSD=+(YOi>G_uIm_+y9_{xJL~l%lVu|AA^&34o%)&VeRY_I>9 zd=dzsgy;EO*Lw1KmGVhZ_|$!#57RTor6(!!H98bB#*2_K-1;5kOD5tu#!mDV%zx`# zh#UMo5xES7khsnlbp-kD z-d~dkCX;J%Sh>zf`nUqNN>J#j&n4&bO|Ic3KR+iG#V$ij;NH@cr4Vv0*YjFNBv$4y ztjtADV>iF&X6_#2Z+`zVb&Mo8`obTD-A7Aw@+dN4p&cfuyaQSjKQ`HY4_h(&`ZcPH z1_i$Ep#vQ$MH_n)2ew@PKvn88cz>Ce?thO|_P>2x-96Jl7;q?hEut+chE!`Q3XcZZ z>N~!9=5&&N%wt_R0}RWnkTS^EDdps`MB`15l^9{c-{_FvUn4m^zSQx0z>mi1obfbAzp7qkAs^3tsc3mdVKufb9&?|dTiIK>EUi4;t0_kVq@zn5N%3` zPV+^gofM)CHJ%lb);E8Px7h=LeAF%08?1byZe zOszXKD2UD=tn#*`nlSd8rg6{T{vtO#W@WI)X@!A*@Oy)B!WVHyIRs#}6H4|HJ$Qin zp|bERJGD4$?*qF__#@Rw4K_C5L=c_u4g+*M@)t*H{UE(7YecASWPX5GbT9iT#oP>= zr`F_qd0nUv&$L{-wVix-Irq3sJ<9lM3nG#gw-r%4)}9#HB0e-^5w}Srn*zmLTe82F z64lCG(q96C+%H7A8RB_!3B4Jk+>G(O`8vHRDK{n0n+f!0f^sv#^JWCSnW)@M^t@Sz z-b_+%CVAd`{2$&-R&FMH-u#u`j3n11!NA~ob3fjcmG-f&WZw**Jx$h8lUxszT)|`x zHQDB2vQ01d>1FW_7Qn;c*yf+NQbZhVK5%I0fP_V_ulXMkBN;rak63@*hkD>3$uV z7N2>l^;ofjcrrmexmJaUCyVTWh=SE2!n8V>ipY4CVlzCkZ13YUxNo!5=^V;np)H=4KAEjvgh(QpT40s?87z3dLy`xZ%CN!AF(#A54#dj~q5q`nzNVei-ikXd=<$dExzUdz4h4OCkc+42wjiByq%`j<> zu@!yo`70hCdQ%SpN^zUgOpKVf?eg-QpS9P#@0MuF2X8e zl?x=f*pXcU6^fntz{VNROmmkcXDRJcLUq{Pb=B&#-odVo0LUkI(}l8$PqfP7Om{pR zNZP?lDqn{vKd#5Q1lQ%@@lUYC`r*r#`y|l(S7QEqSmhJAAO?Hhj?@3SmMJUKo1>dX z=;nQ5TV4~6j-mA-$5+@sRJzvOV#J)O&1Xg!+@~O|&GX_S&L~;!s!eTY$*A<13A2Zb z^abGC9z#j_A=7n_w94Saj1oXOlbD)gfMzSlXeCL?kHwMUP<0ZcKB+HCa-hXo1V@W3 zrg(Y~GI;D`l%QxZte_PsuFY=OL`m|;;+zoh{}bPql&{8v@2!XbGv9TC6}~l*Zv^2B z2V)p#aE_$Eu0+z&Jn5xw|B_r&Vf}y7TMq6+A(9Y+`fn@p2dYhgs;vsc1%>f6k0Ki3 z{X7--_&1zqB*`Np2`fs8a6?uvA}d&)+x`ey9UbImwfcdJRrp8`TJ@1ufO11r5{@&4 z#N%Qt98Y!*4xo0=&9_`j=Q+V|#lwl=sE1nD;*>t~B{=?u>vG|)Jv4X@vPqC;_lsB^ z_ubdJhMP8>DDmapNG3 zEu38G5|44Ui4akaO|Se%``nPSl3a_pj7!XfAGcU^pFj8}kePNSBMAqNDZ^8>h(wiX)+nxkHi@X}&A*oRowl67!W<@Mv{FwPL`DkznAmfLVs0;3)jIHd*hQV;Z9>C2vet` z>_g(wz7u;Fds>)ePbP_D$S5TZpE-qBz}u?2=OXrAWO_c2Oef|^Y(H0`ubP;dK(3O% z^T@cdSCYp$8T#IN-b=E5&q9RUgDZA+(#hNR(5d$xI^*24iT>F}|KP|y-mvJ}d%k3T zQ08Y#&M5P-jmjv~+WKdd&9%iWdaNOLY%h_lw#AY#Ug_`ZXGh)BYJ?{$9^cdA9zh2w zr`xKhPG@;N^5N;f4X1q|DM$1Hw_V&BW}YS zEXgWg!{_LdePM-mj)|Q=?IFnnl;!sM&G6xb0vy`WU7UaKX>rrufH(lvc&ER^fA z1blSaHLW^DDukYhkXn~Lisdx^jajb1gPtDKuHWt{wUBn1PUDZ5&)^pxXz|hF|J`F) zd57^atPyqSV^|isf0E^J?<9@tta#pCEv~T=uMbmelkfj%>2bf83EMIqiFl7AIm$c} zmx`_SiLhRL(ouZMbvCDxn`t(^3!a>=LvKV(_F#oppSc~$Tu$wSdol~|x|^5FJ|mn;B#p}Jm}>Yvt=i69Vg(J*L{bvJ-o<$C7VnDZrFXO%5hScatNvJ) zz5<6U2D7XUg$!uTc5SFdJ^*2y3}KuCVVuUDV^lw1=&_$I$x{sx4{-_O_JUs4oEi8$ zq(vreL0SON2vI^d z`$I~`_@x=ojIA+hG>%$_>8Onm?`6R=(9cIE=oAK9wXiSfXn%r)C*8kng{9OSbN@DB zSZ;C}m)vy)JgspP?zlqnvW-kUjcv{J^}O)>(fd*@uozc?vDKU0t!}2jCxUlNjBvLX zy&DEQtYo5LERPAIogbJiGk{45HPOL_Rvj@$%5UQkLADZ|BaS;VPivJe54sD+^aLeI zMCx8S#*~b~Cq(dpN#o2Icss!n$-Oib8yXHniAXqohZ!mPn~lLEEIa)aDd{#)k>l|( zHjcI+!CpwP?`>KeI>Gan6|Sy#^lc2KCQjpJ^65EeryN_3DQ9)9q4+5D=3>lP;#is` zukjsjhIa3!6&@gS8V}xfk7;0!Gvk>vbwbYI7s;S!Y7ZFnJiSRLO{85hrt|>m$yom| zh=50MVA-su)3{M7U*t4?=ON{4ylCvv9qL&TlmJ9Y46Y+Sxy^=#L-4&7_>2;9 za1C!bB>Jc?xlnqOYB8S-2)SpQ>Jm=aK}@5=JJv-!yQ$T<#(j~Te%G-WFXKbKmu_Lx zGFQ^knn*I)ACb~ME52mV+h9h0jg5V07KqSiKt+OnyJCE@_))7dY8i?t5x+tE*yBS%X*%Enp{J zyTB6}owS4pJlArDe9pcNp9|orjZRC;;B$V^>7ZhlR&Qg$rZx~8jNN50dWPnvmv}C2 zeHrbDT8nAkDWknsYm__`C7(gAmDh6`>yvDj4<+AkX_W&fRc^v4)oJW=lQkF}N!|=y zVfp!pRnDU)1x{d%=!?oe_ee>tGOe<_izh4+lyVCntvpX;B3%S2HF8Inb%-@;&|B02 z0=Hccwnmu)Qm0#Sch?+3Ku=d%qx1CZ^Q}?6LSppm4`!XPHS*Yq>xE}EEIBbgWUOl- zeNr9zTz?tX6MG&hC)Y!_@a`MZGSxT^OxK0tpg7||0z67UI5dkU^*<*To+gjoZKCfSMf=$>HLzq~Olo~@wCX*Xr#p64UYWY!^!ps1I)+HmoP zmOdRjnD7)%a_zZ+3s>Fol&kw6S63SrE8nwXe=y-?cumG!gGQe@5|6N9qckFk{^HO> z>9E-~K)ei3diM+Pc$#r0c4k#QCK-KkXf3(k6|fD9HrVH7d~r{RfsSb#S@Frj05TqO zC>1BwLgJMWE;qw&x1-N~$St-YBd`S-1{syR-ElzKNcy;LS$~m0eXcz@{1=WaZLOu~ zZWG97TOIOYH%VlB8THcNz-GK%9BIMBoJI+~29Jw^aD8Yc^EycHVoG>8ji0#MlMvcw z6AfxgQ8UAA)m%?T8#@sf7I>WjG~*Wg*d!Xg&yA+r5zl7QNM#%dgC4t(Yu^LnA}+_~ z41%Za&2k}``KOuUCmfCUJJLHk_DH~j02sRxE4Z_ujae=*w<-LvO~L6(vtOY!p-A#O z5*rrjbjr z@|WCH($Zry%;$ zjk6Z{M7#{+mA_bdk-Ar8Pa)Me|GJmyRNn7e_4i_Y`8yPHIxJki? z7Zx;u)6MzUw36Q`OPdRNgSkS=u~g`5kbVgci2WV!m*+fW?-UIlNOpVLryUOHYiF_l zADMZQ*njwpw%f}4Ti8V2$2J^KFu@tto*AWn^!#+2Vt9g0zqMGJPykOq!|LbuYdAi7 zyN7G)^|(~)xkX+;7dz?eU#@^H&Wc{c_lx2XIN0NH;V^u}4XU-OTF@U8ejMWCne;<|3iM707XE$zta5l zRq`|CH}Cn0FIDn$IpF`6pFO{+=7*h!3Lw3WM<&KWCN}w|cEOBP1@^838^(IX6Ru8$ zm*V`i4XohnJ$6t-{=k0J{2S(PZ8ul`>{qp(Pu)0bu$Fwv+8p$?Ze)Z)ro)+RueA{c^%mr=S~ zySBB}Ztbqye|OhyZP(h{Bq0z&2qEDX?s&nB@e*Q%aGn42eV+5aGf4&%CHwjLk<5EJ z@3}tbxqQ!ao@3VkC&NBj{U6fNiCTHzR5_CCMmA3+f{CeW(Tij}u@y$7wDDm* z=qzm4o2d(y`4GP&e6yu;x48vn)6)0#`Ua_=nSZXdy*=#B{NX{iNGS~uH~ps0&#+z} z);A%NS+?Qyj^XkpBg=UaSuPn)XQf9ra3mwk(Evrw1R3|(7P3ZC2ri#%;0NzrTQL@IF}Nyg@Xy) zybk5}k2e?gZmRrNDA|h~Z!V;Bz`0u`;2g)Bo7_L%Tu84=8*gr$iZ|CR=UoViF)yPFger}_2Q%qW+^_6p(;u@esNc-sc|uzWomI78 zbJ{fLRHrtcvh3BIlk))&xO=tHepj*fd%w$9mP#^o@1zpC3*mQP zfGDFy!9+7)yAc5t|JrVPIW{rokv;S~iWAZM#F&RW!2*Z#vK*Tz-`~TYRBoaaH>y>$ zP=y4W%NSJ|F9{g(eaxkty3<$=DkOQli-Dr?Jg(rL)By#FF<;t?gjC_ecG%XzW(=s> zC;O<=0w12qZqqUTmQK4RRU~5*hj--kPMEhbpWa3sk?wcyVg5i@`*zYB#3mWhHlnR+ zIQ*@sy#wrD!}Y{bn9vWVNS4o}fDLsfE`-Hh-es(<{0q;Kb&SYh6aIez+-x_Xw&(e6 zF||LlhN>ZpOUdlv+gv$`I2DmerbOj$rFOh(y4fDu!5!ue>ZelhM3fJsIUF7N3;F60 zbu8ua^iAxN`i+~Ee5>0rXi4*nI~gNS$tp4Cs!qEZj_ZfJSVZ1wWO3ULb2(F`Cy|v$ z!|>)V!*}vZ_MO~8_ZXgk*wNpoa@LO2&TdihqDVFe^tLbuP1)nq+kIGsVCNysAXyFO zsNe71%iOytnFUFf{`>~0v{NF?9Sv8s*R+3k#49<%^qsRC0$2(ifml7>dTnin0+{k; zUl6ZD(e&C0MnnRs6ai8;@lAOi0*0yx1LgS)axoX@KpjpV?C1ENrdz;Mk8pq5_(?8p z#xZTiUVp8{Upuz)!6{Mu4h(hJvlTHHqB%uD&#tiNV9;~W;KwwFNB8Zj^xu%6^f#2!j>S zcOwUQk^2y%iZfX$dt>O+GRY?B(@UJls+h8J)-s3Bkl^pd`6~K*aUOzR2nFn$&IQdi z_d}4nq?b8$NBr*Th(yZemq`m$`KSz)&om{gPeu$HRUC>hP{j`@?x(W_TQxO)F3-8* zB!JMWF+|b#ozAwrItofh@q$EC)LzyQEjfGZ&sJG2i=E(4^xAyG+GQGl^@~^Ecju+6 zuVcjtuJ7$w)zHM7&~`;)%fy`!#$|A zQQy+^RW8ZrItTP@R2f6gwf*n=2h`To=be7tq6hQ+)JWfoKCZmO$Md*b^F@oL`q~q} z0yL!>=kWdEGWFhPyvHI+VY^CT*PFYus!uqyC%(fBpedl;S(lRg6-MrfTc6{viz(Tl zZ#|5L^;xwizerd7=yI@;3IwZoXc>0EuU+xV0}E)X8Z)DTa9!+TT?W*6v3efC$5&ne>%}G(`fG91CuU}VEj4R zvz(_I6&y1h=vE|`kzCBPLUfB1u7Y_XXBJ-om|M7hM^Ae(+ z&mA}UXC*P7Xo<|e#UtUTbSzsvHalLN3DU_YqfR7Bl!z)qU5v^(3}NC_{gB^P{2i`b zdFp_g^fnhH#`Jbq9_S4bAN8$}$dmJl>hf_l)yS*dpu;jnhry(%^P@hK#ib#jj{q64 zdJZL>BxqN2mC)lth_$rzNL-LUah5^B4?@%puQG#fe`5NB*p~V5XbSlap#Myv|HO(D z&z*z*FXnjkEE_x?7n>eeoKHSxv3!jB5)Gz=wBs(N*%!0Dv6X4)PtVNy8&Umo?5wDc z4ffZ(h~?8jrz^kq1C);~^wlxjP?lf(gLLJO%tHAqfJ*4!M=y}3en-906&JPq=hL^p z7wum+^zCnZad7#fcnwW?1;0w$-X9&!w)kbh_0i04DN6@G%SbB!iCZwW8s3>#m zg2C1G?HHuJ3O^w>?YLjNex&phh>`tPxA+G7JF?@4S(e4u5Sd@q12X4c z{yu{8c-yo)+Jx@u@=m7sq2;&5Z>H<-F}3eg#U4k;>TCGy5dHBNxz}TUeNBP%cg*kI zQ?f5)^@>b-fAD@d^{-HqH^5btO z%OBGDy|8R>`3#<=`fm;$J^uWzH1s%x7O1h9!JA+cl;b`TR$Oo zF~?`_Luu(_Qx_`2^6UFC>rm>Cj}9$=?5Rml|8JpvEQqDQNixe!@awhfO!-`|*ONq! z`A8&>pgX#5iFV=`*OL7`r2Jv-*fix|%>KSA zUHdXS4=3@OA+P)_-zr1@JD67gv-j8khOqueXQiqCQ0mJMrR%SYDIXshT6%k_ zCM~_y?oTmfFRK2uHtqcV?Ea*@NCCpu8S-Mt@Gs}HY3ozF?;M1DvCA+1Roe2i_6@+V zq(5RqEvGTzve*(wVlr@p~B0<^fK@vzL4< zJo}>R`|qZo|DA@s8S3??zon=D&ZNGU!ViK&&JQdZwsigR-QCIcpdsxKOLm&_FJk^> zxoO+?qg@7mIK=InJ8o#(x9*yu&3|rT+WarT-{OiJZRz|ic>TUq--c5;Of|(&Q386F z%BjFy$anK`ab53AcEzdwQ>p$H!`ZQ-JKOX~8-qAkJF+ddyOvaccfK`RlF$P6{S>rM z?@#b6Z)&9mtgpkzO4iqvn@5`U^$Y0FWyJ&g^8&}icX7wVmwr5w{&!c%co^OV2s?V& zc1%CeqOC4!55Su%r9(cUKW4yhOYz6Nc>WXn1GbOw=b74J`tvMhe;(D;yy}zIWpL`b zwj*1;6D+;|8fUWqsi`5oGk{omPVs_q1Zwssy?LpZ12yd$JHiFL9ZMgTP!tG2Q8hw* zTscvSe<1h%2-81saVK`cY=@uQ@0Mg)fQ;U+JrrYV;ohBw?r8r&I}(%OMg;s`ZFZCL z+*vrq7;eLbws>&7^ZxVkivIHv9d=o}G5(1rTm8T#-wUJXv*AxSAAVN)>AwHU9fQ8t zGjHC82Ex6$I+mYCzFa{5t<%%w-`R%zS9AVf9hkq+6P&pEPh>c38Piz#Y`M+poZt24 zHwMjQv%CkmytV1u^9jqVdGOrjo!H9yNBZ_%SpSV$lBWND#QFc=V&s4J@pR+Q`9E{M z@%e=O_S@e-zx;!L_8(h`A7R?*%i-Rd%95~Z`)q4=^3A#Yoj+;)p8L_D`hBYW9{b6~ z&F|Yky}0>Jd~Wb~T-g4O=RY0)dGhBMF3*!HjnOP0(Gax~ZE|zAGk#&VE4kkw<6mu- zmUG90n#<1dy*>nPEz1w;^POS6K;&3?zFtm0&YEN29pQTw;w+BsVl@eE^{c=e&T4BB z6F60#`Cf%Ui~rmLfA^D0p7E!UX9huct~e!f=8u<&oSCd%#C+9! zpI#r*?{kLq2lGPuck)B}qohf^o+h3Y_egQR^yydr%{JgbN7Em7VOoD&c;c#In{W8w z&Q<)iJZPN6OE+aceR3J99uyy3_~aIgzB9Q%27PjVEpJYkESnSl^*?Q?;dK_yG4!z_ zQJ_l70{Rr{2%OS=H{Bas8;besdA}Y=i7D+d&kqwK*~42YKqO0?L4!z~r0a|kU5A~6 zRlvQub4csitF1=6{NBCV+JEU!DPz>`p8lVt(2OzshM)CTgzsoZc#1|0f6N^I%{=_r zxKoP&Rs+VraFZX?!-(3}HSd?UL8bD&s7A?$X~v%h{@&lHfluS_KhxQ7yq)ZW&3`{< zY&S{k{m+&OgSYuzjlZ#_cluZO_T@{z%^MxYyz>wIJ96zq{A;;iyT0L(jLMw*wTW$u z3mEpkmYx?o`@Q%KzZgyOB-{jf^1M^%FU45KtCYJIV>d8R07V-=_kG;Y}{ zmEZN{Kbu;)v44g)&lDT3+?AuMW5&jiU+|up!Mk3}jU(yz%q%#^XP2xPZ+vPxa6AT$^R)Z%Dscrs+Z1EaO~|W$F6hzt6E*=GqMxxLIah z%gdVO2>rwFDC#Wl@8tS^`dv-`Uie+|jLT1Fzy9_7_G_yBeh&ZmPgQ=RE}i~xf%Y$N ztm&GxUKzjx_|1i^2dVj&VN5?~?YZ|Qu5TP*7^n7Msy^yjZ`jAnUr3{m=B&?7zPZ@? z=+>6==zE`d|5B(mCD%_?zt6W_Tzzy-`(S!9&mtvS`sEF! zr+T|c6hz@KPD+%Emj9)@)8>DX@tiYz&xhxLULUP9>Gef}UX|+bIY2rf+8K4($=4Fx z!yw&@Kwt4gDWjMU-_*<+U5*+7RB4Q%M!z;em40=)X!GgL*VFS$bN^Jf->IUFt5-;JdywrFJ^Of2;Hx(l*2POsrFH^!YsKBve1&$Rd za14PJ2FubqtzSH90nAeHvf{ybS$@}_M)mKpH2d$<)xTWTzbtj1J*t~OAePK|>ia)e z+6QmE?~g~0y3&3wJTiTJfRtsPj~5DH5bXGYX5(-PE)SwcRt`J(;t6#tvyAb z`o!{Y!XTQwc=UeVIq6+@FvXjT>Y0{)i|RMQSM}HT_4if1627W`{aTi+x&PbC67FXC zdIsuFCWG@_p#Q*EJ{>>&%b@Q+)p$Jh)j@rB{`Kdv)E7Vgt?7SIAGH@($IcA!$2dQI z6)E~EFq~&hxQ^Sbq)YNg#q>DGfOX==0OXikq#!vHmLtXny5boSAo7bn-Ac*Gf(=iZpN_ z=%D^x1Ovn|0Q4?;`!FN;v!wY$5ljdiu#*_$tH!}5VLmOTDkoGs&J~?(i~pKq3nENv zbRjjqJcs_}(!X)^&qe@RSAvpA*X)l1oMl9i80^C7qxN*pSJR(MZQ@m-z-9LI$1$_ zN4WNmykPAzqM+M}g67Z=&d9%cj%$%88DCbfPt*q=Y$^)r_SlqK|M&v^wtQQxy2)C5 zTfTRO>*0fbz2W9L?nQnho~zzQNjpN(oQ|LkvuOuS-K?AQsz!u#pBwiyRY--H;B({J zmx%ejx4R#1;u_sNXTqYZ^ag!1$#L5z%BMb5>)+(iZ*!?4UEVnp9zIZ7i`a-^oe$qy zAZH#GAq0QE401ne28ZndaQb5{pGo#v91k#c zg%_iaQ>vyqaX7-T#F$|#Fho-w>h}0@zRgp&UCY(sNC%gz7}93GxOru`R7cL6zBd?M z;5w8Hy8HSZ6?8WMjydK}cV$@$W8f;ycZqrZCH@r))S3BfxeKhu%{A(#4L5hIn=ah! zFOwS!+n8c$is@O-*JP@WzV~_hQ~FA<*6!NqcR7HC;*>8q8gsl~<3T}&JSfVR-=GQz z999X-jD*BHELi`XkDDdnnze!D8w2ZxAzk1HoK4^v&L!~TaQ^u<=Mi{G9>yH}vtAxH zW%AGNEdJRi4-d)19{J#J@~{sNt51wrmd!&SN6oaF&q)V=?N`|r&24v4w}f3zZS->Z za%fI!C^dgImMi&YE_mIIQYTIlV#fVtg|fZ}N>d3+av9 zD&H)@n<9Brx|&`T^Cy9IcwVNSKTprg`GdfVcs^e}e}$eel=Lw?U#_0F(eu@k9-&27 zKck*^(evjeeGi_$q@G*o`73-qdUX^1c8?EM)CHqCG`TX1{)2kRX>UQzTd0RtHZ^hE zN3U%{_aIDZsS^R3zgl4iXr5)rpL^wepkPJ3R6kL(>ANEhQSbK6nbiPU50u}#LtFcT zML2G-6kKbiMcfYN!@uDXX4QehW5J5%pf|pFYA|Yl*TU%$$=1`uXJ~~yJyW9NEJ4qf zaP%LoA^oiOd9=;e^}h@4sIL8rVDvsmu=;&#RaeT@7@$E80WeJ=zmiD~>v;53@Y;G;lQcKD)M-&$PsmqoHWXK|O&(!pJ&l4SSk` zwx+PB_0L>gPd9yx@9N&P1*^MkLC<@^x~`0n?Y$5wVV<3oUpRV84S#GqsII8L{MmiI zTDh-}xb$d$7F|1Yvgtt)VJtMhoSySdVwUS#xGHoxDJd&gVU;t^LVx5XuX# zHr7mDc0I$te{#v8eD7*27YHOdYR~J8cLt7ab4*g=S3p^@C zP3AsGjjwt+r(5ajv-EQg$+iseDfw_13V4|#u`|KGF-$^6=}kVZbW_)naW;$J+om`9 zwQw8MN!b>)YuT3rg)x7v1&_cL=@K(cHBMKJ)uoZCJrk^b))fO!Met?PR`>W3A$=}f zy#0uVUgqiS^^@@X^OP)0K${Vxha|uPntL02fJck1@cO2wBwvy6@|Bd3E@rpkJ$r;# zG|=mL#8ou+>qNq?4ZQ&^@*2>M+>J=tgiC)TampsV>EtlZK5b&tqAN7_9*N%^*+>6~ zzs~NY#52dOr@!U96Aht?_He~s&AnM0|1xXVn!7_AztpubOw&60b?CEteMo}bYirwB z4%G*vcR1+TlxR*T%^rIxPAb}k30tbKr#T(=?4*f9b2d7zx|IGYeG8Rbz?1YJ`!x5P zxLu0*8##iy9ztC=(%t*?Zv*{nq`IP(GyRS}jylbus(qT98sofKbH9TJld|QDnGHzE zjV7g`933*VgVNUVE3Le3(dC*OxgMc^8zrjs>_()rJB-ZdWjR#t-*u?$E5SZKUjA2{ zBY(dmr2wZR38#L=%Hqvl}H zdr*6-he>W@su1zvQSGl?e9(cCAtW+Eg+Wgr$&sMvY*LPh5TVaWhL9*B86uPk8WrNi zQD#b}OkznAvK{b8?R=SXzVb)WYuX;5@nD&h?16K(o-Z*qNBgxtq3%JH&Gdk1?1P7% zx;pzp3$km9(9;mP6qR@Z`ku**mE}QIYNBwXefG*)o-f@l}~V|l6=v}Ao=`{Px8qsC$)z)rp(dY z#O3KPi30jdVuJpX1o5+0uDOXVYi?oFSp9(1VKEh-b|R4wdtnN$Mh*~BBJcHWO1#3? zK>OLCSn|FU->{ya4vr;Xe9yfzNL_fzP!~v*RO*7$P#5rS&MeU?A0DQ(g$Hm96KM&C zw!m(c&=PLL3mk87tCHD07A3PM3=^fGufI|-YM@eJ=M$bp*t5RzK_+s#{06GNA=`cW z)CGx6CDELa-@A>3{x%4EPvNFohtch|FrIZ)L0wfa*%)XxheW_bNTOE*(eEa-@uCZ8 zGu|NSEU=U|<6V~d3rQ33d$zHtpUa}XEL2es>27ZzOGU&v=>Yuc0+Ray%{eZHzd0Lx zI%K-@x;IO*h#?*6cN5naykmn;o3@MoZSB?OkO4oZnLde=4e``>iEyZ}(K#-kzNveRTxv5C zbQh@Eq&*2!k~)See}6!G2*>Sw5YUda2cx-U%rpkknr&3q3q+dq+=#0e<86Xh6_rw4K`AgcCEQDs!lZw$K;!=xy`_<^JBH z;rIKsi61Ve%vw-=ZT1#JfN#N{MlPhhjcdYbdl!$PJnATWVmh;#wGhWC@1uTu>L{@| z&^7lOcNvO4i7x#+vrBP!k=c=c+qVCk{-d6$C`Qkmvj;z-(=Y;dm}hoZn*N)vxz}^n zkQB3}>$np&H&I^sw$%Q+7THk^AKC~lTIiG7rOn)^zBqyYGr75|#gz zASn#qjT$NPtXc%4w>iR|4@g=xggkBj=oBk@Cd5-LrAN*F9Dlz49Df1*dFfX_b$^cf zKkiQ|u87YZBl)J)Y-fpV$~fX-^tX~F-2#?$^H|bFSkf`abc2U#ZpBsIiqpD<`x*wN zAB;O*a?+4}MJJQ8&tTr^?CW!#Omgan=RKJuT+2rV&)|cC%MAfss>efmOn;jZBh5gJ z%1Q1*4!)}~Y~_7lTl=C_#Ncv^7|*L&492vTHCAOcFSUxL`MhBpKZw8-FT23vSDcl~ z|Ai|*DtenC0&lk}A^H_0ZtWV2Glu)LaG&?gvdav&qQZA;-MEIAUah+@)_rTzY+p*f zuAlLH627SY%Q!c=?yxN}X4l^XdgpZpk1u+gEolie7^Rw_t7e!DHVV)7#=V{=E$wRUC^) znvbrcN9p{>?w#(tS9bVOhoh=Ky|YyB(%<$oh&S4xwz zg{NO5sE0HlP;#*kTM5iGCFn)j$zC_1?X^Pq``<%FNA|DseaRQsKn_h6`Y@++huQ?e$% zR=SmLU-Ij{f!c}}{rZWng%4mKV~nPMO(FQh!C-Wy;%$vSeWzA>%BOENb$q(4jZmX_ zVUiL)qgv+n^Thc=GP5HVQJlHM^*WE=RjmJjGxp!Sl1D~c`565r1^vlih>kesPoKqDleKM1dG5f5&@!JM3+eY2 zg!BiCun}|)jcJ6eAofbCo#t}h;}fL67&P__6A>9Q_4+olX;PVZF?~AgJ~_y(%np>W zUR!&+UCpA2cExzVNEg)QV2FxEjA9W}E6-@&m~-otO-+qn8%hugry+TrZiyR&w^8-x z`n+w+u0oSmr!;S!McFB4wZh}ol=hIAcV74Vn@CCEU0uN27Y6h_ydr>U@b6P$ccA;s*HXx=s6Iwtq)dr+k$o78NozDIGXdb`#~?o zJ({}{R?5RR&D}&7yY+2&+^4z8WGQJ+eRarBiX5C-=@Y+JQs3{h=v^83&LQ8m4fyUZ z8-37TU1ukiCZFnIt*Q=tw?6h|EXpiN;zd{=*gU90q@R`4C+b3pI=|jVpDo*^+g*xY z&_#Jh7wy-g8>|95O>+@J?nf6y!PnNA*wgvt<9grurxKyP4>pJ%jqEh>w>|_79D{e~V>MjnF|2s)Kf; zgLay|L*47s8?fN+An{?VOEiY6*E@m<>V%Cz#|@WK&}c6-*Ah~5i+p-LrS>K010)gQfamW=eYmU>Rkw zq@Zt>FCyEr$Jw#2u}52bslky>+mzn;0bLN=XO7g*{eG08n`lpLRUGIU;XpAP_*=VQ z3%6sp_1u8BW7(DGVM0<7FrHh#M2ttakdlxh#?!>^B*bjg@x+P)z0Dk`ofjB=dT(j8 zDlb$)r0`IEFuKGF=}jDH(gq^ukf$*i&0&}qe8zD{^cJoPi#=jCBw{`5eV%5V?)waj z^hSDsq)y>S^%(C&9kC>0XUvg!KG4J(?)Nro(d#p0>N)&+V>G8Atnb3y4S%UC=sl%9 z)x)IM5cF*9w~QIq_fCo0zZCWy4AEQ*(Oe598t#bZK9_Qy=11_OfqdnY@*^MSTfLfZ zAvNDR9{cj(`DWjqmLJ71-RenapwE~e;S^jaGq9We-Yr`6O2vq#6Af;WF56YZHh`~$QutBxdHB(w@6bQZgZk&bH2i2sdVW-=I;aU9w6pt4 znd3WYV*B+CnB$w(9DkUESSx)=%2uM$=ZPgYgsL|Xhob&zFgVmRgE$me5cRq+p?QOt z5U;LR4rD^b?5mxY6Ul5$It%gL$ke<4SNt3H-#K*t4gW8+&o*@JGx2+@?BBVn|5=8< zl(P&AR}DJLQ0&R+O1zYdc+vN;8R<*`EqoF9gphPuLe=md(AF+gYj14ko5mzHh$T)i zLrI*kW+W{(R&c>$>7Jnr!-`ZQ=yoHHLpHPFUyGrJ>`pKMqV#&|p0x@~@YPy;wbrgv zH0QiMwF(pp_jo^8Hk?fNeRNlyus-I7+$n;qVAxflw?bKUm+CESA;S8bkZZTZp;vk~ z80beLW@|7_(l=&`D`Jt}>JbHmz7Fd>i8|O^a^J`{nBIYt*Nc^VDDrM2A?(-t$eO(s zuYzo{QA&UGTZ!b?8-lX`Vmp8C(_6$-b@EP|d|Ww+VTy{GI8uD00l63!F}iBC#eiUv z!$l+RTZuTY8`)ngsFzjNv{&8~tk~#}+W!uC-FD(c2Z;lpc>R#D>rpXxgG0QqfPWh>yN&015^DS3xX9VO7%7(ThkF6M}yPco(hWH zrLCQuq2?+ka$YICaX-gox=CAkNrpwmW`W^m&k%3Z`OF25S!MNyhYD*+Zz{Livao&- z?4Uj9Jt^k^!)jjU&SF=H6iHZO6=$cQVL-996^u@Gz}Jahbf#`^;(v!!=&e^h3rz> zZf=laulvU<|ELnJ+<&wDTuF~+Vxe<1zjfw}R~}R4IU4`X;ejlHe-vk-Jg7Je`MJ`O z%z}NY#w(vHdKtc1ey(&1J&exzY;tM#0UBM9uM-}zhN6uQ!Nwt2P6ubZyR zYKvHO7Km$WF%JVLl7|Kn7MKAM&b0~X8vsxK{TevVU%wdu%0FKt!CCIPh8^nx@E=}$ z3seZ+Fw~)*y$1LDiEWFoGFCW81PV9#^lkA=rvo88;aKdzUFP(3;2{0yH}DMR>MP!X zOBG-!gf|CwuTOR4!b?^JFjaao8E#nHl?j4Bxm&TXjMXJlU-KV%M4)s6}vEoa>JwS z-|@ivZdGPTKh`~_)caoL$gsD&$`R6c2K5iShtZ!PVp&ad6^BUMSh?5^M}!Zxl@B3n zg!&AUbyj2*ST<%6(OGO2$y$IEZoN&gz1#1#Spe*L=u_X#U)5G##noHMpYzJ{Ty`3} z)0JfjS2zPCjBDU85bQ9Epa+Xh|@8?XI8nsVgL&q_o z6;|A9?wwe_!s;45i);h=v@iZLZ|%Fjez8Uuz1m$^j2&%vb$>x~*LRf$u&59Q6PpHE z5$0{$cx?~W-r@o;V$g#45m$M-I}2moUZBW%%t;!FSRG7C&1}&tB83;fUmK0> zM~`n~B3(I|+T^SKDlg^D1x?2+vU>NtMW#@bQfJyM;EQ@l$h#D7>EZo^Wf|uqaJ4nmkf%9@S zcNdf&BtIbuHzMHyB!nyQK}vX#s#e~P6?*zT#S8v3o0-aI!YzqdH~pb(;?}CwfaFS1 z9bG!2FahwQv|?|m-s{(Qg*@@8(cDgUD3B^r4X-_44YNbo>Cn-x$Z7oP!k?q1WMDt}2jv@KG5r6Mo)GDLAizaIlL7;Q@_{78N1id} z`iL`XuE(?JDpg;^(vDihbca>&gi`$|Q83vesUWi(OJ=Mn1~T{{jJ3CBh-Fg-E5^yw z@sbRs4P~(vwZJu(6~a>t5H0|gLU-@-zlJ}K3kOFb>5fQ72#BpmmL^hBsGo)PkV z81n27dCr6qb>Z3^*PT(<+7$dTJPiK3!9KNs>8|gFbE@Blr~cu6yoL$c-2u)!j2=3Y zDMx|MZS>4O+(_r|VC!cXeBgqPftfluQ%5qfvoxC1!5=vNQJ)*Ld4^&2N>1!@w8Y=Si&AYxtpf(?r%$F;RTVd3;^SDT^sFSjWd(#0%z zNGCDea_+aKxJxjGb*T~USbHL56MfCi`+vPQF`RIsP4v-(-%Bc9IN=Au2E1pNIX5yP z7RENBhb-MQt4~?KH~f{+xpZ9$KZz!*k})`(h-J)Ed0Cd~Q&%jTAFS9MRBCZz%+0sM zd!h;66MnL?*mu&b=FovOI3B2>{_*j`$3Fy!6*z3D;yOgL(94e9UFz>}s8AL`D4t%J4d;lXIo z3X5FKayQs7cx;Smt1en%Eo={YTeLgc3S;ye)b6NbfWDr0P!+z56{QMlbJ%m1cch>V zp7$VsdF$YeVC~n*_HyhdJT2diB;YOeu(DEo{>17{W>g~BH}2QCK`i@jUkfWB=B91P;|02P`Eeb zT_4u&p#08iPyUhx7+EZS@FX^7%B&)=WVfe`Vl4+Far;S4i~5O+c$+G-$P7)4sq!-f zc(W`QL5*}VX{^V!E4c0=CjxNn3jjKE&3X0NKs#g z-y5T;9`o1Af^@)Jx2zES3$JC?<8HTk2Y4IR(NUdbt)YBET}6aE;!Y6JzG(Sbh`c3! zPbVPF`M&Dz3@GJg+Ke}#k{6Rk&U?-Ze0n!CjjP763L3_6kUH-~^zP^bK;-|a1)6Px z&(ly^@d3-&7Pt*IU@wi2cXS=)4PCorGgqm;MK*JVJ*^~``+U&})uqu%tJt2@+<&WS zuey^74a8~X?H;^C=IgwlCBl0>W;%V^G9%R^gD4;+Kd0p9Ov%qF`I!mK{G7@BoMwKq(X0G* ztTJge4`Fen`+Lhu^{q5*kA-C6!_z7|x;*>+dIyabukq%hdKi_qZXYT%k{@DkSFWRb zB5HFDYYb3soW`!#S!8a`ac~-O_bP8gEp`d+TK*dA3P1HLhYV)Pn@5vc7oE|=_{@Ld zh8Ow2yP2K;XSGsiHu9qKs^=B!m%(>B`KkH_f&m!u zqGj}V!=fehck`l$>2G||f>)lU0=mCN?W=;?n0qPcBlnW{RC-+9mr->sKV-{k))ub# z9NxZ>bBWk1<=9!VDV|TsX&B?V{JWi+)<$1zHFjV*NRS}H0=IgB*>OxXK z5cBUc)I1kPQDhubb?#>{&6&WKpneD~Gw#w}GtniS=+f@{P)`nInCoO55i@!$lf5?U z67><>#FO-^xUj0Ws+I4WU-Z(3xM9e?+_5K$N;_%IFyI_4u`A*bg^E4 zW5>6$X%an&V-w+u;ypx??-1bXT)+3VWgg!~t4KJXsJSp%yDXA7S0hfxSQaik1wxP0p2L}tDILk^V|b{S zckoZ_&{q98L+W#hRELzAYXK(hFe~%j46Y27>fVnk?9tY=ap}z{c9T}~Z7H_BSCxt~ z4Q`uSQbC5XP0lDPa;*bpZ8pmqnJnvdlyz8J)5&FZsInGIS=*EVG|HOibfgxxU0c;4 z3vUzO)mFVC@^#`n+N%GwvdHSzR{cUf+@q~}M*7C-zl1kLt=CqqvT`*hzNW2uR9$Y< zb6nag*bFS%;`4bU!}_XAdA41G)$7Q#jJ|j+k)GZJ(eWkqhN_E50dpE5?I=|^14?Kc zo-)qv99ckYFMjV?7HMtq5O1G*vXadcUhwItK0(tCKAiMXd;;EkTdGF0s1a%9j6Xq7 zDH%;^ekxn}rA&xb=YS&r?4Tm28%0jxtal~Lx|t`CbL0;xS!$V=vMO;2Yn!A|Fq)52 zuUF4yGx3}T*=ZIDJB`Vm8F7H&m2Zoe8io3#jA<@MvfS(BS?2Yq-WSl7Ij+K3qOPRY z{uf2)G~-CJ|D#&!i-fOb4VL!FY%4Rg^7fum&Rb@oH!2 z`zgzVl%bKbO)<`s@t4$K-@zR1lD?_Y9EUNK@Y5UJ$GX*Is)4nS%OIwx!Rny;tITt- zSKA>kiJd}2VO8c2qG3&wc6_~0Y;4#AXbdYGcZ0f|3y8?HS?Jd}^YALtrOH;MhvLIr zJjl&?B^C3w^hUXCvqQfyWDnN~$;buwiVu0x<8vt0v*@Ea+n?|p32I6$zShAlh88MWPBXJq)xz$J|f;A`=%7W4Jj2yKlc4CBRk@<$A)-^&J z;x=%|T_XgAfGTLwRyOhb%-aBEK$^d1LmA`4z4bbuzK)NPZ{}mlRdNI^4}1Chz@UV45>Ks3S;#~1 zj2Q~g@Ud?K!zbWWH_*Qaz?P0Otf9^7rr();#@7sNaHhg0oE$9&CMv)U${P`Ln1A5* zJrjRWb9-8rqx&Y5ex2YWjwGxBEs+(&kde~V4DCMI9sG7mc1}s;?3bN0iE20uJu_sa z?4O-NGu{redbyCL;VCWpghjw>Oka`!$AC!bjim@s(@Nv$_Z$o;U;{=!bmBbf{yp7( z0XFy*_N=XjbHgI z`1FJ?u{nUsJ}gvu+Mvpfp^D>7m0QzL<;L?-J4-` zC3=e+kX+E#C?`x+tOu-J9Q0s)qtW=#$w_nELD^lHBk999!_<#u%zET%>$)SF>kbsY z8;(vgHa%p{pOH=0#6!#548YE(T_4ld9Ab-Q4;l-TWr;E`a)(1v%eA4WeXohwk|)d@WEwPSxTDb>=PZm55?j9 zzvzS$_aYyxtgRB4 z;tvVN|nC3>_lgb9#$cWM4$Eq>MPFl#mqyeT73-S{V1$oo<&s- z=z5Dqb>!EqYS$(DY8?0GI2&^Ze(YrCf{BjEC%y4ju)pdPRx*^R61hc8tp)KFm?yAV z3K>S`j?cAmJ&TyIOSCyTHc2cYP5@Gtx5dMT;qq0smf%0q=3}endU>-sJ|5;!pOwrc z3_*bmfx9ohl%HqNFx+@=wxz0wH=0W4W1yhM7xWpJVc2PW*RS}=M)5ZxvsW1ILjZ#1M` zFRSzjVAbQ(t537F6gdFFhv*Nis`n>&t_J`r7Pjr6iue!N+Ok$%$tt!nI%uZd=<5=e z!wX@ZRH*SWGxrymV?{rC=|_q?#3BWt6MT$^mA7&4*d>3(D|d67fZp%c5imE>k%(a} zI;?lr;=cSfuec*?Pd7Ho#H5y)>*T{twlldP3X3~S{Om*blyu<<$v?8_b6+9w?12`=7uWTz}}D6^!(Ax#oH zh2GrlP=IpCfQySA;`k>f*{v_!1qyg{_E5NSIK@BI zVI5FO!&}{loj8Bu{sdtBg7^f^co!B&ED039lmZlsn1s>y*oJv(E%VRYx=NwK*=c&UBJh@HLkLoTr{I^wMn#xo%`Czo zZo~p@r5suqR^fZ-cYl1PMX}Ct3f*OB*coB0Hev-?_jG@Q`M|w0xzi!Rl3YQ-m=7FCr#YT&?CS3>s3iS#20`%s~bxSz~0wzyBewH=Zr^ ze86Vd+<^WjW3t7i(VV>uyBEL>E1G)>u&$Hjc+hhoP}m;wd=T<<`>}l`5Di%G@8|Du z6^k>#r}nWXRy(B+52lUnRlFDo!gPROg z17(9BCV(<$=G7|0fi>)T_&X{;gmBxgt(nI8-J$Y3%lR?p*ksgg&j)Gh*7~rA&ta~? z7C>bD#-hvc{P3bnF+8Wmlk#q-_5^kh(zH)Bmekt+C8cw3&X5&RX8qx@2Kor>Z&aTE zZ*=V%g=)y8;wrtVU_g#>mopY`<9!(-l}0Q4k0!v_zWAM@EU-05PkjP$&k;9ME|EJ8 zeN(0pdo(xjHo7~8Dr~{oZ>}ilgqJTRTj-~Zq=N6 zg=A(v-wS?IzBxXc3)>pE@^33*a&aj~&j@V0m=ea{Q6<5DFBeg{a>vHUsd6UrGX;pp zRMfDs21Z;Y&v7yAuiDk7O3Xxwn^Q{6xt6nxpFATaUc=8A`HqYm z%f%Ya+H_PkYv&nh)&|a0wdoJ4gkMmq_{(RYAYp|fenvFeH?&m;a7onCqOIyU!@l+t z-_lk!$#*3@mq~el1)n|`n-~8dRZE}rHCY;Cdrb=RkMEljwU2_905Z~?E;w`ME4Y~P zV+69vimx|tCib3RN?evTxT6-)kLzL$x2QxyhG71oQ#+;)EksCYcpNWiQrP% ze0$0h1bDn!3lZJgt2VZPzmLTBPl6s71S#TEwfs#&!>J49oZHPzX2{*U96CM$~sa zsSzcW0HqHFtKZ4Pr$KWMLa=&$9_uk!dcp>`pP(S#a|yjNbYjzUg`mR~E~v`Pf0UctsmMNj%W^TSG>}!f;(?HFXtMM8!LtfiC%yHa z+oC^=<=i_b2go zpC^`t*gd@hu?HB0hi&6|o0VR;5VGFe^^SuP{)*iJ#IuK5hrK@>#Pt?efR9TZy_8fr z4(}3i*-*9lVVu13M--RMNDJJosI}@@x!{Dvg~W2Ux@L zt2pca44`?%PSy?ZFn+zlJ+I`vtO(V~_N#NAl_9oy76)h3Js)7)eGFb_2>8eeP`>7z zi$rXj9)`aJ?q=>DO270cJRgn%5smmd(4BA zFNS)pC1v*Lt!i+0VQ^^_c{ull^}4X9!2~~T3jEyBJsI^I#Sb$WeXt7p>1KgvGqL%M ze(PD_P0(IKkSV9(VDq>Xa&b_M*x{i911)M2tj} zY3Q*x9X;kUJ<8B9J(e5v$Yi+FrwFqx9X+`2KlPcqC)$xsL}BhN@+W|)`EFwe};pvVrP$Zr@F`2 z7>2Em{-D801sVunFtb$+24rw1rO_v4AiOHZ_bo0F4WWwtVZA$L9-bZ`7xpFRp`-si zq~2knfQ6L)^AP(uXf7V*xmY3rq9cs!10nQdPZu6X*ukybspjGqRI}BXi%sl-3k`hTn2e7blhM8p+>}`Bh0H@)63a+G5Bsl) zWu%>l%`y-D3dRi-;&k_`C%^8XOPoYE(oL6Pco9O)&GSX?wwm4u;$6U)R)OJ99%=0{ zwe8B59#UuzXp`&NO07@*=?jD>ikD>w8; zZHJHhoD3%-y#98oRzHzesET~`kmBPEwo!?Y0E%=5Yj|jHB$xHXwX*O zVV8h2TiL-cragWu9#GR4v@(vjUt8r-so&Ec&zE}sSvg;}VXGEc|8}bB8Ewr=yzKTX z?g{a{tjuLdX@MYm;jIh}0fV}6`eC)UIg2i^;fk(nmP6ZW3x>5$P4o@GVW7+NN}I{7*$v{7X~uO5XVv!_Mrk~EhORz=aB4; zjv$U^q=oT@D>e6)cqQBjWib*FsIcXADexY)@4WHFgWQ+<*cX!~zE*Qa zK$dY_<8iI%m5M_c$qh7aKXnL!z(+H(i?ZFVO+&E1J=&`Mf~KCKw{L-Tj%aJX$z(G} zk@iR??LBf>1=KFWR?e-F9J(v-MA4I}6XOSXAop`1!sF)LMmlXLp zQ@T2SSP_q#AFAn{gO1uDRp2Fq@=nbB`2VW%el1y#b78w65Au%%0Bwo?K#le-F68Pu?vtAsZiI)6>9iVsb@ zZlVka&n;)?h5|U;vSQtff;c?&ELI3UYrM>QW_d7YMfsvfm;~)>%gL zPeUV@$jjYt+jAdW=t>sO&UKS7J7|vX91loJ$J|%za1E*^cg|=&UiWMe z7~99WEi!Cq>3hoOAh%V%6BW{F=Wp?_d=JCs@9<ekS9fA=M{pe7 z$ZvH5#;(H#YT%jl|He?FF_eh0Hu@?cJim9XTG{`*W9e4*WtVa#quL7?)&3M~{er^z zYn}bp^uPR$fneYGP7=XR;&?_p&KU#Z9~{Xt;vX0u1Bid1A2q@sAY2C(-N)cdU$9nT z?)o0~P3DM~wbNYXSS9Ckq134lHOGuV2-ugz(W8Gb79Dj!TdR*1xHD!|o1GVqRY2*t z#;V{_Nej$6R#Um2T>r4ZJyd-(=96&Z+WK!DPKw>hB8vZ)^P=}*gI zE2F0AAk!W#+*4cW8t3zVuXm zIq66C7Wv?faK#};QIAOgr9ZJZ`T!i&&%37(M~S8=L$Ghqg)Ei;UPXc*aI8#RiNiat zBx)8V6*m)k*`%(*t^zceJsYV1mV~`WwCK03veS>lW<+oAp}_&GMl6+(@?qE*@@x%x zb^#0XY&ZA6ZK}Fe!3RJKEGhfn7AUM0-9oC{03KUfDt8L1cs?{S?K5&Z16UIR=~33&TkhT8t- zEO#c;a~)2am1^UJuy;GUN0Dw=eu&q_1Ic}GZ;QvoF4+gSfHxfi1Ce3noy`)c1THth zpm&27#UaVm_iK6eDR#D0Zy4PDWI1mPd#1U9_peLiN+MVfBSQ_!m84^UD~VP0v1+*B zLWV2JJs;VZ#z2eiVoh}=NskI~q%5#v<;#Da5fRl z?G8DudN*av>nilH?(GbAlSk*F7Zde&M#ud#)#n8D;XNsEV*vBgK+t>!`OB;hs9BBE z#X1B*QwX#|&>93mBT8M1-F;^@8+HJD&x zpFD(u>l?%^2~Fyjoen^jlDRn*)ZH&Pr(kFb>^C;l8kqP1_w9UzRe=uXi>bq$8>793 zMcl5bQTsuh;iqpYd>Jo$?v+BUTNQD4T}@KpO(uoY#fVJGC``hD-P-X~YYv5jROe zKMaae&gR3~<7nazZPgd- z#@Mc@=2E|>+Vyulnovz{{QDNcI!FFvi$chVL|8d3;3{D2!5M?9`dBH`BD>&*p{?3s zQz1|WY;jn_g{_n(8hadW;4(V}2oe+yz!JibXsdLa0bik_0!l)190M{i?ZckOnu^Yzn%5KiISi*KK?Wu@6FQKneW5C z_)kyE2I&b>NS|P*&dW6myf1z<6%`E?*h*` z2DSA=OZ+!xaWs|U%?`EYW0q_HMyh(QJrV;UjelQ?Yl<(C%)_KAYO`Coyl={*tAE~% z;oBa^J-gXqt&8%gq~6?nT2MMbWpy%l{I0oZ*@uz>`W-O7SEZny_p;FFuHK3D&kAVG(pJOk*7DY*}Wlv4h^6qB{?r2GpI-^ks=YnHB3ZqhQ!$*2p)l|KqIMf`R z@IH&b?@hdGkpl2C&R`%e=d{SjT*)^@Zuas1e-hr(z4ST0S-?#* z0|B6UqMfZ*>Mu8~Q6hG_*dT>`jHzDb-b6=!jv>S&ieqv17U4zR6`;rIjLyBq8)l9G znmf)Pyk%mJZzVsHO-0Aqhn4C}NewTOV+MN@2Ugx{0|U7UA<*5uEPtH5UvNV}|1)MO zj`G%j$(FBis!4Q8PcWL(8CJ)MgmezM9rVk3CF6-g*mTVG*&pe9ju4bskM^=1U)ln4;VYw=gYGz6K(e**JR-{`AOD7ASU z2bUWM`=Cz=l3dyMIzqiRwh50gJX3O0wwX{MlTE^TX;D8r z*4K!ETZ!;mVhSTTqMHLz*2Jp5fbx!;%U8L~W5#V&yk{>5PeOIC;Zv0i+>#r7jGNlZ zQyN4Y*<$H_6fOBWGpoTL9On9{7QD_Xza;vH_S2#z_|fd~#%t0;`J5 zQEXM--(}X6__G6}e;NU5Ypt*-Q6li^T5Dk}KH+TxE5G(_Bk-r2u3GN@|Ji#N_^7ID ze|#ncnS{U@AlhJKjoz^h4rnM~vGKu#iO%Rm&>Kt83810WDs5>CsJ+ypKrkGJ>aSL9 zueJ8p_O`c=+xxF=wN-CONWv>55Z;djd@_tk7!(6Y=C{{(t$og!Bp_OQZ~OamKesrU zIcM*E_E~%H_4uyuGA`>sxz0l+RE8N-)}VgMX!URZ6DvKgd(}c8bi*gJUFL&;!9GeE z(8aCBO|9mGF8(-)C@>r)u+sTET<%lwcObn?_&dJk75!Gzrf3Hf$_%16v}V7?CQJJBYkU-QXh!9%wOwqC6F_d zGL{}R7&UQqe|3qmwB2AIda$c!ATRN~b)P zhmi|(Sa^tyJIk_gXJ~Mjqd~@oTXY=SNA2XJwcKz ztdZWr+I*(M8aXpzUE>heb=-j#)|MV1$&W`^*ZnPob)7A&5Yk6`2q~$=oWR`>F_}Q5 zx3K2Zmb?7w!HI)5J~y^SeuB9!fMohRa_e1I+vM^GGx!VzV{+Cw}y z;Z)sCvHT|hu3sav%E86!C<6+zIvK*{AlW2Y-JBF~JwDi!mmH3OthUBSIKvS{C~zHl z;SpTGE9G#+*2LZ9#;Hu3v>Cz&M_0}u2AVjnkRulEXu?QX~$?75c zM4pq1Emi~ps9nS(#C{(a4OcaVW4Y~`&z1liSZ-D8%gmOLe|3=Z^un>LluP9gygle?z$g7CK!p291tW*cVz;ompnBXXJ=Po5`5BCo*!YXIhgG=s$X_%F3~?i*+g=72~6M;aAkiJ ztSrcyrW5OYNGW*?hRULm3-yvw&(;txk$mtg7_HdGEH&hB^6@tf4CMt&4ZV(RUdBT` z@vmAeHQyba?V2~1=Z6;kEqqpG>!p8#z9-2HHO+8cUnyOW0znPE_Y9_LCG>6{_ud>I z=Ios~!sr|u>W$xS^*)4pC(!9Fe4?H2)tBlM?R@)08;TQ+B5aZh-x1HV337-rf&G;I zxc@EjZXkzK^GfI)@;gaqwYj}wB(Q!8Qu%~5+RKFLX6p%ZY1UK%rv;Y-Xj*Q zAV$1ajo7DGJ0+m|vF6o3UnCx=-LzK$g<_35$_#715h8jtFTP9J1zGU{Vi%AMccgNn zzMU39b>por%VFh*>ns2wT7jWblx1 z`9{X0bW+V@@Fv-H{a}F;WbmKPC&=I~WBK{#v!&mqogAs*f*m|MoFCn*>w>?IFCO#d z;fqbi;?2V)-F}_=u>aWbREpE1qrS<3;$07nV~pRJ+NN_{GL2nsn*owAeoN|s@vCKw zUnSC_i80>IY0=LCC>b<&Ma*%RW-0yj1hS&(*CR-ZrcVjZ`hf%HV8CBJLx6sz{-=>T zGi6u6|1$slTEPEDz!v?#ZFT9Aq;7|YVvgJLP(0<6hIRoZIGO)=4KTq8{KrAy1O-@l zH1uSsY8L>4IGD-#GwVM+0`u#1X-pq!XhWpl=4|pO4~dfJc*wJmCHnR$NExH7yx45i zg)`K@zvh~|xWpx&X8P_6NfmYS?7$gYTyMmP38&Ot5yfts*+2|{WoBL2Tpu>Kh5IS> zy&>#x4iig$Tf{G}nKQ-+GDm(;z&R_ylAn$d?8%Z3gbrty5-Q2M^@A~j8BSbVZ*rtG zjNsa&&5&Jd&)mqiTHd)0qCY(!r=#?eOfsS6Xc0O*^Nq#S)|64aag z{y+_93qh1psPT&VWxw))h`xYP@hZJN!8uxsui^;5`#}emC z@i^g*xIWji4{=2EBH3h5PD$G2cpY%ZHi))Sk+8QRnJV6dc$Pk$62R zsW#Ry$O-(!Iqba)nfnD&tco-DU)7oWv+c}%YPe#*Y-yahzn5DltYd;^9Z~n!wL2i1 z;Yi#^)c`AT9}q=gnnlFjz4G=mWpk={)kZrycqDAJqwq*@_Wr48B=qJ1|H3QjXvdiZ zP2a`UZzJXwezlGCUeyK{!E2=VX}cPnh{tUo3*xa&Z_=;Wh(|RnV!SCGvxywGIN-eT64&<-r`B<8}r&Ed!c^7op;Kyfw&X~YotN+eIR`5zfK>o;s zD`)SqtCj>ikUP6yuJ{+eBDlw8U6Ip47pR9CvKSFHK2kz*!wnwT(G5oR1pf54QGJDn z<4H|Mwco=vP<{*OUa9fMK`IQA_|}Yh(*kBSZQtf>B?h?woZG^1)+|K}v<3{VG z(FRPK@zA9LI<0on3)dUVZb!4X!X;m=Q?cK63GZ8Un>2pGfoG|40wYg-T*7CBMFPCE zRqZD&G|_8~>bi4yqF?6F=-V{cN))CaqQ^L4EV~K)g}6Ubzsy$ZkxF9|U^QMUTMm+c z+Zmj*yDOfbVkjB~dL!*!9B!}NLI6{cu<>O{COF%e_#_E^{7tsfQT1dCl&CF|ESmo; z<3lr_CBipnzOkfJ?(U4Ald^N1%kj2p9$xt=-8sDpZys-5C&coL-x%K^zLIzYJT5Qm zEN3Ct{ZAgk1wZ&HO=x}mKe}zYxd`{JT1rgN`N%=)TKCmpceFZDKpeeF&dkT7Zb?U` zoqk%&qT?BJ`w{L+od7?-i+@v3fb3dh>Pn+fDFD&e1&zDPs2(i1*53*w^dQNG5;-^C z)d?tP)fy7|f=lQiscyllf8%*v|8D??)j_g<$2~6C(`6Ok27;lJs1uFyabNo>Bgtrs zqFQf8^;owh=EKnEAQ5wpJr^DgP-VJOW9lED6x*SE4|U<|2yp3a@2K&kXo!br=|6C=$SEY149f)r!(ZZ{9@I5Z8t>l-lgZxspZ%Pc# zNdWuUH8Do}xkZThtr;~p#@M2>hV(AAHC8x`2^G=XhMf4PGU40 z;zxzK!6y$wB(Rm6I0O)_=eLz~@U6GSC-ANeItbbq$-6-Na$&bLc`=GWk{bpLd$GIR zfm9tCeYC=YHRZlgNloU1a(dCa`k}16s~>+Fb066QIA;f=O`93%i3I$)sqX$Qn-;}pDkTI>Pkgu>x<@e=(K{i$ona=<^o^sA#OwRor5ihNX7Ur`2e`%WBw0qqcO}t=mt8x>U2a;KsOC+XBehz9{6han;_)4cOnPmyygdu{&`m3Fxix z$hYvD#qPAnB>~u+4p^GaF5Lif!h9V`fy1J;Txl)YvpiLTwgiaZC!X>!-tI2iR%HuI zg7Z|3@h+v_UIK~R;}R(%nd{K9MCE;2-~qKCrrmy+-Mt^C0}r#O&xhIL(hcOx2i4$Kl7AW2N$jR>2i7(e z%TeZX6J}vfB$i(oiDec=VmZiTCr=JypjQdpwkhN%Y+=97NNj9jC^phNW)t}*Qu8jQ z%aNHJ034L|7K)t!tuR~`X-E9$E-QnECXy{THp;Rb(A1oP4uGo1f?sCyh3VECwUbM| zi?NkY=+k^p;u>mgoHZ=NOUwnC1XRuO*q0*=l7&00*aus`6!S1D9?KOkDu1xRx48_P z9jqTTnr~PS`KZgvb^16TlJK|r1S-z&g}==Q9DJ}mPL6?#dOwfgZy(Er!-}2>HD@jS z?HITx$Gv|z3(*LUWAN6l9W-JG!PiHK+zKolb>d<3!p;^YCKY86wonc(EuJ^yKb3_u zl09J(7)UZf3sGljeim4g>pSD$;hl5d7iHJPc8Qzq&9cvCv?BwXHXSbx*e7I}5V5XR^Sa{IP->+* z4JVXQeFB-v8opgScP$URn#E!cwtR;|vEr#Wyq06pYsCP(>`n`+5rx=!7JupxBX?1} zIOq!jxhwG8=QKR`*BYMttcK@uhyszUIc|w$Ep%(D3%5{RxP|IM_7;}_fGEZS1n*=` zx&Q?47v9iOtH>J~!Fz-Hv_Ad+2zomO;Va;qiQTs=Xs!*KE1gx0;mn*qy`JjPJUlm> zV63Z+<@aQBtO8)wnwh>i2shoBEhN7s*)B_TQM!0^wqTB35{N3uX51_d+GQ*rk}U)Y zA#+^jp)8mAIOUz1E4X@|xzf0)E?8U}G$OUZ8h*Q_#VeV*moBlfX6_ZD^{4 zG{^Bg6r);*9ilc;Guw9;m93cTn}M1YbA6Lb%}$gq4uYeX>P}BdMXI(NQ;vqK_Lm`G zg_6`G)Fi^Xy5{>HrFf0?MT++rv8e>k5T|K_UczayDvS-qkZfoQvR5X}N&23Z9)G&QNhp+5bE2}xI;jy>anM4OJn(qf;IWR zvRHmKdCit=5}C8=+|5OuyRY|E=PpTa^>Ba--Eob%^g?%?4uV~3iVNM%%>q+nCItba znTY2c)_7IQ(BbX_QeqE^+t>9SM&&!|t2>yIAe(%AwdmJwS(6fEVN3`Vq61G5>68`Z z?WySOtK8k^K0>)Wk-sB-RlED#N2qpZ!Bth8>a8gmoTX)uXvTtOu8$cB)ZWpe_l*|t zb0mWOwghW(eZ7FHJ3l_4Dn@ls$zmdthGITWTiv8sCX%1~SAEyx8gme~c1V3J^S>EX zht@Bk#HPYkb){o=O^W3n3i~^Pv9Gwpv79DdD3)ktt$H-GoQ_~1--7UcTqBN_H$=_N z&k@~rCu6UsKD}Lj$s}FvB2>mj3N``V)>6{+{CVV5{Ik?<+d?IlmPFt^;sWH#Mn6L3 z$BoKX)pLijY$$rpp)*NpkIx+zC~h#8tYxJZx?ave_83lGv5@gal#exSHS)cembvLj zLZ!DK^L)`WJm9vTf%5)x=}AZqF6PH6ex=?6xEKBzFx6fT~-^vAjOqK zhR_&Zrn$)Ax+v?6B`3M9+ISZ{C@Et}HVP(u^>Lom?P^jt!Ix!Rw(VPAoA(uKG7UAE z^Twr3!d3sCs<_q7jQ>W)e4$aeUK~`b9hXOQFz&=3)PNJeP8;po zc~8*|i67G3<|PHu<@J36GfXn?8pmc582?E89#)?VrGi(d$uT>Vh92sm-lnP0QqSDf+EKT`$ zGYG(Y7gt|v72Ae1G9a%e9Mw8(@lhLjrIok!c6|zzr&tIDc6*S}F^7ZZKBd48(F!b- zyy&#s>k0h(@Wlg2bzEgEA3lKdr&xnUnGvO@9y>>>sCAwrjAkw&TkAN7(PXT_Djj#j zIcXZ~f8&O8uYXM`ugmChVu8$H@m{5}?hV#FD=O>W2R`>fDyxhLg-;xVr>ZIU181b(Q`P(A?dQnn^pN#4?ubDR~=|}>Ae}z6m+lhKCW`4pO zk>iRSIy;~k;w~$;zcOjnYd%I4>(mad6=V!}=OQ9M7hs1&I50vyL+dkd4el-TT%5d~^aQNi|LOQLh>LWrc3L!h3;V{Sk`YxW9DF!AVL- zjrdQ5VmZe`{v)O4?udEG`+Kv9F+Ai?1Y+NIlO0D(tu!_-6;P{&RqN8cvq9eNE zjdIqGB~6wqcwyFXg($L^WQgX7F3~(T#UJe!LXE`^)q~vebNPo&@vo^5#oLS}H$t~) z1W|)gDKt!1a2!+3h59>Zv{8Ktf1&0=eUU%HsLtgtf}_2BN2dHe!pkr49j^YGG^!8q zr_Dz7UjDQVA+SFaxZRjo7hg{UX_|MwJQhKpNAu&uwjH5K8%{d|`Yt|eue4`_ei>pN zwpVKZ7p3T{!&cXP1>XSGhr(ft%3!pvgT>4tYOFZtq@V89`ybI?G7v106Uo@HhMSZz8jAiGcXK!zR(T1M>qSLrJmWKQE z8GY*meMTGm@ELhOg3oBL_>4C9@ENVrKBNEEKBLq6U*f~XXEdm%&uFc&((|tyx&&2sw{U`Ak{g?I^oz};dc!B&yzf1RS&3gtvJ$=?+^pENSk;T+T zE@*$Fj&95%wrN@nu|PlVQ7V4@fl*BvthNSNeiVQgZM7{#zkA6pNmhfd$hl^YWVH-SQ{_S=K_=L%SVOSS_+~Yz zMJL?K9_^9tW-;1Z32#Da&o_f^ZqW&~jV+OFzt04PGzNC$969;M>yoG9V8`WN`*N>N zYMboPAbChyWgA47pfDAcos$Fecxcffb&L~Go6I&(QrPUhS7*-mNF}vF@p<#;85!LO)2ITYKCk4XhwseAXc|#}R`;X|K zskRuDE0mt1GHYBDTz>w%{G8cBUuSO6-(Q@`Q2X!mZhn%W_G;*r$BAZZtFde%u(MZZ zq%lbE6G*NRCDNunw6Ci!Uy>?f-pD$#3#JlW>zL5sb{N&a?+47UYLxDrzQQ+HWsy4@NW7!>O_jYNwe}-KW zt4%jPSsI8Y& z`}+lcX^#KG@g$Ko1fgn%vncbs4cj7CE4ziA9%C(UfWUnp{mbe7p(6eIx#&zLSf>O?w3c z`1whJIX|O+CQl_*6I<%o1QyAb6={KdL^iN@;ywHoJc_?&Gc)dNVwo;)Mn;7ugJnA1 z;88-q9YmfoH^yM%4V?jJc`G^>_-9?IihhdMyCJ5Ncw+Z!A*ALH^DvI=w>mt`9Ukel zJ7YmmZ`kSfAo17+1gWRHVbCAO%B>I~FH_A%>7(w3pXo@axM;{$+D9#}Ph{g9 z!y%?-4Rvv6AMUa@km&3qJiY6>68DfS&A_ra%C6M+xVqN{?Msz=E1CTmO;CU)Aho}y z(-Tx`^z;$U0xTj(Xx;UskG{<*VBV`Yd=+cE8I`IUsX&!cag4U=pWz2+FYAmI+q&qy zW#-L~p)eJZJpkNkvigO>R6$=JJ6*$;(t5o^X?19Ar@-rNKaKx&yVL(VdZ74U3kS0Q z6$)a_v!bCYZL|MCQ9Iuk7cA0*NkdJD3zjw1*NnwG#RW@Rv&&e#E}Q8pSeYJoQ&X19 zTtO@l=1TK%_QM)C)un13e%Ma&!v;u&Cmq}N!xp-oepubA4A^{DYqa|5$Q#?Ly|KRr zh?pF*Jm~>*KWVn~9{dMLv3-PfTqw2+EhRSs{>n8_o@T%&`>n5lyfW&WY!O>dh*Wh# z?JX)Z-ws!`LZd2x&P$rzkf_fSDNaf-b;XPDtkqebwG9~k&T#Ddt}=i74WtJzN@SLq zn`faf9$a|S z#-gh4SaA$nInvZfVitKCZ?iqAtVH`V#GO{8?_qaZ0hVWmN3Y9F-Lm-7*xA~N<%s47 z5dRvv(u|6CEkcB}+UCbTN^NuYq#f(4wE3}*Qrf&jytzlXnDX85q$Rnsd6~JJ-e$yH zM{g5_%{$7-leR5l)+xhACr9V^v%F}fR&sPc9On6MCl4FVTR-_x+u!~4peRMUhaU|U zm46VbIv6TGV8o8Yxd+z}gv?y8jII44a~%qsi;qu9V8p-Y5vpunm`n={I4YahfzX3o z&?saH0#4{gT-qEyT`6tuh6%Kq_#KWje^8$F`pIj}1P@5FC!Pm)GM(pvo~g~UiqefJ z2iFBUX-Q}Dq}MS{XdTqbqq@?xr@WxkugC4bi)|y?@z>*XZBVvgGQW#pMQ7CH_>2qL zn%T_NqPO8czRmRS$Ze#s?lmT^CIjeoV`8RHZJ|rvWiqzkii`2!EaS36#k5d;vx|%~_0_ACius!H(C^)xGyXb)t}k%V zb!Gf%NzkBhb2-{5Z|jOTi7i0cf01on{Giio#mh(qJytVqA6-ofbo>WG#ulUM$9NgS z#m4!t^V!kZ82`E>nK_rtvfMUFaOU1}wguSksoX5{JG}u{B_-Dp8F&k%w>g|@SdJ>o z+*75_(yNf3(x2?RANtAekiKrklfCGc#CPfLTK!<3KV`$}EmZDyG#o|4JK|pu2k#B| zZ@X%851RbEZgL#*43%;|u_kko78|k8HUmH~^DSs#^zy01?V&Eq3%$%`*Y>5KDM9X# zhzL0iXC}IIIb7N;HlwU7n(>w&;<%CHE~$sBWh|-7;Zk*mx4N`TvYbA$PqIAGmF_-W z@3P#dN7O^yqI)HcbQ|lS{47E4-S-y#;UkFBT0TlqYyB0=TFAkQBylNU8~2D5f1W3w zTu^OzB0O?1fqi|pJkXo_ z^E|B9F6sLII)kazW%1pgd*7Wl-~G8a-l6&Kj~h$B*Pm1A&pr1};=5nmUuw>}Ucvpv^as#qvBx z`x-$t=S0k_JN}&IB2|0_&=&AX_y3C;cfh}t3pj2MR~;-fUxl7ugh1#tI2pg&7s?_W zo1j#>Eomr=4Hn9x7vOQ0abb|e>>c180}eW)0O*W*vl*#PxLmCokQucmdvh7p!fldo z;T;{|iZmu8q8hq`l*e1OhSiJ6D2>Oc4;rIDZyF=4Xw|al=Y+L*{o_JL&>q|ed(qer z%UssRoyaf)--?`yAaL}yAW)W%kE15SN{_0amHtvJ@Q;`kHolp5^O z{od?B2vywqv^v$_xdtNQ&GWxW?a|3dPWT=3XF{_}OfPP5l&KkYy3K2hE~YchSj4hs?cd2QS`e zEdN@6_7FXyJwsuArcCJ1u9#=X z2Z~`XK}nd^Mr5^Q;1;ia;Ile0e9Y0BBApIiQ^Z)j3JUm!LXzaG2OUz4&cI1P-Z*m~ z9f%Wx{=FRPnsT(P>YYf{4g@7}HUMtd|Hrp`)X_QCS5|z)h~0{l;QPb^941mb@z(q| zPJ)n!zatnF0ieQWQtc`PfKo<(*#Djb1La#>78_e_6uz%4>l=a8O%nP^DQ`f{-ofBd z3;U!G0b=gjuCZ>TE#woQ0skb(Cr}d47Sw`Mb6+hC`50Xx0QU?<|LQE&F!-zhWK z-Wbb#uLsDf%->$x@6}#qMq2;+G9z2{0YJWqc|Qu7IleJRMYPKNL`pX5)(Q{dnAFFs zKaY1v(5NO_LK3ev;AxS|L4X4)@pO)fy-9O{MyDc=)#1zN2u1PT+ zPad~IzNGQ!37)XL#O>7IWMEdfvx$66+r9D7c#9ryb)00(3iCQJ|AVbos13WFS>$#G zQmYuSQmZ%Y(&9Ia74u}nrk%;O-2FkSrm40V#0N-|oj`!$$&5~6&%fHH08JTvf*RmW z4BNKe$$00MKg2!|gvv86sfJZoX6{2htfAUOfKEIu5S4_c?`IPWbiJ{Bc{V3B=_*eP zwZ{MDY;oYv5X{M5y~R(;=2HfY*p%dSjkx$-?Bc&%T>M;0dfYw#NiP1p-Y$NojAra zTP;+W2xo|lH7edcEiiVZbvy*pfUyBoRSa+mpNe-AU!=t{1)7a!HbHlEPF%#uSY7_d zs63+n%Q+xY07zqE#ZK{PJa#AA&O(+#fd71_FG%e8j{u3)Nl|@bV#j|3Osu3uX;3Wr zj%VwVKMz6dnyK1P*j!&m&T=mFbE+yoI}^cPVA#)oC@`$f(h@H|r9`PU^@(3+DPuL? z7pZy-%O`A}2%Edgigy~ZZvw2%N=lt&uI_-6a-*9#gOouU%h_P&`xvOb2Pkb3$abj? zld6s7FH+JUisdg=nyDp@1GP9V7)WpTeip}pY2tWX4fUjmBfFsnrio)$x;QRiaa_<# z98WsMaiBvS2WoM=-zknK`VhwjeTici+P1`z{(S#T#BpFRaU6I`aXfJ*;yAFEI1W6m zIG$j&g~SoSdwSiAEs<>RA(G0JE$z3HwlIigfLXL9U!cTNVGw;&DohcpFab%#fC}SI zBi`*hPwzNaO5whC$)ex>)7gR>8vTn=# z-DREadw7WlA&VAOm ze$GFvi~j_>VY5`lDd6%X<2~_1-An{Zq_UAhP@W~N?AiiHz>cri!W93DhI0Rw8hAOE z(bL z@rh{+wGLMNoa3rQC{|Bt~VEjWgbZV%-BcL+VzZR6Uohn^MID zfpNp-z;he5=9X33Ld)w=h#&_&#eig5?x3Vykq0 z@K161l+`%+;(g*-fQFe~$#|BRbUxv8*^FcPomOSdY*Aq!5~Q_DBdxzKI2MoFp$3zZ zTfj>0%}{b*6qn1@)z2!`?+IiReisglUfG1CJ`;-NN_u#28j2+^4aLH3Qs2Kze-;~z zT}$dUy#hk7FvXiOT&CFq-@VJr;zEees(yEB4Z!`aYq z=d$x-+`rwxxrU+Qb|Y3vYQ=YR-9ncxYQ-ubRkl*DVFZN!cCMk63rx#3yy1*;4PnJc zE9jsis@}Jgl55zW?44`aNZ-XTcK^ShYv`y6aK(qO3E;q|NUlGnQRB@ng3-7+jBLY( zvb1c&t)V_@1h#*iH3HRmn7F^JO6kaC9Y(B}_6P$0@X!+TQ@!3i@Z0wnCNCWSg zZpbQZn3D|~&p6qTgzjik;8E>;*i?;aHdW7LL#Gle@TlVik7A?BDyA9`7ZIzkb`zHJ z>WyS~S%}SSk-X?(Rwn7sBS{U9dQ;$0eOgt2pNWQdYw@dbaiU>ZCmJ@FIec&-|B+z7 zt)_Y)%$+_Nc2zz9BJ+6N~wep=Fk; zM?=0L6NMw;keqEBD3W44)aXXs^{Y$oWAx7s%A8;#@L-SRMsumgOmj_yjinT2QID2C zBETA~`k(j5oEHb=(X>sRg>VOVa#<5}Fk{*0(B^0c_Y4EL$Iac7@N$kF=>2`le4M&Y z66}=XM)SbXey=PhPYN%CP)GA-k5M0)a}Ml*4$S$va#QyP0@AO4Xw$yJig z$6e));5*~4l!I)0gph61jBHM7vh9J;R(A=ghAOr53`!LSjyOHf+}@kxzZX=^d1Q

_pCe;|A49+Lm-Hz(gg@<1MG2$ADF?Zz6sUI8*m*_K6%zgB+NKl39ADNrrl?U1?)2bd0s1 z8f(`FjNLZUBh9cvlwCM2m+PS0TqwKHk(A~X&=rMRiw*ihmI_NF2-QS=-cqW)JKL8>H4EqZ z3dS5Y*M?GS5K!~4E{%P2X6&n!n7x`3vaR^F;SGBtu>c=dSsYPDau7wa=iLp-%F=P> zA;3T)%selLqS5oup^fm~FOOMMlk+FyLrFEJ>ci&hK=IB8p2aXDrc!B5H5~G_D^o;` z6HkJGsd}s$uRH>^`8@n4Srpt=?Y8k4eoC?J`9Gql$owa0XfHg)X8nf5GBl3#mp6BX&uGV;-l(F=e2IG0I zF1?2EJU=wp7^+}n$TYCqH|;kT5T0kdvU#=#Yd9;QR89Ofx=f~R^GtR-aXl|uh$|_; zLj={ab`}j)3$j-wm6fYQE_7MdA)~MSOtj$K@PWKbDydN|`P5Z-pYO zg9CxsRf{Ps!1y8ZhN#ovpB<`fDZA){Ldle-%a)P~8#F5R1mwf^Udk+e86RzFv(y?m zGon!sYqME6yMdQu{S$(Rso*pVKHOg^5Qg{Q5m#2DZm-qDA270C=yL&6VjEX0( ztz&?zzL(`n^eZ#>>H_TnGZjd!E2X%{0tj)gTZFhNT=kw+&(8{SHA#?5nPdnkG+4Ff zMTnP@5K}$B1HI+9oaOiCzT_7P&Rewnw)Q2zt?BYx&hlH{TYk5ksr;6onfz{a$Zs2W zpye0U2RDD*^4s>ekl(g6`88t8T`Zrl$DV_PDEW+-^fJ{eRZ^NRqDap|SUI zxYSeqJ_jphTR3)|C*mhUfi7`Rg)LS}EIN|YaH{U6SpE|vpK)DpQv6e;1UH0yhI%=u zlzeUg@>$C#r*%3#RP?1qN?Cx`Txczl!SYEH<;y@TOiOv2Ea-ryD9}zSb-sjbFIA9Y z2XIs2eiBq^RmZ$s?55I1cbhHYL=E5d>{|+0DLNURG=!xm*=KcGo3+3~Yf@T{)tHc6 zX7uT((!ZyBs)X6V>8Mgou47LXXHxCr@GJ9TwX5wVVs5Z@m{XLP+^W%Ws#fV!E{=qc3A1OWfKBq$^8;j0u<D*23}jWkOujq0zsb>Xxx zLgPe!4^96t*uF#K51@FLR8B)F=uCZq-YSQrxjTl!-EpJ1J0zV4$x{J%6Gmxo0?L0C z*9vdKFg}Kcdg9*`7X_6qxrLYc5Rbk_FVG?ONi-BE5v7#HqtfeSYT^Zi>;fRrn6}+m zQp_E1j$e`9F&|e$z40fV9rMmG#H+8dI<`-&pUaltJVAF{4F3sf zR~3jS-{cOY8Ui($zYCe;b}!3v1v#xpt%G@=A)BwjUI-L47>|?xTJ5fgKj@M-Hr#q+ zUf(tR-e~JBPTU#L44?AmxK;bbIq$=UM^H2CEnMcwPCy7*Z=-kh8Ee?&*yl_t>%Dt@#q##?h@a=0S5rPf0Qf!)k-O3%4C=;DSWjtF zlYTyZ;P1Qafw!rF`}CsIUZ>mWU4PMKjeK$X$oWFQhz~}7DRZh;e1HV;eR||09MYt2 zywz4hMp#3?)H(DdI8|2>7(2A6N&T-usUnAQGzE(}$K6^k_z*#gI z&Y~G`7R^Dyo`o(c*z<@>C;*-jZ&9s_QEjbaChT=_&=f#BlPz6BziDa!PDLuz#x>kX zzw6Y|)Sq|S(Nr;{bv{ze&XWUe`s5YZ_ zZc@5GgJQCiVa*&XqZB2H$yzQA`Yj+71AoquknDfuFo2xO7?EoO$y{V|Q_qORF3FK# z?SdS35iHbRjeBx<9w?I(5cAt|;6LILNMx_m!?ukAQ$x@<{#!%g^zHxXNc~M>IBn0Z z#?pcu?BxAtjUxBP&>VJe{DR#Z{nVfPS0Po&3g^ynJ4gwhOml5K<8W=zc-g>uN>^&) zN3-XH+!-NUGHOC~7Lbz@U{`gLKZDeQKpIP;yPqF;ZaKU>-KWyU|wWuP^hjBik?-^HrBA z`%wEg_QO83QOMWP@`lD70HU4GhMVcUUZwPJDvVn}tSpldPXol^>+Yv%y#4r%?(IIRns_6;Xpfja_*E8yj8zA*W+9eIVgnJSV zyq4Q1+}SHs@*S!3t88q07Na-Z>A*92m=fDQEU{1J63KlRoETN3t*EzJq~IH_AVnN# z`4X+q+{~o&Svmh%^ZesjSf+N|g;Bllma(qM=`_~2h?+49oy#SKCH9)dN8;qXb0Lk=FvPTH0Df2L=K8)19QvcRR)b_*?M7%|jI9RDeAWcRE3D35-1TOfc_If)o;uKP#w!;c-Mk_#I`X zdvg$6J}z$wK}@!ms2;O^eqO2S!8v=e9{$M_pP|4dK40CTK95O}g)t$_)f}oe&|e{* zk8o8h{WUq{->Bv+?+g;W9d9kFoU zVGC!4SU8q)-+;j8y=-0lMyw0e6F*=q+lcPh(V4kKn-|k%3=1-_KdAqx*541Xz3lyw zM}CgtXRk8bx!U^F6Jq8ZCwT)2+e7Y*o=CxJDu64UH=*;DVpH9zA3Xz)o*|FE4T%pK zc;pPSW|(ThGHF(^N%KSxlZF%c9)vJW<-&^54Ky!njOu$Vo2JSwi-7@%ZVJ2QXU3Po zrU5397STBf*qtMn=s4XuV%0PvR+kB@=2q6^cg8~kM`W{xiiBUGNd`ts92Ypm1^qxI zp#Bs8SFtX}V-L&#GeD5%n6A<(|3L8IrgHigOKEHTPHz1;lO`--&2`#I7*r+v+t&Ei z7C}P^C|l@Z`&m{EKWhe_HAAk@&zd1&OO8qIL~Aqkvrg%j^3#PDqe4)3d97G9%b}Bm zVw03b)1)k#7i4kMt~CPTE2q?pcS&NeN(#zfi~qacw{Uq8Z>|W8@k`@-=!?nFv|Wk& z@CxsCzCym$euGvc6RZbBLpj_sjAv(jmeXpiezfxKvS5icHLvLTXUm~pSq^tnZr=>L zsUm%4VLfL^;;rgFvyjgDsLP{%h!O%*9m_cxSbr~(Qpa0)v`eWEyVd{5e^7BUe!ZLR zj$6PPOWn*#7cM+~A$6wOft0r6vsUP;YbeRM2@t8XiZ^ zc}+ysML@W!ZmFvvY@=uw`GSa<11pAVjJ!)Q`J{kf#}a^)>X0A96DHKrSa`D3C|rv} zsT8gNDQg~GN2V}E*i*H{-)gG;zD8EtZU`iE;DfJASQc~meMQt)^J+x43 zriIUH7J#QTBGro4v(ige6>?vr07hzU`qYs4=x2KFfXKQ6ZxK(BCeRu*k z()@H7mrYq2y#1t<*?41thas$tw)L;HS=qL0W;p*&O~oe0%p;b~vRI@corsP3*CJKh znSL#7CclMvS0cvpQ_SyCjro=JqmkeFU#A0z@mv2@E?6oKRKtnaE#~SV?5WCeK`&O0B zN21!!9UO_}45pY8(z3mg;Y#r;e3d@lOp*G^SAt}N1&!%RVtRXHem>nb8)eI85B6|i zsUqie%w)yTc$Vg&t?6XLaq%~jWMwfrrhWHF%9*>v~Mrs zZ@>EQkFbUJ8W~ypjAg%pk@fF5Dwi&Ytp$3JLH{xwJjk2q#k5fsyicN?YbAgLe+5O- z2HnCJ*3vvIeUg8U9wa-g70w&=*DlmIoYrcT?_dZnJ>P!gp+(G?P2+e1<9Jkzy=$S{ zw2@bHSRTm3r?v_SUmIxJ9|~p2^VFt4&tK5aANYARvEM&Sb0iP-pOE3IhxqPlHUKv= z^`Hzbh_Q9Lt+Cak&6nH`An>h5k~5&v=@T|6aSjCOQEQ$G1TyuwrT^-bMZB|n|b z=*L}N*Ufa6{j<)K#|ub5m&h9^HKsH9BPT#aDMJ^`=>iLb4I_sB@-6WvB-G<0 zZ4uj)d6mx=7%)qG3dsEn6W^j|xdU^CZN#mw<82#3H&0qSyoqpm}z-B-5SbIXiKxXY(OCbupgp_4q=0wmcapp`n>)h}^}W&}9Mb=iw&x zf(fKu8Q{@wu4NVWRkF4j2nfx=1UQJa|kNPTfhN+#JB3TqsGFIH| zAk-6%)Q^Er&*o+RwG?1s#a|*<1=_@V>4-M5{&J)TonF*oV_Bgl1c=NX&h$Sk)C6-v z46F4z`>$T8E>^pGWC1>tEup3-gxLaMQZk>adu9R7OV0wFm7WE-aQ2yI0ZurxEI=9z zhHGa7%A{KwA+3{yn0;qNpb@OL?OKHy{c+|eT+kTL{yvh|tf1KtiT`c^mR z1D*PfJ@CpH%T08D^g<~A}<4F1b$aC0$-twKq7Rk+)FthEyl8&&>wj{ z?UX?Fo$f?eK`RT;n?n#9gpKw|38mc(Z9`L}U)CARCZfHoomRj=Z442A3^8FhL*9wh zg*nY@rN&X6QT-{mP6|BFt&;-j`RUgD5%KQs-bsP-bFZvGsgk@i-Yl@Ol|7OI|4U=! zer+WM_UuYq0{H{Q7*dZ2?u08qMSR2uOY) zXwxMna9eyQ{)@cAjktXc-@ZP+>Z7Ly@{`du{CwD5M)Xb%>^YnI4xJmQXO%AOnHm_d z3RC}ese$%b``KeH?426e*I4@{?c6};SbL@h(pU>WY-(WH|3Yfu+ZNIETMnXWQ3P#1 z3{v7XAI8q0xzQPFK)w|CFm@Ra|9&XavW(^bG1N|$B89P4Ys5>3iURz=P&-xv1^6pN zdDxsucGOrL9m*QpTF-Ze!W9o|uX-co16h`p_8HxFv zhDhmQ>(sA+S*KIJl#Z+Oy#i)ZXT=4~;}LUI*9@Y0<{5P4$w`8je+jvE0{)lip;D^@ z{y*G@K+^~f$vaKLm-_S?MX%IAR6DQ}5ObJ~;x7loRcjrYV0R4gxF`>De5iPb_5y#O za}-uuTJt7o%{y3Y-o;uo6?@sLjy)>&qRv2Pu@|K^|Et;vl2!^$Mp9A~$`QSbPG$ml zy9%O}LbEj>A2@|3BRxf-)uF&pYc5WqaqAR?fQCqIP29y0DRxi>tQ>_5D@S2+T8=`S ztvWM&McVD1q|nOkdyK-@kxP@FK~s);GlY23?4JQCve;LaLLj{^NIy<)uh`^hj+v+3 z-n8aU;a(1;!=tD!P7J0`jSm-3iAVMci*b;{~YirLLR{mBT zS}c-#DiYj*mOhk!d&|~%S^5Z{XKB1?^^Oqo*9C%X4ccvK(0kB{qd``o-3}Exy@HV= zPsUNf$Ze_6d$a^5!ZtpSUiacNl)(HvhY6=8P>2e>jKi}{xI7Kq6B91aGU3t& z8GJHS)lM>4h(XO^8Jycg2Df~q{qLRLBFN~4=#0KZ@C_Q&8(IYS_9cRQ~>2g zv5V~vSjG}3h)_aE;)(#*5kj+`w4@T2${X~hy`*xdvq3&>hkDZ+^rq!{NQ3&)9w%WP zq;e-0L!PFjviJz0m04{?i6Q3u-eRe;#GSbnzDf1}E&lePxr^RtuY5v`6FvsG5_8>& zA`J2~)^^}!SE4gq>+bWQMrASrD~pCaW>k|J2OZyW)oQ01H4+j{iY2<;q{melE2+}eM@{fw7>a@IS12d^5{_vog%&~pbj zJ-wZqehy9l*6k?sEDnYF?2jmKc8Nm)B`UrzZi*njcGP3e)ZILS3o5(q$y$p(R&gK8 zW%#$raHAWzOjS!)+N>dXDR=$-y(`Qy;0KaNfojg}@q!BbC^m#UdIxGuP|*%nkbQ%%g3CN?vV=WX1? zYEIl!V;zc7@$9be0;wpq{5k9ZEsT-c&?Oh?Lx{ex=cjyq7bfV-GWbgFdAanwiwA$b z9(;*FXrF_r8i|#-1F8BzP3GgW-1JtUR{bT`dhzBSoz$D z?(4P(?n_yzbr|?@=fG#4bPU}0z8d)Po&)bCq_|0^)phq6c*?r6+w!x#ul+1);IE4o zm=s`dqQ}779Ru$;-N5%a2fq6Z2foK1czch5cUV`pTLa(SW8ljj1E<;$pV8X{1*$j5 zW&wC^izO^eW$5`L&LzBYvFPL4^&Awqy@&J@Vt+%L^z(AySa6WrkY#`Yv_NJiDw%2F zc6-W95)}*TxSVk))f7tAhf^!VCM@q=!Q#gxsqyE>*v%Dk|8+@??0d138`(?KJE>78 zGv;X*5gcC!4r<5O-h;N|OFM;n^1+_5|Lc$1|Mi({a`oE^9`@bf` z|26A>+5c7c_u>C~XTVwi*IED9S^w8r|JPan*IED9S^w8r|JPan*IED9hx32Mwf`%A z#{RDzaOt#(FK6Cg?f+VHTK|{LEamWj%{fE=*H=&L|N0Y}{;xj#U-y4F|JQ(1`@fpe zM^n20tMUx}U(^+}S58xh3k(V2eY?Pxd_))6&EnxH?dbv=tDQTS_vr%r_J?qR-70;A z`*eYg(H&iO8W-68;sX0hpDwT|+68t?-!8DH{|Xn_EE)W5eY(Jcdhpktb%C9Aft_`M zotX>lr+*hNus1Ci*q**!V91AH2N)_VllQBx%#1Ui_z>*?`vvX@RC4*xdyx}SZ!G_+ zqgE$*!XDNhup6_5WUD0GCL@CfY;-n{n#+G4H5M17m;W4+&Caxic-nEZiz&x^1?a?9 z2GReYb9d;d;09{I|^drt{ixx6{0g&nU_f`C}ceTaz;-8XReg@SRzeMYA zDz@m;;nEkJ5ib20);4hICz2nn-r|QT|9M9B7C&tH&l600b+@KP=JKB#NOcCg)hY{? z{y$Rw^90i&t2LE3J_{VkRhnp_BV_Ig6`wR>w?iOT^dv&Aa|;pj^-dyW^(FkwYsjXD-rm=CDEMwp^^vBD9)Ib4GF zn6CNhww()NQb;zAzTHa20Y9^rL3es?go|?{`Y1swnKb2`ms9TYq~)25TR}V}POpN? zw%ARWO?;ci%C$YYMkgwAqRwYDrywzn zhAg!`NvsDaowYqjV0#@b_epKfqNLRJEP|>?DGXfOlV-3-ZBM1T2pbg@_dKTd`hOBh zVO}g<+|$cKQ@)A$ccJsjypeiZD3i<_S&2L8G`Q8;X}GnVa~xBw=Uh@63LW!J&+4^H z)C+x@tX^H*vz7JTdR^KRbv;emrH=&F#))w9n|B(0R@baQojzM|R-gT_`mEHZ|9?fFbrh>VtIz%|_1Od9C$C7rP*BnomZo@(5NOO$%|I9%Lt z(Vm*ICh$RwHM&h1ZeR85nbam=)@q^}qO8$8p9eKh4Jd1b^wpp2!BeAE*9lBm6CuKy zuChJ|YhGJ70E9J>;tr`^FJ7@Gi}$k;TEsTeBGPz2b@lp4di8qZ{ham4{~}+_Oy*!b zy(%&Lj8uuZtx6=4r(~>gXcB$Y1v|Yafx2L7*ZEuW)!^Me=+afesD6DUt$zKszBCD| zDwtD~DEcs(go7&N0CO&uRUIuOwwm|YhB6-yx<%F+ZKz?;qN{1@RlYvbyL^3VEPqi@ zS!QK_Bf^?X-DgNxGm|#;3NfVEenN+AP#NB@cUkt7QK>Z3=~L4!DzvI$XCBRz)S3JT zrmLB)rBBn<+-Q}rk2uQLhy5pl{kHuN(A6BW>1yDnniR`nikd-<16*TZ`HxCAkXHMq zW~d4KJHl0UrDJwYiscGP4YAe4zBbdzQuD|xr|T5_G}EDJPIWUsO+SH(K--`a8C!*) z=5aVoOYw{9p12>0vNO7lIV4fBexp%MH4})RrkV~R%})cKl~<)?eHr>AZg#UeC;*jr zTqs$u`Dt>fWc>~Vr48@TCqu893fu)FcxJh!Vts&XEL7GR%f_SG&oZiJC{Q*1cnE8f zQna38#hFyIe!XgHEo;7?bZahADf-+H&z6Nm+Z;+sl!lmoi#XGyXZ2fE9J<8U%bxYZ`4a`l`G?BPzAcj4-X>yao z_j0kt_i`^y909zg6#S)0RDvg^by(syn!!oV84Q5*5R{9!wsMC|X1<y{ zbJD1f4o;e>e+y0;O?JgZ_{>Se`Wuws97_q#b|}Gp6sU*(8(Q>Mky3q?#ye0KsV}Om zr`qPtstu}9-;hBn?o3}^q-HL0*Vh`0f0Q9g?ql?uIny@-3T-w1n(Mm@={NUfuzE|6 zpw!zhXE6J{H}Fz_8cT6=&?t)s)i)D@#Rnc3g_;g_&HDRnN36Ps`pBcEJv=_bZci?a z-FlL$*B6#5CAVgQuV73nU~Y-jT;)?If4@@mWbFEx;o@yZY%TPV-Jw`nXT-lJ6wBFI zI%ZASY!CVO^r~;K{&CZGG9NVFM3jz3P{B^Rs4^7?+n1_ue~<3fj;A zC%|2Xdr{;5Jh~#l8xSS@tPL91*CwuvUEeQQ-1?o7rAulbAnBvaRU^UXu6u_i&bvPs zRUeS9s(zW@e@sdZ5E-k0!_+~-)RQcqs@f&)>Z)!0FwJ9jDSahA=4h$82L;$jJpAu+ zJ@WMD!6Hz{FrFuC{)C>-lck^M(@8Esh36UWe4Z0!<~DksfZ3Y35RbI|JLl3P&BQIE z`I)wK-8*Z{ra(>kA6&{7Of?1w#nVKOfF}wTM|~k<#dIoBMDIDM-tUBnsa~3?ULm1J z3khfwB%_arOlu02Ouu(BmAd~wFiV@e(93A={2$UZZBqUJnTChPjY+M6eyxdzATL-1 z4x!0hkty0AZOKUD8 zbXwSKvhpid0o|-5`MORAD`{BrE0mGv-w^U|jpzc<-=p*%@e@1g^+%GaSIB;10^Uz1 z&t1LxUn0rLJ#Dsi#{~QIdzy7ee&UfZ=tcs&$Hvu6@O!?UsNzatmVqT%HB>0cJA=L` z6eXJ~FoTXX&$^wpY-$y3q{sygkO{<{WgS#FUTU^V0mp zbYf1Q&C@-=9t|i*4+VzpV(BZqKw{b49jIB-l5sd)cTF;#YOnVrI~paE$Obr zb-igx$9yNOI}Y^T78 zpBak7{&w1Tyb=G=kfy5kKZl>(YE1~gBzX}GCHC}^CeYr$%Bb!VoqcSU`g?9(mr?zO zoALG&uygMDM!%N!l%8=Rr{|w7=&Hn;jzaYyyzf2hl3mvtoEQObOG)$MBO>amng(q!1c}2VGZumFnQXi|0>Pa$CJ}8=u>TBF!%j{bDoj=^d#!bZ!UgNyq`Hnp;8&6 z?eS|n9sud!-&mrCq8S*#s3kp564LP&-5*-Rfp={?|ia!$-xJ%rEOfGEdf4Sw|CteP**A4JqQDz3yP6JPu4%y z)~htB@n5PbxqpjR4{(4cwkm@kS0lb2LP>bXZulxc@wmF)a-UtXF29m;+-J3>`zy{UD-sJ0vG zYbbU@_n4Ggu8pK(sFVG@h<|m&-%1rUVmYg6#^A73dxKiNT@n9YyS|~CoUxA8BR_q}@k z==GAcUYq*rwV=;lv5t>mo*p`>*D*QH@Z7whL*`Ci%MEe2oAVZO5Xgz{j*m*gYdU(TT+Nf+6tSKMx~*{#m5usZwa57F5`-C1`Z zogL7fz3y1v+rM)@E$_BZlM z#s5cI{C~6-zhmwHWX!InOdrXz8Ud90KeN_c7wFfJSi%Ia>ZwO#XBm$!vQT`mK$k=? zyji5jjON*q(J1Yq#F(Cg(d5Zp;^WS7!Nf+`h|=gMqP{ws)aEtvCTC4yvR^XSR1fap_q7C***mtd+6W~Cvf+Oya^c@mE|>h6I`v|^k9V17Rh zFVz_|BAr1AN0kg& z)VIN*>v;(<<$#VS?d-$isDs7vX)B&Y4Uv}%c87NXjD-bU(`)|+)$}T~ZmE1LnO4&a zF@j8K*ICnx436X6I9VO24jHGY(#KiT>%hlY(#B5BnZ&~I%J*&v|C39@zcAp*!<%nQvDAao*aD79ee3pqzErHO4 zAx&PyA$=Ltg2Tkkaf<{6oCP=LI16qZVb&DBndS#A_TWrmG3*u`ilGOx8-8gHlLuaV(Uxfel;xiWqu zD~0n$A@p|DHHMCNd;wWGs1K1Cz+KRGk42 zRelj7h~-y$;^Up&sqX=Zs%+u(Xevt|ja*5qq1EaxTX%Po^v{Q>eX6cLR z`IxT)=!iPSV>pRscrOvC)u&KA}hCGgf@r;P?rk%)0tFLWi~k zmu%l1e}?bOFqYJ?`v4F|MoaZUOJbddmQFJr;DD$b{3LaPfTE4iI^?;sdj(b8tnk`5 zU=(YUns}~NT)Tq^WgTRK*eO|^VkquDQkwSjv9sSniXajPt3R!%1yFBdIw$iQ}V2D zQmtL$S06cI74_wn65eJug0qMQ%~2Z$SNxu={oiE7tnXw6goyoGI_Xe8j(V?3&v>&x zRDs{n0;j_DN*y5Pv&xQH#$|6C%ihf(mEaJm-b-|Gq(?JYB~b5p6G^PuN=ktmW^5q? zNQlhOyI=$9%2R0@k2cvsF>jTE^AD)Te`?s)nH5v`U)_r8!@WO-Ub7Sk}#!7 z4vG2-jb+;~o{bso=|;Ye)P34QLxFYz;skU}vXsZ=T0teE2k}-WPmFIpkAW6Ri~4Dw zJ%TlvJOU`emAj2)FQez@rRT3<4hSAXx{vzr|7GvpY^ck?L}zrO*k&cv;iAd%r7ml23yPMt2qqd1L)l%mw$;||w%zW2-LCD{R=2jB z3%L;p;g*D3h@z5lxP(DrxaRkK-k;BN&Y2;I?vL*7cVGUYOlHn`Zs&8J=W~6(y%YZS zCqp#ZZoQuXIZMyH?ok5Lt%)8=;DDFgqe1?>aN>Zy$$_r!isBN+WXU1 z95V4a^tVZM{j+9hV@k=Jqh8v1B!o@WU4yYQgQua|J%n}-WN?emqD3HVY@j`ey^0hW zAUv0oG{Pgs%JrH0?y;G4_qD<^oR?2+ypq296fmLnZlFBO`~rHk*_(AH5}7CMG^#De z%5Pfj2GH)!nLMgEx7bWAZo<}Rcn5v)#UUP8QNW2`^fBQ z>x)&K?e8}!zlS3T>Icq!kA&O$NZIql&bQROmRR9g&`!lB(2dyXS*@P81DomTYn3P1h9~H!EG=VREBeagFKS~~ zNEcUF&ra=B^aML&Go_y?EWYy8a1lQ|x)N_(WOIUOiG)OP7-(yb)_2-rR>YkoV}HNZZGsqLN5l1PF z2UjKeDgwzmNM{)5U2jZsQ%N~@>0IY`8uI|vFJGF?fK;2YU(+$YF}6vf6kpcQ9B(bU zJJv@BXyACCHGpGD{w8U6joPcAeVl(@9sK2@7P?=9F zVMHq0`f#|bE5m9{D4kr{RT27F)}sfd^UXJ6G!YtKSv?wmFPUI4A=NU*xSl&p+Px&v zOVaA)1pP+6%#WN%+P$FZ@Nw<^v8G0tYGv!=hWt$mSAzZ%Wftqofd_h!$FS(F)Ykap z*ev1;NbLR`=G+OGWbfg8+-w!x9D^nKp4>?VH>BTggnh0K==_b)fsXTfNAlaOikrbk z!C}0KYGhQ?w25~DJbN0~L}hl~ohEyfg6$u1C+4w~euD zM1W?b3J|q?n*Io!pk=wZ6*;qXvc0*pZx?2RT}~_RH(lOiYDE&laMrC^bC1;(jv%*6ms;58dG_2QgWJwI`;W|2$F^moB6)w)JT!zrl zn?ohLZ0ArmY8g0P8PUx{ZHOy`hJGiZA)1oQc;XjB*-%H3yE*mFqaK&JwuWu%X9o@q zy)2<2WGeKegob)usRc+J5|YuHG+M{Rf>M_6Hygv%%kv-f)xz?Xn9wZWF2sbU>zELQ zf@;F$UCJ;nDL;qk&=`b*P+oL(<@b~UO~o0MpY%197roAzXI3<*RcD^1M}vY^k#c%8 zi21NLAs!?~)Q3nwqae!%W}w;epp*=>5_!b=wvJARpLddhx zY-GJ{-&ygX7+mzUCE&Xwmo5vfD?JNs#)r*9n{j>?T6=018pVU~fS=bO;k&TA@33sf8|)CUjLFLFlZ=&^Bjei19St14o8jiGd+{2Pl&dn_2n6 z=xjuWM*RM7C>X?HqR~IXA33|!Aw|gyw?(s0hWeYsz9T{35k!ZM7f;?A_8qt*n$;AP z%&Ow(V{S*j6J<47@gd3t-|shOHo*t+YYx+-m($;XFb(oCs&ou!lS}&}wsDFIm9x)z zw#y|6e^%KMCH!qLs%G1vC*8N7;!jEH++WmWR8Dp4!Y1~ajFrLExKjp0Q66QulRv78 z-4#nN!~H*VY07N47%-l-&78GFft-!1+0DkvHjWpaF;=d3X?vbxPO6QiB#b%WKF-OG zjgzR&^=Ooh-Flc=bGJK;K$Lwen@p1a+G9s4Wb?<3DIuG^=foQ9l5(H1&PK`KW3@=o zs$^N-+%NF8lV}`&e4SH}Hqm5^N(o2R#&Y|eAs|_hln_us!om5xn{o-`-=?`zN|4mn z6kxB+MhGa2IiF`q2uK&#coVv~rof5-@lDPMP=OTzDzG9zSylvyQmlGdf*cVb)a>UV z*px@bNR*8A37z#6e~5;f%Z~*Y@PbppE-Co zjig$Jea4#gBkfuS%0GJ1C8Z2MLFi_y@x*f@Ig$cxSm~f1sGciFa{3P!x+|sh8zWN+ z-R~R8c}<*iHR0`dJcN2b5s{W>kc_mUn8P~$qIN$OJ>1dkFKRLFtnIJSl@C354^LmL z_Fb1s=?VxM){Cig)>ZuKm{uw+s^BTg!!`2eK3)9a_jT!d_v4&2E^(ZcdI$>VRA=Rz zO};v-3O-ogUt;b*uL{0eFyx={2MPuT3l8ROelVs0jlL8}YC zwvex*1O*bLqbhlfsbhz+{yBZ5n5)bKMkJUHr9)W%WNDR=I};I*=0s`+39$Z~V+Eov zj6rKIv=&ayA)!{{|A)@9uO=>#M55*#w6jP8 zlFxtiOp;7W?^MmT4v+;k<)dansm3}q?ZgJw81C1_$WKD})*!}sdo-(CX@N>}D8bWH zkMYCQ!|PJy0qfyEpcc79$8R=hmEma)b(SB~wGd&mJ4glc53wjR8IMw1r9!?VMHH3V z+80&>zn~~8we?x5t5f25>U?o5bvwwQoPZ3P464&F92D&XiKCD~X>lxNaV%wV)CqOe zO8jfIP7!Cijdy`|P0*EcH|h3n?KKJjkpXU_3S?d7P-Embj#NN4-=(&drUAeiE|%Jq$>BSQRy!GaZ2KwZ)=&+%x%JRP(QGx=CNish^=bk^kfC%i zWCJE*<28iUze+0O7DW%^H54;sf_l(%c#{Oqz+EYXD0}@WgeXqL1`wiX=sV^^8OnSp z9^NFOU9j(SualyTAsYa7ry&~xjD{ze4QiL%ZG$#&IhnMpx5=T_Hrd7P>unOF-ecn| z3}xH~&joQCh7O3^;7OIs-8SXVP!98ZQb@{Z4)vC6|Pf z;E>HH9J0ANXl}wL(?*+2DtH5@+NFUvu$2WPOTZiKe1lXYE1d?#+AzV=vh;c4-eF0b zc08!0j`W(_qf_3|U_PN}UboQam6!-Vjh*xa0XiV^JYh6GcLUL(pV*_Sxw#VGc7iL* zt|jN8+E{B!eCtbm?+`8t6;3W(m(HKkXsoV=eYHxesXoi;{h-^)8D;@I_$3LBddERb zl~y3bNCS8{=XS8C5c-sGoW!}a$Iuz{Fq=N*I=2n)Kpho|wKi=i&_W__OKAB`qw2@f z{4>m;Qm>=OH5nw{was%u^^@IpMQX$*|`Os`sO%qEn zFbsh(we`*QCmD^62Fi(jSIMi%nSIDd%W=oH2n@s|lr+rHFJjIxi`ilrU#Ud{g&aRV z$MLkkV>4}wg$1!vmwNoQ#dqTDZKGw)p(jCuXom+}dXXM}EEFqH-1oHcI!yt*mxhWHX@COdDfz1P_5o!*dM ze0p)Gh($J1X9Z<(!IuFJtjr7wN>cykhNb@j` z{A+L)Q_uOnc!ZNP?U5SZ%Xue|Yo#WK$D5~RoS8@RET3l{Y;!dsUqXN{y4C5D0(=o% z)kwe>!BtJ_W4$M2f~#dyyzX>_t!&Q$a9pWN4kRHDqs>5kL~f`b0y`3>^W+QWH(ZDxPlN8)i=3F9a}(0 z<3tK~1w%y*Ml=HoVHIaS-jP%qBps-X6BqRD)mDizR`!N{T|}Gq*#sYo5xf+4F*w># zT`$p#OyV^zA-5aD+Mq|7JoK7pG(OJ*pIhRPFva$$WsUKjk#APbdn;J zDte14MX~H%)}cIl=LpkBZdf!CKztpft(r?>u^<6BqbUvVMoGh?qSo?#Kt%}l{m0GnoXzo)B751sy?B$tZFV76;^7LSN z*4oQ611x)Lc}Ary57FwC^~4updFJSCD2F$rQC7Vmpq57Qgt1zZporVwMB}nRGpq#~ zm9{`{ITi@AqSxmJ)Rsob3rXTb=E4Gm0hRVxONK9PMI=sz#gn%N&4xhrw0!joGIL*) zpJoxV4Ebbg>96UDTh-tWCtrhCT73@3lK$V5ia~!&J8W)&zBl$!BrRP%LH)~huF;t< z7&F@!-fG-9EoRKDEmG(BQqHw|053D)YHd}Q-mu+ReG*RVV=nDMH=ET{xq?z={^e1m zB7yno4WqOtel3)xmEx(dID!m}ibG^b3|he#6N91m=TdEf+_e^?w3!Q7=TPNE9qUm$ zGkG{af~q!qD~*Us^OFS4MS1V@Pa3QLfT8^kLt}ky={KqJfOcYf(1kJ#ofcHaU$WCz`E(aKemTmgBxl84RuBod&OWFd?57Q?$3_bKHyqLf(gA6K}g zh6GuQ^^DE%n+&XtvcTpxV_l5Zs6(wxAkwiU2hXF47kiU6N$=Rpm$5{Aa@i2%LQ-)! z{W51WS#!9zL?LtSVBwF(tj@vDx~%A-KO2 zQGY?>Z;}g?*wDkHEVe#Mk44YqHaLp5)G-ko#Cfsv5|EJ-(01z?qX8IfwACEp2k(kc zrb*m@jpvA#j83g~m!jqN_$a?Xu0bd=3C;nd5fLDZnk^fV1bPSbGLjxOci*E6msThd zFlYofQ3i`1w|CI!hamA@bT;QChi&GOm2&!_Z>&1izjP)&{2dPmxx|`67=w;3rR8h2 zXTLH2x?1=6zxoB=jaGf>Pw3J{b!q&^q=@HJYHZ^}SJS3*Qe)uN#|=ov*VQOU9$4dt z-Vt5kCUX|xLj83Cr37UW&R5xt>a53u(c6_Z{@ac0U}*`Mf5aI}XqaQCZ1%X|YgwE> zD;&*fAjKkN)~Q`G9L*yrl!92T<`DNs=yBuX(?E&IL*jr@wg(p>{02mTEqZ*65H}8rGBx>@ zM6LjmJxcw*xUzrgr)6e3cnGCFXQWlb^fxlKCGJZ*HNw8jF{rQM@rjyu6QQsi0DrrP-0UnT2$jt2gP=5oCT*}mWLot+Pr4a!N;8q^eh=QiY>A{GLD&x_Mrea=-1@0N`oTVWQ}M(fM^BoCNMU}KAt zY+sO$Ylic)kn^$nt=m0-(paWQ{^~Uu0T)O=c`~dqSm|}k{)Aq;L#r`N1`y*G|AK`4V zKW1jL!oNb>AD_$S^?XX(AJ=8G{qZ8(AD3lwhz_0sbHa>P55)!80P&|G1y~ly0;dJC zF2w?QE-fafEs#QauDR~i36cdeU0Wbrp+!2_>o8daklLkz zGdR^$1*az%w{3s82eLm-ekl9nq|^Rzr`aFwi`yS= z+x~D5Xn(xpXIHjIi%PovF_EPwEXN@1k9t@cFN>8i9R^4f%wyV{=yw9KR6ms!Pi`UG zgpB2N{1bg0q^Gz1xH>xTMwL?5w%2sAP}Xt(f50SBUr#$0FllO||Mss~0sVpc7sWpQ z=&dgVjG2@vb7PY-NdiR#CzJ)P=7DEYY?2OR^_8g48HJckrDc?iCha5l0a8>BkQn!n zO_B#4_^0fc&L>5yVh6OKBY#B~ZlGbk!l^%~8EQ95$?e(5=Ex|nG7-*-$ugc7*eGd% zQKC8{1sUF}9%J=>D6e~+PGkdI+0>Vs`E!ehU@3mKLLB1bJH`5`h3bzpdY%w?)Mc`Q zA28-NiGu$o+TSA$Kg07{jPq*5w8gxtfyGROzIcaA+HN4dz5z2)3tVGVEy}d?`oUOC zR|f0#FNyE2Qi0tWDY-N=X&gbn-zR2DG8rQO3_LU?lb0+D<35tU%+r874O4bqgwKt z*n#{`Y%G1?m)thlyyw_t>&Nh0W5dsBlT9fcBoE;ouGoF-yf!N5@YN{Lpa=z(x|69$ zIrL$4*&O>4x~XK-&0%s}4aI+3>}sv}t0oSq`_yBI%@yzXH5ApL@7`xTef6}Sy`Kkm z8{IzpQ0#N(*qVr=(R?1z)ep*5`9fSm!=G|OwY21YX@qbw;>7NwNB8Ob zVTH|a;_GQCQR$~_mCm zwwB6;9Qw=2Mi?b#H`@rASWqw3#<19*C-pnUnCT|NHu>ncmp-Ci?wbSDg?f&&zXoxn z9*T`QZ%~l*r25~y9QICK4UL7^u?Jo8 zH8MnCuVUPEsKj5OqdERv)di2blCC_sNLepwYkT zoHhfXEaVM!m;u?tZKpm`K(tdI7g{j}(&D=<3kQb>fVA^H@h?(aleFP8O8H z_edbXW7#+FSoTc;Oo9T-z9IX869zfFk~fm!Ih1M>#iW}2tNL{!Ea$kMKdBshQd{gv z-_RRVd&hwoPdcse9`Gwrw+uVB50u36yx2 zvT5iv2QxW6ak6a)I#m4(ose`NW!sRY@|~GDBys`r2edY523}GkwH7WalUBmDdO${v zCw8?MHP5k8XMU>9ndh}R^RzZ+SOJDz(<63GpV&1n8G;i6f$W;; zmR+-s?V1JJuDQjsYXT0t#!}dIJPay~a$?38hX?VLTN66Ox(0VAo843{B;*>IsbE5ju@ zhz%EpBAZbCN6T=D`m+K>J<3+;2^78g*fg3WEtqYiyy{A|Q5YjlvrE#@^b9n`qu*Rl zpps==uQFYk9b`I8WJa7oK62g$9j_3$vNI*-F=P&sg^^>k-}u>xaOVEiV&j>fgvxBy zr-aQmt4^RP>{Hv)wy>|>u1_%v-Wv!XnG*IR9LcaN1=KlTs$OVPUrXDqWD>hjpoYHV zN;SbpwyE>Hiy8D`F>?CfiQoGH_{fVqNd7bC#xy?ievOa3*v3Z&AzyF8fsc%_5d#Ua z-Vh7P+n0{5Mt#^n066lLi&hAvfg=mg2gMxT&s1N}?{ za$molw*mJXC4Q9jOND<>^7!j#RA-s?yvTPJnFMS-@bk@qxRO|PL9`xIBl{#>Gmfue zb~x2LW!@LY=hG-l$>fIAb3@q^H9H)Zo^IvWNt452@B_gj6QODEmr}Xg@ zI;D>%y*qU8wY;VsG6A+`n8|KJ_M-qHG z+uJu%+1~C$ldnq}!)116-oai2;Bd#wz0NvaBbD8c9j-drq7x!HzjkS>y zo1g)8gwl}`H-^k@O!wB{ql5A;(NP~c4d@?BcqUu1#P&*MNYWHIOnw+J7&5!Zk@#r%6(O0nMt@{uzye(6ro^ZDNJa982I+8zQ}qEe4H zIr!c>f)`6B)WsLu$jSUB_*n~$2cER3hN1AxhNq8IE=mtR!HzjEO7E`X%t2r& z{TKwp#UQy-0~n=|k|@WNw1o~(v#r$pZ{L;lVDP^op`(XoT9z3Bm_q zV(#(_|J#oX-MZLPDOHNyy9O`o60y~!qXF-sJ$Fn+4^URozfy{Xm^BhcOgYs ziCe7UTq@1H<#P_CoRqGTqO|7?*V!<2TMB-YJT|xR#V?$v8lwoB!AFAAk8g{$qx#|Cs+c z@iG7LpPc_VqMeN&^B;fAfBav|f4tG<c6*stp9$j|Ngh>zgDpQWBvDI{rA69|D9p$zyANx`tPz2qyOsU+Yi)# zSA4AhUPS+0^0EF~wd7;{_rF5_weSJI;{S7{1pfj`a96;LIn`hK)-PFmR}Z1Ay&cAy zoFSYK(JtCANU2E2Jvx|l+ZN-A-oc!LKr;?jkI#onylpURpUh6GG~hZ(-V=7xe;aHQ zorcXXZG4uJ_r6<$BLBWfueU=@x3r5sYO9*%1BKasXeQp=(s}h^qi&mKBX1k zCF(hhLq!?Uk_wSisi?PSLrCefNJz1-5Bib-`~5YN`@Z{nT5?|p{(c%j+>+#Hq5Ey* zJii9$xM>-F>x_c41LgM(NJqLJga=A#RR8X=wOcE{Z#}eIjqFGHeGc^LC9GU7LH@uI z#`T+%mU1vgP=M)Lxmj`#`n3Kn@cV9C|LoQJFR>4mVSE4rhQiUS{yh9ALZ6OsnqR~< zARj6Jo<>Kill>e}&*^-m>W!v{h=;unx^69J{B7clzwPP~a?)RLU>xc_e;OQWJ+L5w z1NQ?>fAo)U8sZA}qe}ehRqAutY%iY7NS4#X(X3-7zAYij3N+sf`Hlw7(;?qUfAns* znt{?o!oL0CYH8C~?>7$x)m~R(#;B?-l^@**N3#vEM_-4OIdw93Yd)u_Tl1cKD4joS zc=Rvda&sEre+YtaKOy)gjnzbPU{r3w3;LuW)_$8SLRWb z%;l!3HE1T4hh40v{17{JuN=@@>F5_9!Cg06dr-hzX! zxd~19$k@OD6w1%k^pI5EPlgDLA_%m;Sc(;fCUhCJee`Cfg(PuQRH#Er>%*T>{~u(kFCWeenj?07*W)rD2L$flz~@s3I>W4byi4i) zjnluvz`k5eD<#mobY(%n+(JV|u>nDu1gq8LkglH2+z5`tdGpm7zuS0eyNoq+ zgt(DX{H=1u5@KPTI#Le#@xt7QT7F8#|Kv!nWLV^uw8&v2u`O^p41wd)8tj=$B}JnG z`N2moLt)jRf1aYhiC;x8UYGG?`v|1}4*I&f*m$yTgo_yHpZfl$!7h1nJanmya88tT7cMWZBlQK)NoImvU$kAQVTR2KcdYe583C=W z)EHY8#(p1w`HFq7aEXN!8w(_`uE3C@O_+E`rT_rRt~TZ}WA&*&T%HV-Z=iD8<)|4L zwFD){k^I6i5e+WHK*8*))P>%Vx%)N{4Q`=~NncmU*Iwdl51KJ$B3AY<{UT|(nUrpv z=}B1Bj)u21(*pi&Q2$Y3ma_BJ|4ypEcEonm?$$p5u_LsCFb;W5?3m%TZ;t&vZd5yq z$tOUr?w<}S)FJ0lW(5@@2Qs;Wi72PR(&&*ZBAFH=p=NcYt62j8Fsg&pkuJvoP9;(~ z9RYbt7pjGek5uNZ(!ptiS07F%0Om+%BrR)j)gg6+Z$8I0%=V&}lpoiHZ{Ep(Hxx zm&HcG8_N2ke3Yz0JR&+13q1g7rvH0O3v&UHODY1PES9Y=R!>a*w}au3)#4Odnp^{e zG=Eww-5{aMWYYpgvU5?*OcV`~KrWE^!sNM#gmb-gRjGPdYH>CKKsPtnf?95gbioiVXm$B%`L@WOE7EdX1l=?m0PspHd{LnE5RvsYGsnfwANso{xG0XIzmV1Mz;>C4t)k%3nH4_aI? zu#gW~wDL!p=R0J^@f^*ac#h_|kgpdnn9}IBl=wQ-L!%QpuRyf7z47U^;;26(oiVSF z-9(?!4x$42g$wBl5?o?W$?>AM?bb-6t)x{h{Sg(IP41T>YjA2#IB+8u7msdJ9|GnQ zbyh`Zy9wQJ778Dn1Pt}Y>RwbAzbRCT-^pMPP^1-kOOa+Opx-OH!kic222wvSS3ei4 zf0}y&R0dqkte9O&;2LN*t~aVa$t;l%{7m3T-=gmJJDD5(HZS*ITfO#juf5VMIhnk# zcqI97iTYXnQ$atY0G#sPKnK2)#Cjne166;Y$?BWx>kRrjE>rtE=|qSCOPk4~x-^(}k6$e$9a6FTq)E;_l@ZaNQCk5>rQ<1ekIliW1Xb}1FgJL0w*hRDp|i>+u* zveuYjug<)q(t4j!70X~=&3+u+erUSHDx1MRs`ngUD+T!X(&ZGWvpLPGjf8d2kC=Lr zi0bB3(eT_xF59oFippsJbr$=g%B2`-~*PY*7`?z~QQz zn86*-f0rKg+eX#r&;V(d>(vFlM%8tE={BS4N*QCIg&yntKno1La0|6r`*5aFP|Gtv zVr61-iMfzbMp{T|i?sE`mJ5|2%BM@4g%hmDx=8G>R=U26YjR54dXSM>%v_1P!KTQL z#d%#&Y(ER4!-m+Wg+x*M>_wlwvBy&T?3G;707R6p)7|#Uds^Doi#~7FeSYyQ3eic- zxpZ{i9(4UFbiFBdjkD|0mc9gYeJ*l#&CHP`n7ovI7XDweTu+)X*gMMFW0Sb+ZLxgK zk*T)ddE3$JDCu=XYOkPHYfFOIl6o!TUK!WAImx{y?Ox@2*1x?YmifTo*d80LyUx;G z7g}8(JtO>|>f+eJGwfQd4m_jbA;QrwyOsSgPH#O*r!U>FcOa?{D(#VtNNFBx#jd(q zKYzOV4UrX88NJgJUrbY(pC&IvMz}vkUMw+#9T7k)B06Zcrw0?CsV3f|+qT^HWLpsC z-8KQhO%PBQ(1{ALMUzYY8QC$zytRd!d(qM9UeHV?@z>(hAe~&Cq-|ppPH4>rd74Qp zleAY6m9eJuV|GDoVGW{-Ku6OIk>q%&wI5^zk4>q|WQ%Qzb<5Gugp?5Za2pToWG~G! zaIV)H!bzs6JlAJ;-=Y}^Q@V>C)JgydDQ6OeU$4A9`qiN)knGh&jFBWs^F~_Uie#^T znP@l0n4BXDV?@j~DT3dd&;%4T9%5)jD3l2jg~zZNqkcb;N_$BRg+hBtABB+eBwsK? z7z;sD*kes^ecUUbi>3Ub-qyT{X!#ULBt6ZON!jM8sl^~I47VkfM4lpvB&kX!`Qhp_ zL9Ykhss>eh+G;_w47A!T1FZ~VC@hb{v?=_QB$09WIB2M(D-xyhgzcXl;_3&H_2}0= zOJ1GY5HTXI51Cv2+6-m_%R+xqx3PBn2_{7>Q%b|c4^vA1VJpbV!RmFhLps;Z4psnR z0sL(N8OY>&B}*%|*n;G}&jHD6S!5~xXjrwZh4%%_tpRhVvqBI4ih1?L45JwdZPYS_2*#p z!b#r08J6xkr==_A>{htJ$(-E{SNHbZh`8G{4vEv`;F-TrD*)$ zY{YQu{l4{~^7mj;y^jaq9*W-KQ9lHu*+?#UOIdzP&zIjFA69-#Kb-t-amepB?m)|LC;e~xrIz1q ze+v2CmLk7Kbd8JU6A2~1frNx8v81s?h)LQ~MHJBbTblgP^4!P4Q^b*W++OH z^tiRdz@11bbk$rwOMeje=s^U_Su}&?XM^U1zkS4`-lly)8u9-j2^Ds+`k<0U$meFf zgWEvqg20rTw8 zkR#Dfc$}PhcI1h=WL!@BG?!DWlU{5$yRSIYuDgUX*4i92PTK~;8tHIijUYm6GmH6C zutwY|SR(^uIoZr&!E&X*1xaOKJFs~2A&LgzC5et#-~JRbTH@I+$Ty;@Z~|5ZmIz)&O)#nJX1}lVrT{m2Jp$K8 zsuvi-`^E2um+V|c&JZ}}*XzDB>FqwIs|G8{xmw3;iu-bGEk zMh}yycL?yi%cz{D)3Lsg+A*J2mw98~cXrGh!zi!5#_HHUurBjj9p5J%-;IvxIc8}8 zm{IB19Zy3Z7%5j|p9G_Kxc&VN{_3okgXYw^-|}d}2rxmA4L8Pq4=Crk5C{LC>C~&( z<1Tq(S6NTYn}0JuH`;lN;`ian-EBWPZqcGX#gn@5U1JBp*oL}&Xs5$E?R0oioDDTDb~flNt{xZXy!A?;x6j2{UQGPN zws4@jK-<nEhQl@XLCsi zg}TE+2Luxta6=Rge66xk-OW=GR2hO)r;QSx1kT7|n z4xHaRT7ScV^LFFOYqL3U{`o7&9WhF9y??>(hz#{-@6!j!6=9W;Fl@J!k=Q`p8Y|NY ziN^+!AQjRhYfo7Zaz6xd$pr7$J;)y5D0?6IAAo@#U3QLq5CHUkh5ZlAN3`lN+z;@J zn0*1?E1;#AeVm**oT1VNM?@d{8*1Q*fKv+fC&HC1QQMa#>OS_7(L*>6&z>y}XQYc* z0L@%Lr2)^AmW=4G*`yST@^jFVkBOza3>wVs9#jXMB!y!e%((`5Bes?J>PvjBWXlDj z`Bf##p40w_Uf6SjI<4$EV*VHf4cDJ!@M?=`l486R;whu>JQzl6EHG-e=kRNd!=Af^ z`5$jFBE(xd1NIzc-?-5X+jI9IXML2=fX$%o#bTQDr!Y;{b9n$aK^Ygt4BMWYVIQLm^KAu2$?;xRZ?#C-{Z-Jr%%SVJIYbHi%3`&hY9VYY`{*D|F zrcy>*)pHK{TK&E=0kczA4G{3UI;+1}9W~LD5OdgbVY5C|-WW1FgZ(uanlk6I>qBNk$X8$N>sZHl>NAAZRwNEq zanQB%0M4j856nM_|IyoE_NrqFD{vxL5$J-<;gA zIu*+9h~^a1hehgxI$9d(^MmRF*c;I)xnyokyd$dY4#5b{$-OO_S6Do`Us=xuf#}!W zoGxkEBMT*buXfTSI)qwKCoSTjU|O23`?s;5c=kFjlvt`wetvTM_+vGKS?D*dNqC zs`WE|wr{;rkNh0L&t7F_b1etRZpbV-Me>G#^hy_-CGZx-*(^Ea=0Lpayb+z(hz)eF zo_YqRo*`53L{?!2rkp|6hw6zcOd7-lS_K$ko!sQcrZ)LD* zJT$(CzL*8g*cD%fM|i*U5%R6}6SNwcZcPvkWpm50b)C3C97nhM(aN&R%2uVNc~h@H zYx?y{)4z`>a~2>fm-=FX&?`e~998#O1$4|4XZWpZJ1w9Tsz`PQUcW!EYk_w1NK$DJ zd(?kq?w6g7-71+EU#4yrQ8y2!3KwQyK%D?>K$5?yHn}CRZn%)5l}Vkc|K9@4L5LTc z?SuKD9%l!3;pJ-Z5D|p?Y&jV}#33g{q{Rev8A)keMiStdG>H%$C_~tl1Yvgpb$pSf zB@FRUZx8CFpyP%VJc;x3;;D-eRaM1dtW`9GYQTti%d~N zEo(~GPu7LeUQBa-M*$=RxdMLasm6=-toTvDY4L2K7no6)JJTZzSgW8)4`9si1d@ zqs(Nbo6I5PzjBq(bJ`4=YTPAFO`1N)$vyi7gNYPoI{PT zN`R3j86?B!kgkq@ON!wU<)u=fZNu2aIXxTRcM~=#&0_&E! z2h~?&5>^FKQr!D!m+K|rS4WA^DQ=vM54^K6sv;V|!#+US(8WCLS?n>>Wka|;7tIY= zHl%+~tsA1|?6RSqsbxbCz+tZ*a1|W(op_SwdU}#!b5j@(E)2NTfy(1Mm5E`M$Lq@E zNduL~U#K*hhO{N6KK=*6^4(!`Hvly6XQ^Wq+eYVYwWTfvo%aG#cL&gU1GH708>n7w z3Q69?0VIzK%}C?ih>RH?`P3^%2C* zLh0S7tJK)sC56o8tWvX4dM&fwfzspRIqP{Qu#RS*(B#&|%Ge6}_62=M#7PKwq;|8e z(n#*tkx8`PvW6CLzOJL9URfly#_F%bBKaEJSn!RLVM4&908KR_+v&Z8((jkTde-v6 zutUZ4`v9g|<>EwKZ^cy}3rikla6L2xe^CRoSkW?0yN+{rDIi4rS3g2k9FboUP0vna zbpT_!naA|H7)x(KN!V7*#pB+!ToPA{k~qIHkLc5yC}nBAv2qDFOikU1rb2EmwZ|}q zz(S&GY9q2wQnLvefU?t0(ufZjE2%agRrY|YP`AMynKKSg{JPjdu^`4L1OR|Q`PWm; zy72NgBcg_jQLpwNY#wZh{ThbWA8Da8P~Jw^_b>3T4YB7CH)&WpG9h*Low01Gi@P3Q zQCGlOjO?51;`h+-?w}>6O9aHgPZf6B%_0jdo7+`(&7CBRsC&>+vLJncAEEua#S(gX2F^+=@%AN&BQ9gO6UiAT5!-ySL3Pf~s;7`l{|5Jz0dS5!Q zQot_AhpPQE3xM?>-cK#W=Q@1WuPsIb2B1o1{A9FNbvY$F{=;CU<8~Trekhzd%`Q=u zS7^GNhX->qBckk-%(zhKa=@=iiI9IT755WatG)#{jJ|I+Y16Bzx2WG;lr+N0YEJbm zI`!D+Xi{TRl;;9>D!f#4+Gt5#MipZdSpl}T{Hi$oY4u2De$i$5_}5vk{IIg~h_&Po zX9v5m_XVP9L&*B$hAgv_%c->1*nIW$VAmbd>~~;J{80UITQujePI#T%5;osP6otgO#MeW_ zyuL;punWSzb3_MoIAESoPn05Q(MKqd;Jq)&2NtC+UYVrgmHnE2B_Su&-`b3k0po^F z=dt29SL##qZ9W|75C8?s7L$$v!vFTJl!J4RpV6`-yXoAb#TPorE~9ECpG%*5Ra0G# zzj7hftPmFq=SxWEH=}bhhRJ{WHr`x9OQA%$EqVzv{!1>{83K;kU2hDgxEp!XNTBHJ$lI^AxX)n0lvah6HW5o8O z7VuW8LA^d1ie`KD%Ft68m%Kfi1&)~jr!bDsf*s271P5%By3bxY$ z7ewxVSu9X=+*o^$oNlxuo4QE3U^xyp?2ZMT^N;IwDVWRF``d8ms?ZB(V0+Ps1CZ5RuTM>lj%s~4#*kCTcq6nUVYs41pn)B7+mj}2VY z?iNtSThc%oL+VS-(qre0lJ`k%8%K~bDo%+A{L9Oc6&zWHPzLbbIAyf9*eE4((XzAH z`PBywHF~U+(OP`T_;^SerPerQbh(#9;7A!ok?>iaGOAJA1eQ_b2Xd;Yw1AtqV8|Qx za6&W1Gd)&9GX=9EUO1LdbMrc7loqh;3|sFr*h5X1rjqr@MD*|C*!EcGyf-zQ`Lv@s z_!hjWNuy}aYyGa9vwREQ^OHtTvom0k2FOcE8f^kykCik!AUxw1Cp@F}KMe@acu{CP zs^4e-Q@DIL37)sajAK+^gY1n@lfBI!UG^wn`SAI|w}gf7LC(MMSf~gje8^yWpJti> z!odK-*XPJrrq)>amYgSi?|)d~Tk@fV@2D+&$GCYdd;}(_JyDlR_>Ni40a1yhNvA(! zgkD<)T{`h1=+$DEPLCL{BKr4h(R<=Uik{_z+UaD9(mtpGnW8T2gK{R&iw`PXo|jLC z$jdm8c4KUR2b9n?X#&_su@rNBekgjoo4$``D`~5@NTZr8(kML-LJ3`5sf@z$1QWW7 z0&!l-82<1XK_rooxkfFK=@~(_7tIJ752JcKGJ+c8e@Xc$^WZ0t5qR%S%6ieIa{CNP zsqN+NSOHRBR*XWREr(i*&{!fBZq|t?|A)Kq5M`(O)Px+NfpUVr@Sn&D(t7g zoD#&MX=McUN=A@A2T2NushGr*a6-+zeC#xv^)7=_q|ANiA%||!bx1RG9g^pK?{2j*XDQNfxY4RkRtdHFw8#Re}X#*3gHpQ+Nv*?S^%hywQw}GeKXc_8^ z-qnZ~0;#j-8b=f3!0S1cx-b(7(RCG)dWbUV6i;yjBH|E8{`uK!)S9$`%?QWy78x1;16 zT1jQK*2FI}3Yy|x_U_JGPnTo@bilh9_YqAzm02gm{O&WV9(D7xUFQ}A5Ij;sQ!^?_ zi8a@*k@f#EuYUsU*Cg|!FH-}gKdYW&>pJo-^-+T!=ZtviU0U9G7}*A@T^2XB$ITC# z2*TpVYLxa?ZY5_z%aUw0PmSTWmoj1h6^(c&{Eq%rjU&-U&7hT}CT6T8Tkthl=)ZTd zSd5_6rX>O}n~auLVl)l;>+jNYVn zudUAh9`6e3$h?8|e_jE4R|#ni?v^~{B;^y*9f7O7fiy>21W>{@aDK)PMj&j$rJc-i zIXmSoA=4Mp1=XJ1p*iOp zcqc`}-RyoU-5FaUBmabK5o-Ky2ZB`;D+<| zSuTDx?oNPkdjlxpB*d%{-#DNIw7*^{ElPO~^*03j>q92_q3V#>;t3RSkj+^8yOZp2 zC}elK%PkIvF>p9cgu`Jv91gSKa999`!-Gg@S>cj|mUZHDcu{-~+SdR-viZ7zSF%AI zU}wWb?Nxu-%H#i~BadI3(W&@&chB~h1|L6|6qB6Na0r)6^?;g$U1XP+L9u&-(mf{< zM&9&b^^*L;>eBrD%9cki(_RTw)ko&fW01T;faL8l*4#K!9PK&yu+?~C_()C}pYGO( z10xvj6^Ze5MNDJa^^C9!1;XZpy?+L-dic$2i_I6{KPhVU8+X*Ns}!qa$k$h#LbfZgydP?F1W;Mr}2dtsJ#FTlVVg)|o>Pq_fLE5*=W(ZF^= z^ArKwm6*Fi=1zd7brEP9fb9^!tvtT;3*;ypLaxCfspxh?*p4$w8>Q-$;pvRhju^q0 ztU5=~c78z9`875k!PG^<0HqUnywXf3wA~MIquP*3eM&H1oi}@kRT-J-RN^un4*kFo z3)yanAlsn}3)&8&CDglgWV<1PY-f$A9Tx)GEcn#_pYlqDM@N#e6CggJE2g>Gn=gCJ+s zfo~s%?IRHkawCF9|Yr9d^ngyjwb@W?w^s<1SmFONcoSN<-z+Y1IhX9Hg zIt~rjr!@RctKltZxK$cnq#M>?Y6M%Lj+}EnP}nN)y>~f5sjWv~CPDCX6qTW-0|?4o zk;TCswf-?QzF)8Z3T{0Q`~`WAK0{ICL3jtOttJ%-#;vkN-pTzI1hltox z!0e(Z*V_SO=5F;-DWmGSqK?;?+2uFuPjnS^8I>zDHQNB)W6Z=UslLA-Hqea+{J&>m znyEy~UsP{Y-X%9QOH)eRaKlZRQct^~$ImM1-1SUoaIO4O+Cunz^AFN$ylYf>GF{q$ zm|MqJzMld6Z2m5~WS3F(HelS8VxXJa&T02&)L*BJszy%zZ#_nQz5%ka)c@X~!M$lz z{Sz)#f2yXo8&yBZ;5-si*cXysUiDOl&Maw#sX+K|>iG-c9jz7k7k*!XnBL6#*qjWB zpK`scyelm|v8`t)+v9Y`(y5rHdV45$LtYqMC|kjX9&0OTVI;U8o{v>`E}XyDWd-w*^f!P zPdHKMD*9-5rZQT>oWrQE(Q-D^zPN=iKH3w%A5)kovUwrFlv~+j+7*R zTeyxP@Q(IqGh(k%@V07v8t5eax>kTdYt>m+S+n#}OHctgN1dFq0Ox3yrx0naNUE*1 z4TrU$rk>Jpb860s0Eb#x>Tsi5frO)aE(Q(L68y}6-ERf^y{#7_%!#5nSVFka2aPgh$wcO+MQPAE_^@_8G zdQ}67(9p_Im=-zJm*Bb#yk+Dq=gv}a<YcYdVVhBMiq+two^!FrorIspV1=#}O&1uwlNpW;)Kf))urJ7F{T$s4jlzagKH zw|1s=VGAxi8ef37qx1t_aK1-gjI4zHlEVt`vmEsa%d|e4_D(>f19i~Y?ykYE{zfQq z_3EQWy=x5iH?evLh(FQ+id%~LjvLN7(7tU3OjB*u>)T`jjS*j zt?P}Htgu%MhLQtvoH-#d$>TDgStcRzO14Ye17@@a2Am@@PQ@1%#2s=GigrI%bg}%g zmjq1kHyWqio}o^2BOo}5`upm1CYj$nt&_<7<}sZ_=JzG76eqv$C?_|G{ThKmx|Q?E z#AxN5vbTa%ld;X2Q-&0(!cHY>)p_~BqFqMxaX=|Ce_WlF9^Zq(?+QgJbl}^~`SEdz z36+>_q1t#xiEn#}Z+(exW2nFWwrJiDfm5e(lrj>6qZC2SQlyM=lrpTKcvCTD#0yRx zJ}^#Qh834YsHH15McmztQ|DrwI=9AA^6R?ry=wP4sd2tC?7*ZyB`_&X_^o1aKk7Oy zoUe>DoI1A?r*0@18j5M80IEBwak*TaUWdZ)lN#7zCh=-XV~~Ej>2%XxZBYp zW2d;ijutubKI6Q^`wSa6#cgNacj*}A?hs1D=YiRUUk*HV6R)CrzFB)p%nqOsspq*z zJ1b ze?lG)o-dDFLl;@V8e@hPCntGC;Q4KuDt+h~NFIAQDyikMg5|N|e0h93{xw>fdqf`n z7O+=_1?;sT1=wpp1AEz`S*+ub>BwF^+`c7_`1`F(E{^-H7E4(i8K>Z+P|SrhytY(2 z!{vVCJe-1dEsSr5Y@7mm)T>?0tU(gMlDL_K5n`yGXR0Iujs60a8{YKFjoh@Td9D>T zPkl!qi~Avq-wT#^TUo{CX$46~cjp z0~g^ZmthwU6^j&h=j-EL_7lEGw)&+gT-#lup|DLv_5mwWr0xS z<`d8bJOAh=C5zjw!Zi%ESH!ni@D0{$dBLzGP~HK7Bv%cy73{dAyIBHAh<1z2d*#k` zw8)i28Ru0JW#rl|=AOSlZex+0t3~oDh-5dOEhSll^6Ek&`KQ_(xANu~FxRkCd-7I# zL=%41HduW|KHSu2+9*1nm+z0xko0onT2cFASz3|0ym642jYH={ah zm2S?cd@zIkeI1Y=Fh=BUhv^_oRN5Kan8AiCdqO(dv(b@^JuDSHyeoGmh35dt;TDTl zgItYjApvb@2W}caT!JZ4qul{3cC4=M8FS9ze2H+EN|Mlk)n$OX+?Zf!N<;?39XPAF z{0}8Xu}=z4L~Nv>DX7l&qO-GSrL*K&joLt_S0}Gv>_+Lz$KS&HM-*Y|kbV`K=Kg?+D`e-R{=GZkfkU!7^ z%RrX9dbCF6P`y%F$WiDwDz7|8>~LC?_OU3eWQBud6ZtWoQ`GJd(2y zQr7{g>yF<`J+KwLovdI;CdFUb3hs~_1*;%ypB8wrg7;`fg6uuqpta9wuCsQ2e-lhc z0D!xE>lMg9Y`+5e2X#3XN0?KGoqxn0cK+c3hArdN!{%GG@qRdM*at0r;jm@AA5NrD zwDJ3*BjfuCQc(6+wY{F>S7bZ>sW_9gMjn-sUt_;X-im(xLgDIj;y|G@I?UU3fG;dP z!`9Pw>o$pphqqfT=;*$>>735}XZU?~+|kE$ra6CqZII&P^$3kOh5Bo_2!&3?K+zgh z%NT24I_b#8fBw?t;T()hgl;z4$cq^6LyU8xQfk6Z2#sn2#0SdHlxc1$i(lj(Y0zla7vu!MEnmz zdf;w?!Uvd!^gwggP!DDkIUnF>prAPebeQ`z(u3dEWkWrrB0Q8@UWN#J8LG4L%_gMb zSAaM+Sl(Y^?q@6rhJb*gvaxY6bBQiN9ll^T+bO7RNMEP}X0wAcb~9x{2N||`fc*Q5 zK{m4qGV46ZW?+l|kB4lAUmIiI=%}7Y3Uo$l3bfxspm3UXZYu>k!^$)TSaqud0UD_R z8Qv5G=nL3%Qq^zgb9QL;c|%$X^ph@56rsI?^PoG!4rKTXq~Ld4iWK~gG~8x#Eg(mx z{FqYcgM^3pO%_2(!w+h@yR9iAs8s&Gu&?97B6vqM?^yz&I$s1!Sp;Vdgc=UX>r6$p zPZPoR*m$Q1ma+(zvIuHK5^9B=3z38a%^L0mJbt=T?$&tg0(fH8e8I60VbhaxF)A{w zgy-$tffB;QFzYN^?$Qb2wo8T_-tDmBNDLQhF|7V5VrZq~cVC)x{B8@+UZ>;d_(D2tKkRvYAvd^PAC50%5#w|E!METCKBu4i7kth+Dfpbb z8K2W{Q7=fldV93-IlH)hy*+lb7xvQ8Ep)RJRySD6bPJ^(D;1x1$YGL-?@vp`_Y2WN z%67!5_`5h2zk=vp&76FPd_Lij&&@#xAqb`CXLbgvbMpTbq#zxRB&#DJ1$kbiZQAjm zl04FAZjVlRhwAz~@XY0P3wv0J*-DRa>}UTt*j3`&2(QF&eC`gF*A-7z8bC+5nwu-} zZD*{g$%lf`>{<#XsqM7}Ua@zGYP4E?v2Y#u9v#^2jmGK~a6M3JHnEc-OP^5{B6-6s z;Cf1g@$gSKK?;YlvA<@%TJZzNs9fB*p~F}`7j4hxw#DkZ9B7SW z*y3)6t>%%kWH$T+?VZj!ZTC$PdoTb(5p6!toi&tQ51mL2 zr^V78w8#Dh9dyKg0z8yIj2F9fD_iH%%O2?^W9bz}!A4zLPh}=bN85%L+G0)Ig443y zU{wA}Bf`IQj(NbJW;D6zT*70l&iZE&WA#>DCnDv|nZkmlhI)k{l6S;N7p67+Oju9@ zh?>;nTwvV#d3v{Qh<}q7`m3o6ojt``Xxx?BkWLOkGg+TcFhcni^2&}xv(_tnxq2pQ z)lymzanC<5{*Vo5&nONz%RE$9H^$3oxl7V!FfDZk35~0Mvn?_S z0K#L?23oQPJ(veAqOZrfEoGc});KS}@Hnrr$LSk*oOu@*=QSzgyj;dP94)1f)6Akg zm0kTcghUZs)#y>y4P(I9dqQR$M?=vQjJmWobb280mH#yE%1 zNX1#$k$n70Ua(}=Y%>GOM@ac(BK!HXK1MZ$f*UW zL#meOJg(l(^40WjW3JIxmI92Rh>;8O~6;OBE z0d)yrGG0W4V(&&-oEskk!i6#_J2}V(0rRAjCgmECmq-Fq@b1 z2dJRb_=Z0$DL-Cfc8AHReHfL!5x2;i*tA`iIdP{a2!#Km>NlzE<#Dqap~r4p5+%{R zDkXJ|>Xe-2up-o_C8UBxzHuID8}S6uQ|%L}>pRbepc3=zEfd1e1?y_PmkebSf(c51 znck=5?v$20HX%Gt6TE?XmC;y&zYc$Cf?^SKCmh^wk3EkgbQsPRo|e2ogW+9Gmp6v6*&_ zRKvkp#cLT34j0RLRlFYtlMn(ZPFko>!_YLmC9*86zMr)4rGctoI`*( z1o_{=pmlSe)fDXN7uEe$Qm_zdmFOQC1Y3+M!u?zrP@ODbE&NTYgCKOK`THpuU-egl z{s?T^tcr+D@SaQC1P#c%AIJJJlK6hU2pY~D1eussd?9yoLz9)!Zmcduv!7!_;4&Bj znLLCR)ll|uiQo{j)|`#D`cKvfXXHOGi0`ps@*>eT2f)Cb;jt5<@54+bupkYc=O8B- zt{*0J`4%a|{R95pfs$WR_WwmI`@axn-`UM+OVy_iq*!_G)&%3(QV-I4hqS(dVvJZu z!FXy%*zezTC%=>iM=N`X19fUCR4c8qKD4ko_7H*)ImyJkIPC_94KBc*a;t$ipQ8->8{Rp2ZZ#c<%{^jwn(hA<`TtPokJZVV3>n%t> z+~cgM%&{sea}aZ(cjxkyib|{jOH5f@slm>1X6tcY=NM-)Wt`*eaSm7GOrAf^QPw!e zU3i??);P1RaSl%zCluj5tO$oz)sZ3$0K$ISLy!538jZDc1_U4cPwT&SM2J*0TkWOT z5b1AFf3uHk^>^6uH1&6WN`WM(j#vR^T-cpZfMZSo!lyWX!~leE527H;4r9%pL8PiK z&wmgq@2i7^-{@Zlab9VSOX5L48pLBmT_;@{9mFaxEre2e9~;CGr4>;BChQ)pR9<*E z0!6(_%k2$R3qX3&yN`W=CQIQgTg&ZorKXW`Giq4Qfs>XFyusOTQDx_{aCJrgqGI#y za5bd@`+7((oka1$fkx(BDZ^cMDitj~E z_()56s8Rn>(ZDQF;p#Xc=N9uhh$n5wlxpweKFkEe6#9WIR~Ubbuk zQw7)SICe^?S0aX2!fs%^C|KU`NY+@D!b+bAkUR1Q&Tlv(_oL|{1OZ}{k?!#JKwd|2 z5<+j_891Dd>XaWjkk65{hW!IEyxOgK(OL?@E460p4C(x?szufr9)Zqqj5XGMXn zLS>)rC>*bT@J`}$wnO}c?TlpnGZ(`YXI+Kzg85WJQp-NR)!3~FM+4x#S)=G{q!Asq z&gA(0v|t=LxC)VjQSp^p^P`

n8b4QW0(v|647#;8F0ueOa&*Zo$8MEce^z8B3uy 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 Date: Fri, 15 Dec 2023 09:09:31 +0100 Subject: [PATCH 51/86] Add FIAT mapping for BTC --- freqtrade/rpc/fiat_convert.py | 1 + 1 file changed, 1 insertion(+) diff --git a/freqtrade/rpc/fiat_convert.py b/freqtrade/rpc/fiat_convert.py index d084725d1..2453f4f25 100644 --- a/freqtrade/rpc/fiat_convert.py +++ b/freqtrade/rpc/fiat_convert.py @@ -28,6 +28,7 @@ coingecko_mapping = { 'busd': 'binance-usd', 'tusd': 'true-usd', 'usdc': 'usd-coin', + 'btc': 'bitcoin' } From 3670699ea253962c3fdcbdba15ff898cb5f2d04b Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 16 Dec 2023 17:31:48 +0100 Subject: [PATCH 52/86] Add trusted publishing for next release --- .github/workflows/ci.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1dcd969c9..71334eca2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -437,6 +437,11 @@ jobs: deploy: needs: [ build_linux, build_macos, build_windows, docs_check, mypy_version_check, pre-commit ] runs-on: ubuntu-22.04 + environment: + name: release + url: https://pypi.org/p/freqtrade + permissions: + id-token: write if: (github.event_name == 'push' || github.event_name == 'schedule' || github.event_name == 'release') && github.repository == 'freqtrade/freqtrade' @@ -462,16 +467,11 @@ jobs: uses: pypa/gh-action-pypi-publish@v1.8.11 if: (github.event_name == 'release') with: - user: __token__ - password: ${{ secrets.pypi_test_password }} - repository_url: https://test.pypi.org/legacy/ + repository-url: https://test.pypi.org/legacy/ - name: Publish to PyPI uses: pypa/gh-action-pypi-publish@v1.8.11 if: (github.event_name == 'release') - with: - user: __token__ - password: ${{ secrets.pypi_password }} - name: Dockerhub login env: From d6b43c5eed01ce626f9e4268bdcc5eb0104b514c Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 16 Dec 2023 20:06:18 +0100 Subject: [PATCH 53/86] re-work deploy CI --- .github/workflows/ci.yml | 69 ++++++++++++++++++++++++++++++---------- 1 file changed, 52 insertions(+), 17 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 71334eca2..4a6d6a86c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -434,15 +434,65 @@ jobs: details: Test Completed! webhookUrl: ${{ secrets.DISCORD_WEBHOOK }} - deploy: + build: needs: [ build_linux, build_macos, build_windows, docs_check, mypy_version_check, pre-commit ] runs-on: ubuntu-22.04 + + if: (github.event_name == 'push' || github.event_name == 'schedule' || github.event_name == 'release') && github.repository == 'freqtrade/freqtrade' + + steps: + - uses: actions/checkout@v4 + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: "3.11" + + - name: Build distribution + run: | + pip install -U setuptools wheel + python setup.py sdist bdist_wheel + + - name: Upload artifacts 📦 + uses: actions/upload-artifact@v3 + with: + name: freqtrade-${{ github.ref }} + path: | + dist + retention-days: 10 + + deploy-pypi: + needs: [ build ] + runs-on: ubuntu-22.04 + if: (github.event_name == 'release') environment: name: release url: https://pypi.org/p/freqtrade permissions: id-token: write + steps: + - uses: actions/checkout@v4 + + - name: Download artifact 📦 + uses: actions/download-artifact@v3 + with: + name: freqtrade-${{ github.ref }} + path: dist + + - name: Publish to PyPI (Test) + uses: pypa/gh-action-pypi-publish@v1.8.11 + with: + repository-url: https://test.pypi.org/legacy/ + + - name: Publish to PyPI + uses: pypa/gh-action-pypi-publish@v1.8.11 + + + deploy-docker: + needs: [ build_linux, build_macos, build_windows, docs_check, mypy_version_check, pre-commit ] + runs-on: ubuntu-22.04 + if: (github.event_name == 'push' || github.event_name == 'schedule' || github.event_name == 'release') && github.repository == 'freqtrade/freqtrade' steps: @@ -458,21 +508,6 @@ jobs: run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF##*/})" id: extract_branch - - name: Build distribution - run: | - pip install -U setuptools wheel - python setup.py sdist bdist_wheel - - - name: Publish to PyPI (Test) - uses: pypa/gh-action-pypi-publish@v1.8.11 - if: (github.event_name == 'release') - with: - repository-url: https://test.pypi.org/legacy/ - - - name: Publish to PyPI - uses: pypa/gh-action-pypi-publish@v1.8.11 - if: (github.event_name == 'release') - - name: Dockerhub login env: DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} @@ -507,7 +542,7 @@ jobs: deploy_arm: permissions: packages: write - needs: [ deploy ] + needs: [ deploy-docker ] # Only run on 64bit machines runs-on: [self-hosted, linux, ARM64] if: (github.event_name == 'push' || github.event_name == 'schedule' || github.event_name == 'release') && github.repository == 'freqtrade/freqtrade' From 1d701967b7377fb6f158ad53f1481eebd1b1edd5 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 16 Dec 2023 20:27:47 +0100 Subject: [PATCH 54/86] exclude tests from build --- MANIFEST.in | 2 ++ 1 file changed, 2 insertions(+) diff --git a/MANIFEST.in b/MANIFEST.in index a14965c09..0ed6da0ca 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -5,3 +5,5 @@ recursive-include freqtrade/templates/ *.j2 *.ipynb include freqtrade/exchange/binance_leverage_tiers.json include freqtrade/rpc/api_server/ui/fallback_file.html include freqtrade/rpc/api_server/ui/favicon.ico + +prune tests From 6ee0f16e4f43e4feed673ac0ea80574d9119d410 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 16 Dec 2023 20:32:37 +0100 Subject: [PATCH 55/86] Migrate flake8 config to pyproject.toml --- .pre-commit-config.yaml | 1 + pyproject.toml | 15 +++++++++++++++ setup.cfg | 14 -------------- 3 files changed, 16 insertions(+), 14 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 0c6575e1a..298b66956 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -5,6 +5,7 @@ repos: rev: "6.0.0" hooks: - id: flake8 + additional_dependencies: [Flake8-pyproject] # stages: [push] - repo: https://github.com/pre-commit/mirrors-mypy diff --git a/pyproject.toml b/pyproject.toml index bcfc1e551..44a6f9158 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -93,3 +93,18 @@ max-complexity = 12 [tool.ruff.per-file-ignores] "tests/*" = ["S"] + +[tool.flake8] +# Default from https://flake8.pycqa.org/en/latest/user/options.html#cmdoption-flake8-ignore +# minus E226 +ignore = ["E121","E123","E126","E24","E704","W503","W504"] +max-line-length = 100 +max-complexity = 12 +exclude = [ + ".git", + "__pycache__", + ".eggs", + "user_data", + ".venv", + ".env", +] diff --git a/setup.cfg b/setup.cfg index d4d70bc34..4cf8fbc61 100644 --- a/setup.cfg +++ b/setup.cfg @@ -37,17 +37,3 @@ python_requires = >=3.9 [options.entry_points] console_scripts = freqtrade = freqtrade.main:main - -[flake8] -# Default from https://flake8.pycqa.org/en/latest/user/options.html#cmdoption-flake8-ignore -# minus E226 -ignore = E121,E123,E126,E24,E704,W503,W504 -max-line-length = 100 -max-complexity = 12 -exclude = - .git, - __pycache__, - .eggs, - user_data, - .venv - .env From b178cc5f311d0f203a237698fc14dbc581c94dad Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 16 Dec 2023 20:51:46 +0100 Subject: [PATCH 56/86] Migrate from setup.cfg to pyproject.toml --- pyproject.toml | 44 ++++++++++++++++++++++++++++++++++++++++++++ setup.cfg | 39 --------------------------------------- setup.py | 1 + 3 files changed, 45 insertions(+), 39 deletions(-) delete mode 100644 setup.cfg diff --git a/pyproject.toml b/pyproject.toml index 44a6f9158..148032c31 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -2,6 +2,50 @@ requires = ["setuptools >= 64.0.0", "wheel"] build-backend = "setuptools.build_meta" +[project] +name = "freqtrade" +dynamic = ["version", "dependencies", "optional-dependencies"] + +authors = [ + {name = "Freqtrade Team"}, + {name = "Freqtrade Team", email = "freqtrade@protonmail.com"}, +] + +description = "Freqtrade - Crypto Trading Bot" +readme = "README.md" +requires-python = ">=3.9" +license = {text = "GPLv3"} +# license = "GPLv3" +classifiers = [ + "Environment :: Console", + "Intended Audience :: Science/Research", + "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Operating System :: MacOS", + "Operating System :: Unix", + "Topic :: Office/Business :: Financial :: Investment", +] + + +[project.urls] +Homepage = "https://github.com/freqtrade/freqtrade" +Documentation = "https://freqtrade.io" +"Bug Tracker" = "https://github.com/freqtrade/freqtrade/issues" + + +[project.scripts] +freqtrade = "freqtrade.main:main" + +[tool.setuptools] +include-package-data = true +zip-safe = false +packages = ["freqtrade"] + +[tool.setuptools.dynamic] +version = {attr = "freqtrade.__version__"} + [tool.black] line-length = 100 exclude = ''' diff --git a/setup.cfg b/setup.cfg deleted file mode 100644 index 4cf8fbc61..000000000 --- a/setup.cfg +++ /dev/null @@ -1,39 +0,0 @@ -[metadata] -name = freqtrade -version = attr: freqtrade.__version__ -author = Freqtrade Team -author_email = freqtrade@protonmail.com -description = Freqtrade - Crypto Trading Bot -long_description = file: README.md -long_description_content_type = text/markdown -url = https://github.com/freqtrade/freqtrade -project_urls = - Bug Tracker = https://github.com/freqtrade/freqtrade/issues -license = GPLv3 -classifiers = - Environment :: Console - Intended Audience :: Science/Research - License :: OSI Approved :: GNU General Public License v3 (GPLv3) - Programming Language :: Python :: 3.9 - Programming Language :: Python :: 3.10 - Programming Language :: Python :: 3.11 - Operating System :: MacOS - Operating System :: Unix - Topic :: Office/Business :: Financial :: Investment - - -[options] -zip_safe = False -include_package_data = True -tests_require = - pytest - pytest-asyncio - pytest-cov - pytest-mock - -packages = find: -python_requires = >=3.9 - -[options.entry_points] -console_scripts = - freqtrade = freqtrade.main:main diff --git a/setup.py b/setup.py index e8215a3e2..8100f21ae 100644 --- a/setup.py +++ b/setup.py @@ -122,4 +122,5 @@ setup( 'freqai_rl': freqai_rl, 'all': all_extra, }, + url="https://github.com/freqtrade/freqtrade", ) From 8d231dbf3195598257b5eb20d72146e6493202f0 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 16 Dec 2023 20:54:30 +0100 Subject: [PATCH 57/86] Update build-system to use "build" insead of "setup.py" --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4a6d6a86c..3068cdbfb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -450,8 +450,8 @@ jobs: - name: Build distribution run: | - pip install -U setuptools wheel - python setup.py sdist bdist_wheel + pip install -U build + python -m build --sdist --wheel - name: Upload artifacts 📦 uses: actions/upload-artifact@v3 From 93e9c4fa6587461ec01bf58462e17109a85d2342 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 16 Dec 2023 21:14:06 +0100 Subject: [PATCH 58/86] Update job names in ci.yml --- .github/workflows/ci.yml | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3068cdbfb..c09bc4e13 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -122,7 +122,7 @@ jobs: details: Freqtrade CI failed on ${{ matrix.os }} webhookUrl: ${{ secrets.DISCORD_WEBHOOK }} - build_macos: + build-macos: runs-on: ${{ matrix.os }} strategy: matrix: @@ -229,7 +229,7 @@ jobs: details: Test Succeeded! webhookUrl: ${{ secrets.DISCORD_WEBHOOK }} - build_windows: + build-windows: runs-on: ${{ matrix.os }} strategy: @@ -299,7 +299,7 @@ jobs: details: Test Failed webhookUrl: ${{ secrets.DISCORD_WEBHOOK }} - mypy_version_check: + mypy-version-check: runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 @@ -324,7 +324,7 @@ jobs: python-version: "3.10" - uses: pre-commit/action@v3.0.0 - docs_check: + docs-check: runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 @@ -404,10 +404,10 @@ jobs: notify-complete: needs: [ build_linux, - build_macos, - build_windows, - docs_check, - mypy_version_check, + build-macos, + build-windows, + docs-check, + mypy-version-check, pre-commit, build_linux_online ] @@ -435,11 +435,10 @@ jobs: webhookUrl: ${{ secrets.DISCORD_WEBHOOK }} build: - needs: [ build_linux, build_macos, build_windows, docs_check, mypy_version_check, pre-commit ] + name: "Build" + needs: [ build_linux, build-macos, build-windows, docs-check, mypy-version-check, pre-commit ] runs-on: ubuntu-22.04 - if: (github.event_name == 'push' || github.event_name == 'schedule' || github.event_name == 'release') && github.repository == 'freqtrade/freqtrade' - steps: - uses: actions/checkout@v4 @@ -462,6 +461,7 @@ jobs: retention-days: 10 deploy-pypi: + name: "Deploy to PyPI" needs: [ build ] runs-on: ubuntu-22.04 if: (github.event_name == 'release') @@ -490,7 +490,7 @@ jobs: deploy-docker: - needs: [ build_linux, build_macos, build_windows, docs_check, mypy_version_check, pre-commit ] + needs: [ build_linux, build-macos, build-windows, docs-check, mypy-version-check, pre-commit ] runs-on: ubuntu-22.04 if: (github.event_name == 'push' || github.event_name == 'schedule' || github.event_name == 'release') && github.repository == 'freqtrade/freqtrade' @@ -539,7 +539,8 @@ jobs: run: | build_helpers/publish_docker_multi.sh - deploy_arm: + deploy-arm: + name: "Deploy Docker" permissions: packages: write needs: [ deploy-docker ] From d2e328b8bd68df6d70fa2e85979f27c941f47d22 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 16 Dec 2023 21:32:36 +0100 Subject: [PATCH 59/86] Update artifact name --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c09bc4e13..959579c2d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -455,7 +455,7 @@ jobs: - name: Upload artifacts 📦 uses: actions/upload-artifact@v3 with: - name: freqtrade-${{ github.ref }} + name: freqtrade-build path: | dist retention-days: 10 @@ -477,7 +477,7 @@ jobs: - name: Download artifact 📦 uses: actions/download-artifact@v3 with: - name: freqtrade-${{ github.ref }} + name: freqtrade-build path: dist - name: Publish to PyPI (Test) From bc1ad3acbd64ccc1dce0e2bdf8a104768775fbac Mon Sep 17 00:00:00 2001 From: Stevan Stevic Date: Sat, 16 Dec 2023 22:09:02 +0100 Subject: [PATCH 60/86] Improve logging --- freqtrade/optimize/hyperopt.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/freqtrade/optimize/hyperopt.py b/freqtrade/optimize/hyperopt.py index 58c3fe18a..f226ae2fd 100644 --- a/freqtrade/optimize/hyperopt.py +++ b/freqtrade/optimize/hyperopt.py @@ -637,6 +637,8 @@ class Hyperopt: HyperoptTools.show_epoch_details(self.current_best_epoch, self.total_epochs, self.print_json) + elif self.num_epochs_saved > 0: + print("No good result found for given optimization function.") else: # This is printed when Ctrl+C is pressed quickly, before first epochs have # a chance to be evaluated. From c580e8783f54657ac7aedf57d95256c586a9116a Mon Sep 17 00:00:00 2001 From: Stevan Stevic Date: Sat, 16 Dec 2023 22:36:56 +0100 Subject: [PATCH 61/86] fixup --- freqtrade/optimize/hyperopt.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/freqtrade/optimize/hyperopt.py b/freqtrade/optimize/hyperopt.py index f226ae2fd..5d5d15b03 100644 --- a/freqtrade/optimize/hyperopt.py +++ b/freqtrade/optimize/hyperopt.py @@ -638,7 +638,9 @@ class Hyperopt: HyperoptTools.show_epoch_details(self.current_best_epoch, self.total_epochs, self.print_json) elif self.num_epochs_saved > 0: - print("No good result found for given optimization function.") + print( + f"No good result found for given optimization function in {self.num_epochs_saved} " + f"{plural(self.num_epochs_saved, 'epoch')}.") else: # This is printed when Ctrl+C is pressed quickly, before first epochs have # a chance to be evaluated. From 58470ba9d06c1a92200b9b642d4299d6d59d9621 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sun, 17 Dec 2023 08:31:17 +0100 Subject: [PATCH 62/86] Fix missing files in wheels --- pyproject.toml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 148032c31..c446419e2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -41,7 +41,12 @@ freqtrade = "freqtrade.main:main" [tool.setuptools] include-package-data = true zip-safe = false -packages = ["freqtrade"] + +[tool.setuptools.packages.find] +where = ["."] +include = ["freqtrade*"] +exclude = ["tests", "tests.*"] +namespaces = true [tool.setuptools.dynamic] version = {attr = "freqtrade.__version__"} From 67cdab6ee91e191375161a1403ab41f2076a11fe Mon Sep 17 00:00:00 2001 From: Matthias Date: Sun, 17 Dec 2023 15:00:57 +0100 Subject: [PATCH 63/86] Provide strategy timeframe via API --- freqtrade/rpc/api_server/api_schemas.py | 1 + freqtrade/rpc/api_server/api_v1.py | 1 + 2 files changed, 2 insertions(+) diff --git a/freqtrade/rpc/api_server/api_schemas.py b/freqtrade/rpc/api_server/api_schemas.py index 7e723bbef..770f68a5d 100644 --- a/freqtrade/rpc/api_server/api_schemas.py +++ b/freqtrade/rpc/api_server/api_schemas.py @@ -471,6 +471,7 @@ class FreqAIModelListResponse(BaseModel): class StrategyResponse(BaseModel): strategy: str code: str + timeframe: Optional[str] class AvailablePairs(BaseModel): diff --git a/freqtrade/rpc/api_server/api_v1.py b/freqtrade/rpc/api_server/api_v1.py index f19010945..4f4aac32c 100644 --- a/freqtrade/rpc/api_server/api_v1.py +++ b/freqtrade/rpc/api_server/api_v1.py @@ -350,6 +350,7 @@ def get_strategy(strategy: str, config=Depends(get_config)): return { 'strategy': strategy_obj.get_strategy_name(), 'code': strategy_obj.__source__, + 'timeframe': getattr(strategy_obj, 'timeframe', None), } From 9a9a6eaa63d82ab3589a61de5884785d0f675c01 Mon Sep 17 00:00:00 2001 From: robcaulk Date: Sun, 17 Dec 2023 17:44:15 +0100 Subject: [PATCH 64/86] Revert "Merge pull request #9450 from freqtrade/fix/startup-candle-count" This reverts commit 15771043f7ed73d7cc85ff2468bf8ef680a242c0, reversing changes made to b417a0297baf1db67b4ee7a57b49bbbc9639f525. --- freqtrade/optimize/backtesting.py | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/freqtrade/optimize/backtesting.py b/freqtrade/optimize/backtesting.py index 83e8d3dfe..b8145b6c8 100644 --- a/freqtrade/optimize/backtesting.py +++ b/freqtrade/optimize/backtesting.py @@ -147,9 +147,7 @@ class Backtesting: if self.config.get('freqai', {}).get('enabled', False): # For FreqAI, increase the required_startup to includes the training data - self.freqai_startup_candles = self.dataprovider.get_required_startup( - self.timeframe - ) + self.required_startup = self.dataprovider.get_required_startup(self.timeframe) # Add maximum startup candle count to configuration for informative pairs support self.config['startup_candle_count'] = self.required_startup @@ -236,17 +234,12 @@ class Backtesting: """ self.progress.init_step(BacktestState.DATALOAD, 1) - if self.config.get('freqai', {}).get('enabled', False): - startup_candle_count = self.freqai_startup_candles - else: - startup_candle_count = self.required_startup - data = history.load_data( datadir=self.config['datadir'], pairs=self.pairlists.whitelist, timeframe=self.timeframe, timerange=self.timerange, - startup_candles=startup_candle_count, + startup_candles=self.config['startup_candle_count'], fail_without_data=True, data_format=self.config['dataformat_ohlcv'], candle_type=self.config.get('candle_type_def', CandleType.SPOT) From 81c6336e1158b4327a2aae321b9562d2acbc308d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Dec 2023 03:16:14 +0000 Subject: [PATCH 65/86] Bump torch from 2.1.1 to 2.1.2 Bumps [torch](https://github.com/pytorch/pytorch) from 2.1.1 to 2.1.2. - [Release notes](https://github.com/pytorch/pytorch/releases) - [Changelog](https://github.com/pytorch/pytorch/blob/main/RELEASE.md) - [Commits](https://github.com/pytorch/pytorch/compare/v2.1.1...v2.1.2) --- updated-dependencies: - dependency-name: torch dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- requirements-freqai-rl.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements-freqai-rl.txt b/requirements-freqai-rl.txt index 6256c387a..55a09e6f9 100644 --- a/requirements-freqai-rl.txt +++ b/requirements-freqai-rl.txt @@ -2,7 +2,7 @@ -r requirements-freqai.txt # Required for freqai-rl -torch==2.1.1 +torch==2.1.2 #until these branches will be released we can use this gymnasium==0.29.1 stable_baselines3==2.2.1 From 82853e37a1fabcc0b011e849ce268af16249608e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Dec 2023 03:16:26 +0000 Subject: [PATCH 66/86] Bump python-rapidjson from 1.13 to 1.14 Bumps [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) from 1.13 to 1.14. - [Changelog](https://github.com/python-rapidjson/python-rapidjson/blob/master/CHANGES.rst) - [Commits](https://github.com/python-rapidjson/python-rapidjson/compare/v1.13...v1.14) --- updated-dependencies: - dependency-name: python-rapidjson dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 3edae7498..d2daee4cb 100644 --- a/requirements.txt +++ b/requirements.txt @@ -28,7 +28,7 @@ pyarrow==14.0.1; platform_machine != 'armv7l' py_find_1st==1.1.6 # Load ticker files 30% faster -python-rapidjson==1.13 +python-rapidjson==1.14 # Properly format api responses orjson==3.9.10 From 054ed0a7b69b44a5893a31ba7d89e16e60230c07 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Dec 2023 03:16:36 +0000 Subject: [PATCH 67/86] Bump ruff from 0.1.7 to 0.1.8 Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.7 to 0.1.8. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.1.7...v0.1.8) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- requirements-dev.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements-dev.txt b/requirements-dev.txt index b2a9cca94..751a32ec7 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -7,7 +7,7 @@ -r docs/requirements-docs.txt coveralls==3.3.1 -ruff==0.1.7 +ruff==0.1.8 mypy==1.7.1 pre-commit==3.6.0 pytest==7.4.3 From 16eb95c71d86ce1a07aaf91ebadd9ca7a93ed956 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Dec 2023 03:16:40 +0000 Subject: [PATCH 68/86] Bump technical from 1.4.1 to 1.4.2 Bumps [technical](https://github.com/freqtrade/technical) from 1.4.1 to 1.4.2. - [Release notes](https://github.com/freqtrade/technical/releases) - [Commits](https://github.com/freqtrade/technical/compare/1.4.1...1.4.2) --- updated-dependencies: - dependency-name: technical dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 3edae7498..c64d088f6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -15,7 +15,7 @@ requests==2.31.0 urllib3==2.1.0 jsonschema==4.20.0 TA-Lib==0.4.28 -technical==1.4.1 +technical==1.4.2 tabulate==0.9.0 pycoingecko==3.1.0 jinja2==3.1.2 From d0a9d927dd0e6adf64b3d86a748fdf449b0cffed Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Dec 2023 03:16:57 +0000 Subject: [PATCH 69/86] Bump isort from 5.13.0 to 5.13.2 Bumps [isort](https://github.com/pycqa/isort) from 5.13.0 to 5.13.2. - [Release notes](https://github.com/pycqa/isort/releases) - [Changelog](https://github.com/PyCQA/isort/blob/main/CHANGELOG.md) - [Commits](https://github.com/pycqa/isort/compare/5.13.0...5.13.2) --- updated-dependencies: - dependency-name: isort dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- requirements-dev.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements-dev.txt b/requirements-dev.txt index b2a9cca94..0fe0caa81 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -15,7 +15,7 @@ pytest-asyncio==0.21.1 pytest-cov==4.1.0 pytest-mock==3.12.0 pytest-random-order==1.1.0 -isort==5.13.0 +isort==5.13.2 # For datetime mocking time-machine==2.13.0 From 901b3f6fe72c08e13efe44bafd499562bf705506 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Dec 2023 03:17:03 +0000 Subject: [PATCH 70/86] Bump fastapi from 0.104.1 to 0.105.0 Bumps [fastapi](https://github.com/tiangolo/fastapi) from 0.104.1 to 0.105.0. - [Release notes](https://github.com/tiangolo/fastapi/releases) - [Commits](https://github.com/tiangolo/fastapi/compare/0.104.1...0.105.0) --- updated-dependencies: - dependency-name: fastapi dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 3edae7498..79e5bc583 100644 --- a/requirements.txt +++ b/requirements.txt @@ -36,7 +36,7 @@ orjson==3.9.10 sdnotify==0.3.2 # API Server -fastapi==0.104.1 +fastapi==0.105.0 pydantic==2.5.2 uvicorn==0.24.0.post1 pyjwt==2.8.0 From 4e98b5f7109515fb669ae9440168a22d699ff710 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Dec 2023 03:17:09 +0000 Subject: [PATCH 71/86] Bump psutil from 5.9.6 to 5.9.7 Bumps [psutil](https://github.com/giampaolo/psutil) from 5.9.6 to 5.9.7. - [Changelog](https://github.com/giampaolo/psutil/blob/master/HISTORY.rst) - [Commits](https://github.com/giampaolo/psutil/compare/release-5.9.6...release-5.9.7) --- updated-dependencies: - dependency-name: psutil dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 3edae7498..da823af43 100644 --- a/requirements.txt +++ b/requirements.txt @@ -41,7 +41,7 @@ pydantic==2.5.2 uvicorn==0.24.0.post1 pyjwt==2.8.0 aiofiles==23.2.1 -psutil==5.9.6 +psutil==5.9.7 # Support for colorized terminal output colorama==0.4.6 From e1b652d8902de7566d081a07e11fc8a1206d04c5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Dec 2023 03:17:18 +0000 Subject: [PATCH 72/86] Bump mkdocs-material from 9.5.1 to 9.5.2 Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.5.1 to 9.5.2. - [Release notes](https://github.com/squidfunk/mkdocs-material/releases) - [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG) - [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.1...9.5.2) --- updated-dependencies: - dependency-name: mkdocs-material dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- docs/requirements-docs.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/requirements-docs.txt b/docs/requirements-docs.txt index 317d84926..6df4bef97 100644 --- a/docs/requirements-docs.txt +++ b/docs/requirements-docs.txt @@ -1,6 +1,6 @@ markdown==3.5.1 mkdocs==1.5.3 -mkdocs-material==9.5.1 +mkdocs-material==9.5.2 mdx_truly_sane_lists==1.3 pymdown-extensions==10.5 jinja2==3.1.2 From e5c783d2db5256cd6bf46635d2c9e4ae42c9075c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Dec 2023 03:50:16 +0000 Subject: [PATCH 73/86] Bump actions/upload-artifact from 3 to 4 Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 3 to 4. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 959579c2d..5f95fa17f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -453,7 +453,7 @@ jobs: python -m build --sdist --wheel - name: Upload artifacts 📦 - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: freqtrade-build path: | From a70ca6f61280d4fb97d3b6e9541bf47acfc5e797 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Dec 2023 03:50:19 +0000 Subject: [PATCH 74/86] Bump actions/download-artifact from 3 to 4 Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 3 to 4. - [Release notes](https://github.com/actions/download-artifact/releases) - [Commits](https://github.com/actions/download-artifact/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/download-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 959579c2d..aaef0d848 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -475,7 +475,7 @@ jobs: - uses: actions/checkout@v4 - name: Download artifact 📦 - uses: actions/download-artifact@v3 + uses: actions/download-artifact@v4 with: name: freqtrade-build path: dist From 57e01329ce6854f55de706e6be4ca6edf5be4734 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Dec 2023 05:49:40 +0000 Subject: [PATCH 75/86] Bump ccxt from 4.1.84 to 4.1.91 Bumps [ccxt](https://github.com/ccxt/ccxt) from 4.1.84 to 4.1.91. - [Release notes](https://github.com/ccxt/ccxt/releases) - [Changelog](https://github.com/ccxt/ccxt/blob/master/CHANGELOG.md) - [Commits](https://github.com/ccxt/ccxt/compare/4.1.84...4.1.91) --- updated-dependencies: - dependency-name: ccxt dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 6c41cf475..98930b1b5 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,7 +2,7 @@ numpy==1.26.2 pandas==2.1.4 pandas-ta==0.3.14b -ccxt==4.1.84 +ccxt==4.1.91 cryptography==41.0.7 aiohttp==3.9.1 SQLAlchemy==2.0.23 From 0d3d1e6d9a76d897a93a7d3c0729348f24a16001 Mon Sep 17 00:00:00 2001 From: Matthias Date: Mon, 18 Dec 2023 06:43:36 +0100 Subject: [PATCH 76/86] Remove bittrex from more tests --- tests/exchange_online/test_ccxt_compat.py | 3 --- tests/test_freqtradebot.py | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/tests/exchange_online/test_ccxt_compat.py b/tests/exchange_online/test_ccxt_compat.py index b48d70de2..f95f4c000 100644 --- a/tests/exchange_online/test_ccxt_compat.py +++ b/tests/exchange_online/test_ccxt_compat.py @@ -218,9 +218,6 @@ class TestCCXTExchange: def test_ccxt__async_get_candle_history(self, exchange: EXCHANGE_FIXTURE_TYPE): exc, exchangename = exchange - if exchangename in ('bittrex'): - # For some weired reason, this test returns random lengths for bittrex. - pytest.skip("Exchange doesn't provide stable ohlcv history") if not exc._ft_has['ohlcv_has_history']: pytest.skip("Exchange does not support candle history") diff --git a/tests/test_freqtradebot.py b/tests/test_freqtradebot.py index 70c3fee3e..06d40dfb0 100644 --- a/tests/test_freqtradebot.py +++ b/tests/test_freqtradebot.py @@ -3486,7 +3486,7 @@ def test_handle_cancel_enter(mocker, caplog, default_conf_usdt, limit_order, is_ @pytest.mark.parametrize("is_short", [False, True]) -@pytest.mark.parametrize("limit_buy_order_canceled_empty", ['binance', 'kraken', 'bittrex'], +@pytest.mark.parametrize("limit_buy_order_canceled_empty", ['binance', 'kraken', 'bybit'], indirect=['limit_buy_order_canceled_empty']) def test_handle_cancel_enter_exchanges(mocker, caplog, default_conf_usdt, is_short, fee, limit_buy_order_canceled_empty) -> None: From fe4bf271b4c316e8e22dcf9fd67aa90ba32dbb8d Mon Sep 17 00:00:00 2001 From: Matthias Date: Mon, 18 Dec 2023 06:45:15 +0100 Subject: [PATCH 77/86] Remove futher bittrex tests --- tests/exchange/test_exchange.py | 37 +++++++++++++++++---------------- 1 file changed, 19 insertions(+), 18 deletions(-) diff --git a/tests/exchange/test_exchange.py b/tests/exchange/test_exchange.py index 1d26b706f..416a6196b 100644 --- a/tests/exchange/test_exchange.py +++ b/tests/exchange/test_exchange.py @@ -13,7 +13,7 @@ from freqtrade.enums import CandleType, MarginMode, TradingMode from freqtrade.exceptions import (DDosProtection, DependencyException, ExchangeError, InsufficientFundsError, InvalidOrderException, OperationalException, PricingError, TemporaryError) -from freqtrade.exchange import (Binance, Bittrex, Exchange, Kraken, market_is_active, +from freqtrade.exchange import (Binance, Bybit, Exchange, Kraken, market_is_active, timeframe_to_prev_date) from freqtrade.exchange.common import (API_FETCH_ORDER_RETRY_COUNT, API_RETRY_COUNT, calculate_backoff, remove_exchange_credentials) @@ -228,10 +228,10 @@ def test_exchange_resolver(default_conf, mocker, caplog): assert log_has_re(r"No .* specific subclass found. Using the generic class instead.", caplog) caplog.clear() - default_conf['exchange']['name'] = 'Bittrex' + default_conf['exchange']['name'] = 'Bybit' exchange = ExchangeResolver.load_exchange(default_conf) assert isinstance(exchange, Exchange) - assert isinstance(exchange, Bittrex) + assert isinstance(exchange, Bybit) assert not log_has_re(r"No .* specific subclass found. Using the generic class instead.", caplog) caplog.clear() @@ -263,8 +263,8 @@ def test_exchange_resolver(default_conf, mocker, caplog): def test_validate_order_time_in_force(default_conf, mocker, caplog): caplog.set_level(logging.INFO) - # explicitly test bittrex, exchanges implementing other policies need separate tests - ex = get_patched_exchange(mocker, default_conf, id="bittrex") + # explicitly test bybit, exchanges implementing other policies need separate tests + ex = get_patched_exchange(mocker, default_conf, id="bybit") tif = { "buy": "gtc", "sell": "gtc", @@ -273,11 +273,14 @@ def test_validate_order_time_in_force(default_conf, mocker, caplog): ex.validate_order_time_in_force(tif) tif2 = { "buy": "fok", - "sell": "ioc", + "sell": "ioc22", } with pytest.raises(OperationalException, match=r"Time in force.*not supported for .*"): ex.validate_order_time_in_force(tif2) - + tif2 = { + "buy": "fok", + "sell": "ioc", + } # Patch to see if this will pass if the values are in the ft dict ex._ft_has.update({"order_time_in_force": ["GTC", "FOK", "IOC"]}) ex.validate_order_time_in_force(tif2) @@ -915,7 +918,6 @@ def test_validate_ordertypes(default_conf, mocker): mocker.patch(f'{EXMS}.validate_timeframes') mocker.patch(f'{EXMS}.validate_stakecurrency') mocker.patch(f'{EXMS}.validate_pricing') - mocker.patch(f'{EXMS}.name', 'Bittrex') default_conf['order_types'] = { 'entry': 'limit', @@ -2766,7 +2768,6 @@ async def test___async_get_candle_history_sort(default_conf, mocker, exchange_na assert res_ohlcv[9][4] == 0.07668 assert res_ohlcv[9][5] == 16.65244264 - # Bittrex use-case (real data from Bittrex) # This OHLCV data is ordered ASC (oldest first, newest last) ohlcv = [ [1527827700000, 0.07659999, 0.0766, 0.07627, 0.07657998, 1.85216924], @@ -3606,10 +3607,10 @@ def test_ohlcv_candle_limit(default_conf, mocker, exchange_name): timeframes = ('1m', '5m', '1h') expected = exchange._ft_has['ohlcv_candle_limit'] for timeframe in timeframes: - if 'ohlcv_candle_limit_per_timeframe' in exchange._ft_has: - expected = exchange._ft_has['ohlcv_candle_limit_per_timeframe'][timeframe] - # This should only run for bittrex - assert exchange_name == 'bittrex' + # if 'ohlcv_candle_limit_per_timeframe' in exchange._ft_has: + # expected = exchange._ft_has['ohlcv_candle_limit_per_timeframe'][timeframe] + # This should only run for bittrex + # assert exchange_name == 'bittrex' assert exchange.ohlcv_candle_limit(timeframe, CandleType.SPOT) == expected @@ -4522,10 +4523,10 @@ def test_amount_to_contract_precision( @pytest.mark.parametrize('exchange_name,open_rate,is_short,trading_mode,margin_mode', [ - # Bittrex - ('bittrex', 2.0, False, 'spot', None), - ('bittrex', 2.0, False, 'spot', 'cross'), - ('bittrex', 2.0, True, 'spot', 'isolated'), + # Bybit + ('bybit', 2.0, False, 'spot', None), + ('bybit', 2.0, False, 'spot', 'cross'), + ('bybit', 2.0, True, 'spot', 'isolated'), # Binance ('binance', 2.0, False, 'spot', None), ('binance', 2.0, False, 'spot', 'cross'), @@ -4947,7 +4948,7 @@ def test_get_max_leverage_futures(default_conf, mocker, leverage_tiers): exchange.get_max_leverage("BTC/USDT:USDT", 1000000000.01) -@pytest.mark.parametrize("exchange_name", ['bittrex', 'binance', 'kraken', 'gate', 'okx', 'bybit']) +@pytest.mark.parametrize("exchange_name", ['binance', 'kraken', 'gate', 'okx', 'bybit']) def test__get_params(mocker, default_conf, exchange_name): api_mock = MagicMock() mocker.patch(f'{EXMS}.exchange_has', return_value=True) From 5bbe6aacfdd36d421d70a44767ba76b9f6ac4f04 Mon Sep 17 00:00:00 2001 From: Matthias Date: Mon, 18 Dec 2023 06:47:24 +0100 Subject: [PATCH 78/86] Remove Bittrex subclass --- freqtrade/exchange/__init__.py | 1 - freqtrade/exchange/bittrex.py | 25 ------------------------- freqtrade/exchange/exchange.py | 1 + tests/exchange/test_exchange.py | 2 +- 4 files changed, 2 insertions(+), 27 deletions(-) delete mode 100644 freqtrade/exchange/bittrex.py diff --git a/freqtrade/exchange/__init__.py b/freqtrade/exchange/__init__.py index 8de9120dc..442dcfc89 100644 --- a/freqtrade/exchange/__init__.py +++ b/freqtrade/exchange/__init__.py @@ -6,7 +6,6 @@ from freqtrade.exchange.exchange import Exchange from freqtrade.exchange.binance import Binance from freqtrade.exchange.bitmart import Bitmart from freqtrade.exchange.bitpanda import Bitpanda -from freqtrade.exchange.bittrex import Bittrex from freqtrade.exchange.bitvavo import Bitvavo from freqtrade.exchange.bybit import Bybit from freqtrade.exchange.coinbasepro import Coinbasepro diff --git a/freqtrade/exchange/bittrex.py b/freqtrade/exchange/bittrex.py deleted file mode 100644 index 69e2f2b8d..000000000 --- a/freqtrade/exchange/bittrex.py +++ /dev/null @@ -1,25 +0,0 @@ -""" Bittrex exchange subclass """ -import logging -from typing import Dict - -from freqtrade.exchange import Exchange - - -logger = logging.getLogger(__name__) - - -class Bittrex(Exchange): - """ - Bittrex exchange class. Contains adjustments needed for Freqtrade to work - with this exchange. - """ - - _ft_has: Dict = { - "ohlcv_candle_limit_per_timeframe": { - '1m': 1440, - '5m': 288, - '1h': 744, - '1d': 365, - }, - "l2_limit_range": [1, 25, 500], - } diff --git a/freqtrade/exchange/exchange.py b/freqtrade/exchange/exchange.py index 5d0bc704f..34d5e007b 100644 --- a/freqtrade/exchange/exchange.py +++ b/freqtrade/exchange/exchange.py @@ -330,6 +330,7 @@ class Exchange: Exchange ohlcv candle limit Uses ohlcv_candle_limit_per_timeframe if the exchange has different limits per timeframe (e.g. bittrex), otherwise falls back to ohlcv_candle_limit + TODO: this is most likely no longer needed since only bittrex needed this. :param timeframe: Timeframe to check :param candle_type: Candle-type :param since_ms: Starting timestamp diff --git a/tests/exchange/test_exchange.py b/tests/exchange/test_exchange.py index 416a6196b..8d2d52219 100644 --- a/tests/exchange/test_exchange.py +++ b/tests/exchange/test_exchange.py @@ -3411,7 +3411,7 @@ def test_get_fee(default_conf, mocker, exchange_name): def test_stoploss_order_unsupported_exchange(default_conf, mocker): - exchange = get_patched_exchange(mocker, default_conf, id='bittrex') + exchange = get_patched_exchange(mocker, default_conf, id='bitpanda') with pytest.raises(OperationalException, match=r"stoploss is not implemented .*"): exchange.create_stoploss( pair='ETH/BTC', From 3096cddbcf5c5f5e07ad8a6ab801875e36e06573 Mon Sep 17 00:00:00 2001 From: Matthias Date: Mon, 18 Dec 2023 06:48:54 +0100 Subject: [PATCH 79/86] further remove bittrex from docs --- docs/exchanges.md | 42 ------------------------- docs/faq.md | 2 +- docs/includes/pairlists.md | 4 +-- docs/utils.md | 2 -- freqtrade/templates/base_config.json.j2 | 2 +- 5 files changed, 4 insertions(+), 48 deletions(-) diff --git a/docs/exchanges.md b/docs/exchanges.md index ac3957b07..457033a3e 100644 --- a/docs/exchanges.md +++ b/docs/exchanges.md @@ -181,48 +181,6 @@ freqtrade download-data --exchange kraken --dl-trades -p BTC/EUR BCH/EUR Please pay attention that rateLimit configuration entry holds delay in milliseconds between requests, NOT requests\sec rate. So, in order to mitigate Kraken API "Rate limit exceeded" exception, this configuration should be increased, NOT decreased. -## Bittrex - -### Order types - -Bittrex does not support market orders. If you have a message at the bot startup about this, you should change order type values set in your configuration and/or in the strategy from `"market"` to `"limit"`. See some more details on this [here in the FAQ](faq.md#im-getting-the-exchange-bittrex-does-not-support-market-orders-message-and-cannot-run-my-strategy). - -Bittrex also does not support `VolumePairlist` due to limited / split API constellation at the moment. -Please use `StaticPairlist`. Other pairlists (other than `VolumePairlist`) should not be affected. - -### Volume pairlist - -Bittrex does not support the direct usage of VolumePairList. This can however be worked around by using the advanced mode with `lookback_days: 1` (or more), which will emulate 24h volume. - -Read more in the [pairlist documentation](plugins.md#volumepairlist-advanced-mode). - -### Restricted markets - -Bittrex split its exchange into US and International versions. -The International version has more pairs available, however the API always returns all pairs, so there is currently no automated way to detect if you're affected by the restriction. - -If you have restricted pairs in your whitelist, you'll get a warning message in the log on Freqtrade startup for each restricted pair. - -The warning message will look similar to the following: - -``` output -[...] Message: bittrex {"success":false,"message":"RESTRICTED_MARKET","result":null,"explanation":null}" -``` - -If you're an "International" customer on the Bittrex exchange, then this warning will probably not impact you. -If you're a US customer, the bot will fail to create orders for these pairs, and you should remove them from your whitelist. - -You can get a list of restricted markets by using the following snippet: - -``` python -import ccxt -ct = ccxt.bittrex() -lm = ct.load_markets() - -res = [p for p, x in lm.items() if 'US' in x['info']['prohibitedIn']] -print(res) -``` - ## Kucoin Kucoin requires a passphrase for each api key, you will therefore need to add this key into the configuration so your exchange section looks as follows: diff --git a/docs/faq.md b/docs/faq.md index 196bd4308..95a9924f9 100644 --- a/docs/faq.md +++ b/docs/faq.md @@ -130,7 +130,7 @@ This warning can point to one of the below problems: ### I'm getting the "Exchange XXX does not support market orders." message and cannot run my strategy -As the message says, your exchange does not support market orders and you have one of the [order types](configuration.md/#understand-order_types) set to "market". Your strategy was probably written with other exchanges in mind and sets "market" orders for "stoploss" orders, which is correct and preferable for most of the exchanges supporting market orders (but not for Bittrex and Gate.io). +As the message says, your exchange does not support market orders and you have one of the [order types](configuration.md/#understand-order_types) set to "market". Your strategy was probably written with other exchanges in mind and sets "market" orders for "stoploss" orders, which is correct and preferable for most of the exchanges supporting market orders (but not for Gate.io). To fix this, redefine order types in the strategy to use "limit" instead of "market": diff --git a/docs/includes/pairlists.md b/docs/includes/pairlists.md index b3b23d6ff..8e4b43178 100644 --- a/docs/includes/pairlists.md +++ b/docs/includes/pairlists.md @@ -112,8 +112,8 @@ For convenience `lookback_days` can be specified, which will imply that 1d candl !!! Warning "Performance implications when using lookback range" If used in first position in combination with lookback, the computation of the range based volume can be time and resource consuming, as it downloads candles for all tradable pairs. Hence it's highly advised to use the standard approach with `VolumeFilter` to narrow the pairlist down for further range volume calculation. -??? Tip "Unsupported exchanges (Bittrex, Gemini)" - On some exchanges (like Bittrex and Gemini), regular VolumePairList does not work as the api does not natively provide 24h volume. This can be worked around by using candle data to build the volume. +??? Tip "Unsupported exchanges" + On some exchanges (like Gemini), regular VolumePairList does not work as the api does not natively provide 24h volume. This can be worked around by using candle data to build the volume. To roughly simulate 24h volume, you can use the following configuration. Please note that These pairlists will only refresh once per day. diff --git a/docs/utils.md b/docs/utils.md index ac0d341bd..b4432833d 100644 --- a/docs/utils.md +++ b/docs/utils.md @@ -242,7 +242,6 @@ bitkk True missing opt: fetchMyTrades bitmart True bitmax True missing opt: fetchMyTrades bitpanda True -bittrex True bitvavo True bitz True missing opt: fetchMyTrades btcalpha True missing opt: fetchTicker, fetchTickers @@ -324,7 +323,6 @@ bitpanda True bitso False missing: fetchOHLCV bitstamp True missing opt: fetchTickers bitstamp1 False missing: fetchOrder, fetchOHLCV -bittrex True bitvavo True bitz True missing opt: fetchMyTrades bl3p False missing: fetchOrder, fetchOHLCV diff --git a/freqtrade/templates/base_config.json.j2 b/freqtrade/templates/base_config.json.j2 index 1a4552c11..caa27a69e 100644 --- a/freqtrade/templates/base_config.json.j2 +++ b/freqtrade/templates/base_config.json.j2 @@ -39,7 +39,7 @@ }, {{ exchange | indent(4) }}, "pairlists": [ - {{ '{"method": "StaticPairList"}' if exchange_name == 'bittrex' else volume_pairlist }} + {{ volume_pairlist }} ], "telegram": { "enabled": {{ telegram | lower }}, From b371593084e188ef0fc34848a225a81ba9cb47f1 Mon Sep 17 00:00:00 2001 From: Matthias Date: Mon, 18 Dec 2023 07:08:05 +0100 Subject: [PATCH 80/86] Move previous test config to tests --- .gitignore | 1 - .../testdata/testconfigs/main_test_config.json | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) rename config_examples/config_bittrex.example.json => tests/testdata/testconfigs/main_test_config.json (98%) diff --git a/.gitignore b/.gitignore index 400a082f3..c818981ee 100644 --- a/.gitignore +++ b/.gitignore @@ -111,7 +111,6 @@ target/ #exceptions !*.gitkeep !config_examples/config_binance.example.json -!config_examples/config_bittrex.example.json !config_examples/config_full.example.json !config_examples/config_kraken.example.json !config_examples/config_freqai.example.json diff --git a/config_examples/config_bittrex.example.json b/tests/testdata/testconfigs/main_test_config.json similarity index 98% rename from config_examples/config_bittrex.example.json rename to tests/testdata/testconfigs/main_test_config.json index 882b92edc..0af5816dc 100644 --- a/config_examples/config_bittrex.example.json +++ b/tests/testdata/testconfigs/main_test_config.json @@ -29,7 +29,7 @@ "order_book_top": 1 }, "exchange": { - "name": "bittrex", + "name": "binance", "key": "your_exchange_key", "secret": "your_exchange_secret", "ccxt_config": {}, From 651d2c06b93e7e9c71a35982444fa53b2e11071c Mon Sep 17 00:00:00 2001 From: Matthias Date: Mon, 18 Dec 2023 07:08:19 +0100 Subject: [PATCH 81/86] Update tests to use new file --- tests/commands/test_commands.py | 106 ++++++++++++++++---------------- tests/test_plotting.py | 4 +- 2 files changed, 55 insertions(+), 55 deletions(-) diff --git a/tests/commands/test_commands.py b/tests/commands/test_commands.py index 7698740a5..d6d2b5794 100644 --- a/tests/commands/test_commands.py +++ b/tests/commands/test_commands.py @@ -32,7 +32,7 @@ from tests.conftest_trades import MOCK_TRADE_COUNT def test_setup_utils_configuration(): args = [ - 'list-exchanges', '--config', 'config_examples/config_bittrex.example.json', + 'list-exchanges', '--config', 'tests/testdata/testconfigs/main_test_config.json', ] config = setup_utils_configuration(get_args(args), RunMode.OTHER) @@ -49,7 +49,7 @@ def test_start_trading_fail(mocker, caplog): exitmock = mocker.patch("freqtrade.worker.Worker.exit", MagicMock()) args = [ 'trade', - '-c', 'config_examples/config_bittrex.example.json' + '-c', 'tests/testdata/testconfigs/main_test_config.json' ] start_trading(get_args(args)) assert exitmock.call_count == 1 @@ -68,7 +68,7 @@ def test_start_webserver(mocker, caplog): args = [ 'webserver', - '-c', 'config_examples/config_bittrex.example.json' + '-c', 'tests/testdata/testconfigs/main_test_config.json' ] start_webserver(get_args(args)) assert api_server_mock.call_count == 1 @@ -84,7 +84,7 @@ def test_list_exchanges(capsys): captured = capsys.readouterr() assert re.match(r"Exchanges available for Freqtrade.*", captured.out) assert re.search(r".*binance.*", captured.out) - assert re.search(r".*bittrex.*", captured.out) + assert re.search(r".*bybit.*", captured.out) # Test with --one-column args = [ @@ -95,7 +95,7 @@ def test_list_exchanges(capsys): start_list_exchanges(get_args(args)) captured = capsys.readouterr() assert re.search(r"^binance$", captured.out, re.MULTILINE) - assert re.search(r"^bittrex$", captured.out, re.MULTILINE) + assert re.search(r"^bybit$", captured.out, re.MULTILINE) # Test with --all args = [ @@ -107,7 +107,7 @@ def test_list_exchanges(capsys): captured = capsys.readouterr() assert re.match(r"All exchanges supported by the ccxt library.*", captured.out) assert re.search(r".*binance.*", captured.out) - assert re.search(r".*bittrex.*", captured.out) + assert re.search(r".*bingx.*", captured.out) assert re.search(r".*bitmex.*", captured.out) # Test with --one-column --all @@ -120,7 +120,7 @@ def test_list_exchanges(capsys): start_list_exchanges(get_args(args)) captured = capsys.readouterr() assert re.search(r"^binance$", captured.out, re.MULTILINE) - assert re.search(r"^bittrex$", captured.out, re.MULTILINE) + assert re.search(r"^bingx$", captured.out, re.MULTILINE) assert re.search(r"^bitmex$", captured.out, re.MULTILINE) @@ -133,7 +133,7 @@ def test_list_timeframes(mocker, capsys): '1h': 'hour', '1d': 'day', } - patch_exchange(mocker, api_mock=api_mock, id='bittrex') + patch_exchange(mocker, api_mock=api_mock, id='bybit') args = [ "list-timeframes", ] @@ -143,25 +143,25 @@ def test_list_timeframes(mocker, capsys): match=r"This command requires a configured exchange.*"): start_list_timeframes(pargs) - # Test with --config config_examples/config_bittrex.example.json + # Test with --config tests/testdata/testconfigs/main_test_config.json args = [ "list-timeframes", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', ] start_list_timeframes(get_args(args)) captured = capsys.readouterr() - assert re.match("Timeframes available for the exchange `Bittrex`: " + assert re.match("Timeframes available for the exchange `Bybit`: " "1m, 5m, 30m, 1h, 1d", captured.out) - # Test with --exchange bittrex + # Test with --exchange bybit args = [ "list-timeframes", - "--exchange", "bittrex", + "--exchange", "bybit", ] start_list_timeframes(get_args(args)) captured = capsys.readouterr() - assert re.match("Timeframes available for the exchange `Bittrex`: " + assert re.match("Timeframes available for the exchange `Bybit`: " "1m, 5m, 30m, 1h, 1d", captured.out) @@ -190,7 +190,7 @@ def test_list_timeframes(mocker, capsys): # Test with --one-column args = [ "list-timeframes", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', "--one-column", ] start_list_timeframes(get_args(args)) @@ -217,7 +217,7 @@ def test_list_timeframes(mocker, capsys): def test_list_markets(mocker, markets_static, capsys): api_mock = MagicMock() - patch_exchange(mocker, api_mock=api_mock, id='bittrex', mock_markets=markets_static) + patch_exchange(mocker, api_mock=api_mock, id='binance', mock_markets=markets_static) # Test with no --config args = [ @@ -229,15 +229,15 @@ def test_list_markets(mocker, markets_static, capsys): match=r"This command requires a configured exchange.*"): start_list_markets(pargs, False) - # Test with --config config_examples/config_bittrex.example.json + # Test with --config tests/testdata/testconfigs/main_test_config.json args = [ "list-markets", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', "--print-list", ] start_list_markets(get_args(args), False) captured = capsys.readouterr() - assert ("Exchange Bittrex has 12 active markets: " + assert ("Exchange Binance has 12 active markets: " "ADA/USDT:USDT, BLK/BTC, ETH/BTC, ETH/USDT, ETH/USDT:USDT, LTC/BTC, " "LTC/ETH, LTC/USD, NEO/BTC, TKN/BTC, XLTCUSDT, XRP/BTC.\n" in captured.out) @@ -255,16 +255,16 @@ def test_list_markets(mocker, markets_static, capsys): assert re.match("\nExchange Binance has 12 active markets:\n", captured.out) - patch_exchange(mocker, api_mock=api_mock, id="bittrex", mock_markets=markets_static) + patch_exchange(mocker, api_mock=api_mock, id="binance", mock_markets=markets_static) # Test with --all: all markets args = [ "list-markets", "--all", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', "--print-list", ] start_list_markets(get_args(args), False) captured = capsys.readouterr() - assert ("Exchange Bittrex has 14 markets: " + assert ("Exchange Binance has 14 markets: " "ADA/USDT:USDT, BLK/BTC, BTT/BTC, ETH/BTC, ETH/USDT, ETH/USDT:USDT, " "LTC/BTC, LTC/ETH, LTC/USD, LTC/USDT, NEO/BTC, TKN/BTC, XLTCUSDT, XRP/BTC.\n" in captured.out) @@ -272,24 +272,24 @@ def test_list_markets(mocker, markets_static, capsys): # Test list-pairs subcommand: active pairs args = [ "list-pairs", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', "--print-list", ] start_list_markets(get_args(args), True) captured = capsys.readouterr() - assert ("Exchange Bittrex has 9 active pairs: " + assert ("Exchange Binance has 9 active pairs: " "BLK/BTC, ETH/BTC, ETH/USDT, LTC/BTC, LTC/ETH, LTC/USD, NEO/BTC, TKN/BTC, XRP/BTC.\n" in captured.out) # Test list-pairs subcommand with --all: all pairs args = [ "list-pairs", "--all", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', "--print-list", ] start_list_markets(get_args(args), True) captured = capsys.readouterr() - assert ("Exchange Bittrex has 11 pairs: " + assert ("Exchange Binance has 11 pairs: " "BLK/BTC, BTT/BTC, ETH/BTC, ETH/USDT, LTC/BTC, LTC/ETH, LTC/USD, LTC/USDT, NEO/BTC, " "TKN/BTC, XRP/BTC.\n" in captured.out) @@ -297,133 +297,133 @@ def test_list_markets(mocker, markets_static, capsys): # active markets, base=ETH, LTC args = [ "list-markets", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', "--base", "ETH", "LTC", "--print-list", ] start_list_markets(get_args(args), False) captured = capsys.readouterr() - assert ("Exchange Bittrex has 7 active markets with ETH, LTC as base currencies: " + assert ("Exchange Binance has 7 active markets with ETH, LTC as base currencies: " "ETH/BTC, ETH/USDT, ETH/USDT:USDT, LTC/BTC, LTC/ETH, LTC/USD, XLTCUSDT.\n" in captured.out) # active markets, base=LTC args = [ "list-markets", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', "--base", "LTC", "--print-list", ] start_list_markets(get_args(args), False) captured = capsys.readouterr() - assert ("Exchange Bittrex has 4 active markets with LTC as base currency: " + assert ("Exchange Binance has 4 active markets with LTC as base currency: " "LTC/BTC, LTC/ETH, LTC/USD, XLTCUSDT.\n" in captured.out) # active markets, quote=USDT, USD args = [ "list-markets", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', "--quote", "USDT", "USD", "--print-list", ] start_list_markets(get_args(args), False) captured = capsys.readouterr() - assert ("Exchange Bittrex has 5 active markets with USDT, USD as quote currencies: " + assert ("Exchange Binance has 5 active markets with USDT, USD as quote currencies: " "ADA/USDT:USDT, ETH/USDT, ETH/USDT:USDT, LTC/USD, XLTCUSDT.\n" in captured.out) # active markets, quote=USDT args = [ "list-markets", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', "--quote", "USDT", "--print-list", ] start_list_markets(get_args(args), False) captured = capsys.readouterr() - assert ("Exchange Bittrex has 4 active markets with USDT as quote currency: " + assert ("Exchange Binance has 4 active markets with USDT as quote currency: " "ADA/USDT:USDT, ETH/USDT, ETH/USDT:USDT, XLTCUSDT.\n" in captured.out) # active markets, base=LTC, quote=USDT args = [ "list-markets", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', "--base", "LTC", "--quote", "USDT", "--print-list", ] start_list_markets(get_args(args), False) captured = capsys.readouterr() - assert ("Exchange Bittrex has 1 active market with LTC as base currency and " + assert ("Exchange Binance has 1 active market with LTC as base currency and " "with USDT as quote currency: XLTCUSDT.\n" in captured.out) # active pairs, base=LTC, quote=USDT args = [ "list-pairs", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', "--base", "LTC", "--quote", "USD", "--print-list", ] start_list_markets(get_args(args), True) captured = capsys.readouterr() - assert ("Exchange Bittrex has 1 active pair with LTC as base currency and " + assert ("Exchange Binance has 1 active pair with LTC as base currency and " "with USD as quote currency: LTC/USD.\n" in captured.out) # active markets, base=LTC, quote=USDT, NONEXISTENT args = [ "list-markets", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', "--base", "LTC", "--quote", "USDT", "NONEXISTENT", "--print-list", ] start_list_markets(get_args(args), False) captured = capsys.readouterr() - assert ("Exchange Bittrex has 1 active market with LTC as base currency and " + assert ("Exchange Binance has 1 active market with LTC as base currency and " "with USDT, NONEXISTENT as quote currencies: XLTCUSDT.\n" in captured.out) # active markets, base=LTC, quote=NONEXISTENT args = [ "list-markets", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', "--base", "LTC", "--quote", "NONEXISTENT", "--print-list", ] start_list_markets(get_args(args), False) captured = capsys.readouterr() - assert ("Exchange Bittrex has 0 active markets with LTC as base currency and " + assert ("Exchange Binance has 0 active markets with LTC as base currency and " "with NONEXISTENT as quote currency.\n" in captured.out) # Test tabular output args = [ "list-markets", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', ] start_list_markets(get_args(args), False) captured = capsys.readouterr() - assert ("Exchange Bittrex has 12 active markets:\n" + assert ("Exchange Binance has 12 active markets:\n" in captured.out) # Test tabular output, no markets found args = [ "list-markets", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', "--base", "LTC", "--quote", "NONEXISTENT", ] start_list_markets(get_args(args), False) captured = capsys.readouterr() - assert ("Exchange Bittrex has 0 active markets with LTC as base currency and " + assert ("Exchange Binance has 0 active markets with LTC as base currency and " "with NONEXISTENT as quote currency.\n" in captured.out) # Test --print-json args = [ "list-markets", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', "--print-json" ] start_list_markets(get_args(args), False) @@ -435,7 +435,7 @@ def test_list_markets(mocker, markets_static, capsys): # Test --print-csv args = [ "list-markets", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', "--print-csv" ] start_list_markets(get_args(args), False) @@ -447,7 +447,7 @@ def test_list_markets(mocker, markets_static, capsys): # Test --one-column args = [ "list-markets", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', "--one-column" ] start_list_markets(get_args(args), False) @@ -459,7 +459,7 @@ def test_list_markets(mocker, markets_static, capsys): # Test --one-column args = [ "list-markets", - '--config', 'config_examples/config_bittrex.example.json', + '--config', 'tests/testdata/testconfigs/main_test_config.json', "--one-column" ] with pytest.raises(OperationalException, match=r"Cannot get markets.*"): @@ -971,7 +971,7 @@ def test_start_test_pairlist(mocker, caplog, tickers, default_conf, capsys): patched_configuration_load_config_file(mocker, default_conf) args = [ 'test-pairlist', - '-c', 'config_examples/config_bittrex.example.json' + '-c', 'tests/testdata/testconfigs/main_test_config.json' ] start_test_pairlist(get_args(args)) @@ -985,7 +985,7 @@ def test_start_test_pairlist(mocker, caplog, tickers, default_conf, capsys): args = [ 'test-pairlist', - '-c', 'config_examples/config_bittrex.example.json', + '-c', 'tests/testdata/testconfigs/main_test_config.json', '--one-column', ] start_test_pairlist(get_args(args)) @@ -994,7 +994,7 @@ def test_start_test_pairlist(mocker, caplog, tickers, default_conf, capsys): args = [ 'test-pairlist', - '-c', 'config_examples/config_bittrex.example.json', + '-c', 'tests/testdata/testconfigs/main_test_config.json', '--print-json', ] start_test_pairlist(get_args(args)) diff --git a/tests/test_plotting.py b/tests/test_plotting.py index 377caf59c..7f80a8588 100644 --- a/tests/test_plotting.py +++ b/tests/test_plotting.py @@ -377,7 +377,7 @@ def test_start_plot_dataframe(mocker): aup = mocker.patch("freqtrade.plot.plotting.load_and_plot_trades", MagicMock()) args = [ "plot-dataframe", - "--config", "config_examples/config_bittrex.example.json", + "--config", "tests/testdata/testconfigs/main_test_config.json", "--pairs", "ETH/BTC" ] start_plot_dataframe(get_args(args)) @@ -420,7 +420,7 @@ def test_start_plot_profit(mocker): aup = mocker.patch("freqtrade.plot.plotting.plot_profit", MagicMock()) args = [ "plot-profit", - "--config", "config_examples/config_bittrex.example.json", + "--config", "tests/testdata/testconfigs/main_test_config.json", "--pairs", "ETH/BTC" ] start_plot_profit(get_args(args)) From 5e3da30ab904249dc8f148e01c29948bcaa624bd Mon Sep 17 00:00:00 2001 From: Matthias Date: Mon, 18 Dec 2023 07:15:19 +0100 Subject: [PATCH 82/86] Fix remaining bittrex instances --- tests/commands/test_build_config.py | 2 +- tests/test_arguments.py | 2 +- tests/test_main.py | 20 ++++++++++---------- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/tests/commands/test_build_config.py b/tests/commands/test_build_config.py index 7bf374ae0..f799be3ba 100644 --- a/tests/commands/test_build_config.py +++ b/tests/commands/test_build_config.py @@ -30,7 +30,7 @@ def test_validate_is_int(): assert not validate_is_int('-ee') -@pytest.mark.parametrize('exchange', ['bittrex', 'binance', 'kraken']) +@pytest.mark.parametrize('exchange', ['bybit', 'binance', 'kraken']) def test_start_new_config(mocker, caplog, exchange): wt_mock = mocker.patch.object(Path, "write_text", MagicMock()) mocker.patch.object(Path, "exists", MagicMock(return_value=True)) diff --git a/tests/test_arguments.py b/tests/test_arguments.py index b4f6e7279..e14b09719 100644 --- a/tests/test_arguments.py +++ b/tests/test_arguments.py @@ -173,7 +173,7 @@ def test_download_data_options() -> None: def test_plot_dataframe_options() -> None: args = [ 'plot-dataframe', - '-c', 'config_examples/config_bittrex.example.json', + '-c', 'tests/testdata/testconfigs/main_test_config.json', '--indicators1', 'sma10', 'sma100', '--indicators2', 'macd', 'fastd', 'fastk', '--plot-limit', '30', diff --git a/tests/test_main.py b/tests/test_main.py index bdb3c2bba..442e6e1d7 100644 --- a/tests/test_main.py +++ b/tests/test_main.py @@ -67,12 +67,12 @@ def test_main_fatal_exception(mocker, default_conf, caplog) -> None: mocker.patch('freqtrade.freqtradebot.RPCManager', MagicMock()) mocker.patch('freqtrade.freqtradebot.init_db', MagicMock()) - args = ['trade', '-c', 'config_examples/config_bittrex.example.json'] + args = ['trade', '-c', 'tests/testdata/testconfigs/main_test_config.json'] # Test Main + the KeyboardInterrupt exception with pytest.raises(SystemExit): main(args) - assert log_has('Using config: config_examples/config_bittrex.example.json ...', caplog) + assert log_has('Using config: tests/testdata/testconfigs/main_test_config.json ...', caplog) assert log_has('Fatal exception!', caplog) @@ -85,12 +85,12 @@ def test_main_keyboard_interrupt(mocker, default_conf, caplog) -> None: mocker.patch('freqtrade.wallets.Wallets.update', MagicMock()) mocker.patch('freqtrade.freqtradebot.init_db', MagicMock()) - args = ['trade', '-c', 'config_examples/config_bittrex.example.json'] + args = ['trade', '-c', 'tests/testdata/testconfigs/main_test_config.json'] # Test Main + the KeyboardInterrupt exception with pytest.raises(SystemExit): main(args) - assert log_has('Using config: config_examples/config_bittrex.example.json ...', caplog) + assert log_has('Using config: tests/testdata/testconfigs/main_test_config.json ...', caplog) assert log_has('SIGINT received, aborting ...', caplog) @@ -106,12 +106,12 @@ def test_main_operational_exception(mocker, default_conf, caplog) -> None: mocker.patch('freqtrade.freqtradebot.RPCManager', MagicMock()) mocker.patch('freqtrade.freqtradebot.init_db', MagicMock()) - args = ['trade', '-c', 'config_examples/config_bittrex.example.json'] + args = ['trade', '-c', 'tests/testdata/testconfigs/main_test_config.json'] # Test Main + the KeyboardInterrupt exception with pytest.raises(SystemExit): main(args) - assert log_has('Using config: config_examples/config_bittrex.example.json ...', caplog) + assert log_has('Using config: tests/testdata/testconfigs/main_test_config.json ...', caplog) assert log_has('Oh snap!', caplog) @@ -160,13 +160,13 @@ def test_main_reload_config(mocker, default_conf, caplog) -> None: args = Arguments([ 'trade', '-c', - 'config_examples/config_bittrex.example.json' + 'tests/testdata/testconfigs/main_test_config.json' ]).get_parsed_arg() worker = Worker(args=args, config=default_conf) with pytest.raises(SystemExit): - main(['trade', '-c', 'config_examples/config_bittrex.example.json']) + main(['trade', '-c', 'tests/testdata/testconfigs/main_test_config.json']) - assert log_has('Using config: config_examples/config_bittrex.example.json ...', caplog) + assert log_has('Using config: tests/testdata/testconfigs/main_test_config.json ...', caplog) assert worker_mock.call_count == 4 assert reconfigure_mock.call_count == 1 assert isinstance(worker.freqtrade, FreqtradeBot) @@ -187,7 +187,7 @@ def test_reconfigure(mocker, default_conf) -> None: args = Arguments([ 'trade', '-c', - 'config_examples/config_bittrex.example.json' + 'tests/testdata/testconfigs/main_test_config.json' ]).get_parsed_arg() worker = Worker(args=args, config=default_conf) freqtrade = worker.freqtrade From 26f0fe238306a3c02fea3296db9ee4809b9e179a Mon Sep 17 00:00:00 2001 From: robcaulk Date: Mon, 18 Dec 2023 12:38:34 +0100 Subject: [PATCH 83/86] make example strat *even* simpler and make sure it buys and sells a lot ;) --- freqtrade/templates/FreqaiExampleStrategy.py | 23 +++++--------------- 1 file changed, 5 insertions(+), 18 deletions(-) diff --git a/freqtrade/templates/FreqaiExampleStrategy.py b/freqtrade/templates/FreqaiExampleStrategy.py index 8be1f0336..93b916e38 100644 --- a/freqtrade/templates/FreqaiExampleStrategy.py +++ b/freqtrade/templates/FreqaiExampleStrategy.py @@ -6,7 +6,7 @@ import talib.abstract as ta from pandas import DataFrame from technical import qtpylib -from freqtrade.strategy import CategoricalParameter, IStrategy +from freqtrade.strategy import IStrategy logger = logging.getLogger(__name__) @@ -45,11 +45,6 @@ class FreqaiExampleStrategy(IStrategy): startup_candle_count: int = 40 can_short = True - std_dev_multiplier_buy = CategoricalParameter( - [0.75, 1, 1.25, 1.5, 1.75], default=1.25, space="buy", optimize=True) - std_dev_multiplier_sell = CategoricalParameter( - [0.75, 1, 1.25, 1.5, 1.75], space="sell", default=1.25, optimize=True) - def feature_engineering_expand_all(self, dataframe: DataFrame, period: int, metadata: Dict, **kwargs) -> DataFrame: """ @@ -239,21 +234,13 @@ class FreqaiExampleStrategy(IStrategy): dataframe = self.freqai.start(dataframe, metadata, self) - for val in self.std_dev_multiplier_buy.range: - dataframe[f'target_roi_{val}'] = ( - dataframe["&-s_close_mean"] + dataframe["&-s_close_std"] * val - ) - for val in self.std_dev_multiplier_sell.range: - dataframe[f'sell_roi_{val}'] = ( - dataframe["&-s_close_mean"] - dataframe["&-s_close_std"] * val - ) return dataframe def populate_entry_trend(self, df: DataFrame, metadata: dict) -> DataFrame: enter_long_conditions = [ df["do_predict"] == 1, - df["&-s_close"] > df[f"target_roi_{self.std_dev_multiplier_buy.value}"], + df["&-s_close"] > 0.01, ] if enter_long_conditions: @@ -263,7 +250,7 @@ class FreqaiExampleStrategy(IStrategy): enter_short_conditions = [ df["do_predict"] == 1, - df["&-s_close"] < df[f"sell_roi_{self.std_dev_multiplier_sell.value}"], + df["&-s_close"] < -0.01, ] if enter_short_conditions: @@ -276,14 +263,14 @@ class FreqaiExampleStrategy(IStrategy): def populate_exit_trend(self, df: DataFrame, metadata: dict) -> DataFrame: exit_long_conditions = [ df["do_predict"] == 1, - df["&-s_close"] < df[f"sell_roi_{self.std_dev_multiplier_sell.value}"] * 0.25, + df["&-s_close"] < 0 ] if exit_long_conditions: df.loc[reduce(lambda x, y: x & y, exit_long_conditions), "exit_long"] = 1 exit_short_conditions = [ df["do_predict"] == 1, - df["&-s_close"] > df[f"target_roi_{self.std_dev_multiplier_buy.value}"] * 0.25, + df["&-s_close"] > 0 ] if exit_short_conditions: df.loc[reduce(lambda x, y: x & y, exit_short_conditions), "exit_short"] = 1 From 2f2467256ccb7177259b4f4d845b54fde3db246b Mon Sep 17 00:00:00 2001 From: robcaulk Date: Mon, 18 Dec 2023 12:56:04 +0100 Subject: [PATCH 84/86] feat: add SKLearnRandomForestClassifier --- .../SKLearnRandomForestClassifier.py | 82 +++++++++++++++++++ tests/freqai/test_freqai_interface.py | 1 + tests/rpc/test_rpc_apiserver.py | 2 + 3 files changed, 85 insertions(+) create mode 100644 freqtrade/freqai/prediction_models/SKLearnRandomForestClassifier.py diff --git a/freqtrade/freqai/prediction_models/SKLearnRandomForestClassifier.py b/freqtrade/freqai/prediction_models/SKLearnRandomForestClassifier.py new file mode 100644 index 000000000..4462efc49 --- /dev/null +++ b/freqtrade/freqai/prediction_models/SKLearnRandomForestClassifier.py @@ -0,0 +1,82 @@ +import logging +from typing import Any, Dict, Tuple + +import numpy as np +import numpy.typing as npt +from pandas import DataFrame +from sklearn.ensemble import RandomForestClassifier +from sklearn.preprocessing import LabelEncoder + +from freqtrade.freqai.base_models.BaseClassifierModel import BaseClassifierModel +from freqtrade.freqai.data_kitchen import FreqaiDataKitchen + + +logger = logging.getLogger(__name__) + + +class SKLearnRandomForestClassifier(BaseClassifierModel): + """ + User created prediction model. The class inherits IFreqaiModel, which + means it has full access to all Frequency AI functionality. Typically, + users would use this to override the common `fit()`, `train()`, or + `predict()` methods to add their custom data handling tools or change + various aspects of the training that cannot be configured via the + top level config.json file. + """ + + def fit(self, data_dictionary: Dict, dk: FreqaiDataKitchen, **kwargs) -> Any: + """ + User sets up the training and test data to fit their desired model here + :param data_dictionary: the dictionary holding all data for train, test, + labels, weights + :param dk: The datakitchen object for the current coin/model + """ + + X = data_dictionary["train_features"].to_numpy() + y = data_dictionary["train_labels"].to_numpy()[:, 0] + + if self.freqai_info.get('data_split_parameters', {}).get('test_size', 0.1) == 0: + eval_set = None + else: + test_features = data_dictionary["test_features"].to_numpy() + test_labels = data_dictionary["test_labels"].to_numpy()[:, 0] + + eval_set = (test_features, test_labels) + + if self.freqai_info.get("continual_learning", False): + logger.warning("Continual learning is not supported for " + "SKLearnRandomForestClassifier, ignoring.") + + train_weights = data_dictionary["train_weights"] + + model = RandomForestClassifier(**self.model_training_parameters) + + model.fit(X=X, y=y, sample_weight=train_weights) + if eval_set: + logger.info("Score: %s", model.score(eval_set[0], eval_set[1])) + + return model + + def predict( + self, unfiltered_df: DataFrame, dk: FreqaiDataKitchen, **kwargs + ) -> Tuple[DataFrame, npt.NDArray[np.int_]]: + """ + Filter the prediction features data and predict with it. + :param unfiltered_df: Full dataframe for the current backtest period. + :return: + :pred_df: dataframe containing the predictions + :do_predict: np.array of 1s and 0s to indicate places where freqai needed to remove + data (NaNs) or felt uncertain about data (PCA and DI index) + """ + + (pred_df, dk.do_predict) = super().predict(unfiltered_df, dk, **kwargs) + + le = LabelEncoder() + label = dk.label_list[0] + labels_before = list(dk.data['labels_std'].keys()) + labels_after = le.fit_transform(labels_before).tolist() + pred_df[label] = le.inverse_transform(pred_df[label]) + pred_df = pred_df.rename( + columns={labels_after[i]: labels_before[i] for i in range(len(labels_before))}) + + return (pred_df, dk.do_predict) diff --git a/tests/freqai/test_freqai_interface.py b/tests/freqai/test_freqai_interface.py index 7638c03ed..9fc722ab1 100644 --- a/tests/freqai/test_freqai_interface.py +++ b/tests/freqai/test_freqai_interface.py @@ -176,6 +176,7 @@ def test_extract_data_and_train_model_MultiTargets(mocker, freqai_conf, model, s 'CatboostClassifier', 'XGBoostClassifier', 'XGBoostRFClassifier', + 'SKLearnRandomForestClassifier', 'PyTorchMLPClassifier', ]) def test_extract_data_and_train_model_Classifiers(mocker, freqai_conf, model): diff --git a/tests/rpc/test_rpc_apiserver.py b/tests/rpc/test_rpc_apiserver.py index e94509b40..17b0399d9 100644 --- a/tests/rpc/test_rpc_apiserver.py +++ b/tests/rpc/test_rpc_apiserver.py @@ -1770,6 +1770,7 @@ def test_api_freqaimodels(botclient, tmp_path, mocker): {'name': 'LightGBMRegressorMultiTarget'}, {'name': 'ReinforcementLearner'}, {'name': 'ReinforcementLearner_multiproc'}, + {'name': 'SKlearnRandomForestClassifier'}, {'name': 'XGBoostClassifier'}, {'name': 'XGBoostRFClassifier'}, {'name': 'XGBoostRFRegressor'}, @@ -1788,6 +1789,7 @@ def test_api_freqaimodels(botclient, tmp_path, mocker): 'LightGBMRegressorMultiTarget', 'ReinforcementLearner', 'ReinforcementLearner_multiproc', + 'SKlearnRandomForestClassifier', 'XGBoostClassifier', 'XGBoostRFClassifier', 'XGBoostRFRegressor', From c9a018cf0ee4220f3a0f71c88899731c54eca91e Mon Sep 17 00:00:00 2001 From: Matthias Date: Tue, 19 Dec 2023 06:30:40 +0100 Subject: [PATCH 85/86] Improve output if a strategy wasn't found in the backtest result --- freqtrade/data/btanalysis.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/freqtrade/data/btanalysis.py b/freqtrade/data/btanalysis.py index 96ab4927e..66caa0dcb 100644 --- a/freqtrade/data/btanalysis.py +++ b/freqtrade/data/btanalysis.py @@ -326,7 +326,10 @@ def load_backtest_data(filename: Union[Path, str], strategy: Optional[str] = Non "Please specify a strategy.") if strategy not in data['strategy']: - raise ValueError(f"Strategy {strategy} not available in the backtest result.") + raise ValueError( + f"Strategy {strategy} not available in the backtest result. " + f"Available strategies are '{','.join(data['strategy'].keys())}'" + ) data = data['strategy'][strategy]['trades'] df = pd.DataFrame(data) From b1393f1bd41bd5dbbe57764d0a46052e4b8fff1a Mon Sep 17 00:00:00 2001 From: slimatic Date: Tue, 19 Dec 2023 10:58:22 -0500 Subject: [PATCH 86/86] (configuration.md) fixed value USDT value in example for clarity --- docs/configuration.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/configuration.md b/docs/configuration.md index 313e3e456..f01881d19 100644 --- a/docs/configuration.md +++ b/docs/configuration.md @@ -321,7 +321,7 @@ For example, if you have 10 ETH available in your wallet on the exchange and `tr To fully utilize compounding profits when using multiple bots on the same exchange account, you'll want to limit each bot to a certain starting balance. This can be accomplished by setting `available_capital` to the desired starting balance. -Assuming your account has 10.000 USDT and you want to run 2 different strategies on this exchange. +Assuming your account has 10000 USDT and you want to run 2 different strategies on this exchange. You'd set `available_capital=5000` - granting each bot an initial capital of 5000 USDT. The bot will then split this starting balance equally into `max_open_trades` buckets. Profitable trades will result in increased stake-sizes for this bot - without affecting the stake-sizes of the other bot.