Skip to content

Commit c741c16

Browse files
committed
Merge remote-tracking branch 'origin/develop' into develop
2 parents c997f02 + ead6d89 commit c741c16

File tree

15 files changed

+77
-13
lines changed

15 files changed

+77
-13
lines changed

.github/workflows/ci.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,9 +65,12 @@ jobs:
6565
export LD_LIBRARY_PATH=${HOME}/dependencies/lib:$LD_LIBRARY_PATH
6666
export TA_LIBRARY_PATH=${HOME}/dependencies/lib
6767
export TA_INCLUDE_PATH=${HOME}/dependencies/include
68+
echo "numpy<2.3.0" > constraints.txt
69+
export UV_BUILD_CONSTRAINT=constraints.txt
6870
uv pip install -r requirements-dev.txt
6971
uv pip install -e ft_client/
7072
uv pip install -e .
73+
rm constraints.txt
7174
7275
- name: Check for version alignment
7376
run: |
@@ -228,9 +231,12 @@ jobs:
228231
export LD_LIBRARY_PATH=${HOME}/dependencies/lib:$LD_LIBRARY_PATH
229232
export TA_LIBRARY_PATH=${HOME}/dependencies/lib
230233
export TA_INCLUDE_PATH=${HOME}/dependencies/include
234+
echo "numpy<2.3.0" > constraints.txt
235+
export UV_BUILD_CONSTRAINT=constraints.txt
231236
uv pip install -r requirements-dev.txt
232237
uv pip install -e ft_client/
233238
uv pip install -e .
239+
rm constraints.txt
234240
235241
- name: Tests
236242
run: |
@@ -480,9 +486,13 @@ jobs:
480486
export LD_LIBRARY_PATH=${HOME}/dependencies/lib:$LD_LIBRARY_PATH
481487
export TA_LIBRARY_PATH=${HOME}/dependencies/lib
482488
export TA_INCLUDE_PATH=${HOME}/dependencies/include
489+
echo "numpy<2.3.0" > constraints.txt
490+
export UV_BUILD_CONSTRAINT=constraints.txt
483491
uv pip install -r requirements-dev.txt
484492
uv pip install -e ft_client/
485493
uv pip install -e .
494+
rm constraints.txt
495+
486496
487497
- name: Tests incl. ccxt compatibility tests
488498
env:

Dockerfile

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,9 @@ ENV LD_LIBRARY_PATH /usr/local/lib
3535
# Install dependencies
3636
COPY --chown=ftuser:ftuser requirements.txt requirements-hyperopt.txt /freqtrade/
3737
USER ftuser
38-
RUN pip install --user --no-cache-dir "numpy<3.0" \
38+
RUN pip install --user --no-cache-dir "numpy<2.3.0" \
39+
&& echo "numpy<2.3.0" > /tmp/constraints.txt \
40+
&& export PIP_CONSTRAINT=/tmp/constraints.txt \
3941
&& pip install --user --no-cache-dir -r requirements-hyperopt.txt
4042

4143
# Copy dependencies to runtime-image

build_helpers/install_windows.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
python -m pip install --upgrade pip
44
python -c "import sys; print(f'{sys.version_info.major}.{sys.version_info.minor}')"
55

6-
pip install -U wheel "numpy<3"
6+
pip install -U wheel "numpy<2.3"
77
pip install --only-binary ta-lib --find-links=build_helpers\ ta-lib
88

99
pip install -r requirements-dev.txt

build_helpers/schema.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1247,7 +1247,11 @@
12471247
"type": "object"
12481248
},
12491249
"ccxt_async_config": {
1250-
"description": "CCXT asynchronous configuration settings.",
1250+
"description": "CCXT asynchronous configuration settings.Usually ccxt_config should be used instead.",
1251+
"type": "object"
1252+
},
1253+
"ccxt_sync_config": {
1254+
"description": "CCXT synchronous configuration settings. Usually ccxt_config should be used instead.",
12511255
"type": "object"
12521256
}
12531257
},

docker/Dockerfile.armhf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ COPY build_helpers/* /tmp/
3434
# Install dependencies
3535
COPY --chown=ftuser:ftuser requirements.txt /freqtrade/
3636
USER ftuser
37-
RUN pip install --user --no-cache-dir "numpy<3" \
37+
RUN pip install --user --no-cache-dir "numpy<2.3.0" \
3838
&& pip install --user --no-index --find-links /tmp/ pyarrow TA-Lib \
3939
&& pip install --user --no-cache-dir -r requirements.txt
4040

docs/backtesting.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ This page explains how to validate your strategy performance by using Backtestin
55
Backtesting requires historic data to be available.
66
To learn how to get data for the pairs and exchange you're interested in, head over to the [Data Downloading](data-download.md) section of the documentation.
77

8+
Backtesting is also available in [webserver mode](freq-ui.md#backtesting), which allows you to run backtests via the web interface.
9+
810
## Backtesting command reference
911

1012
--8<-- "commands/backtesting.md"
@@ -435,6 +437,10 @@ To save time, by default backtest will reuse a cached result from within the las
435437
To further analyze your backtest results, freqtrade will export the trades to file by default.
436438
You can then load the trades to perform further analysis as shown in the [data analysis](strategy_analysis_example.md#load-backtest-results-to-pandas-dataframe) backtesting section.
437439

440+
Also, you can use freqtrade in [webserver mode](freq-ui.md#backtesting) to visualize the backtest results in a web interface.
441+
This mode also allows you to load existing backtest results, so you can analyze them without running the backtest again.
442+
For this mode - `--notes "<notes>"` can be used to add notes to the backtest results, which will be shown in the web interface.
443+
438444
### Backtest output file
439445

440446
The output file freqtrade produces is a zip file containing the following files:

docs/commands/backtesting.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ usage: freqtrade backtesting [-h] [-v] [--no-color] [--logfile FILE] [-V]
1717
[--export-filename PATH]
1818
[--breakdown {day,week,month,year} [{day,week,month,year} ...]]
1919
[--cache {none,day,week,month}]
20-
[--freqai-backtest-live-models]
20+
[--freqai-backtest-live-models] [--notes TEXT]
2121
2222
options:
2323
-h, --help show this help message and exit
@@ -73,6 +73,7 @@ options:
7373
age (default: day).
7474
--freqai-backtest-live-models
7575
Run backtest with ready models.
76+
--notes TEXT Add notes to the backtest results.
7677
7778
Common arguments:
7879
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).

freqtrade/commands/arguments.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@
5757
"backtest_breakdown",
5858
"backtest_cache",
5959
"freqai_backtest_live_models",
60+
"backtest_notes",
6061
]
6162

6263
ARGS_HYPEROPT = [
@@ -250,7 +251,7 @@
250251
ARGS_LOOKAHEAD_ANALYSIS = [
251252
a
252253
for a in ARGS_BACKTEST
253-
if a not in ("position_stacking", "backtest_cache", "backtest_breakdown")
254+
if a not in ("position_stacking", "backtest_cache", "backtest_breakdown", "backtest_notes")
254255
] + ["minimum_trade_amount", "targeted_trade_amount", "lookahead_analysis_exportfilename"]
255256

256257
ARGS_RECURSIVE_ANALYSIS = ["timeframe", "timerange", "dataformat_ohlcv", "pairs", "startup_candle"]

freqtrade/commands/cli_options.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -204,6 +204,11 @@ def __init__(self, *args, **kwargs):
204204
help="Export backtest results (default: trades).",
205205
choices=constants.EXPORT_OPTIONS,
206206
),
207+
"backtest_notes": Arg(
208+
"--notes",
209+
help="Add notes to the backtest results.",
210+
metavar="TEXT",
211+
),
207212
"exportfilename": Arg(
208213
"--export-filename",
209214
"--backtest-filename",

freqtrade/config_schema/config_schema.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -913,7 +913,17 @@
913913
},
914914
"ccxt_config": {"description": "CCXT configuration settings.", "type": "object"},
915915
"ccxt_async_config": {
916-
"description": "CCXT asynchronous configuration settings.",
916+
"description": (
917+
"CCXT asynchronous configuration settings."
918+
"Usually ccxt_config should be used instead."
919+
),
920+
"type": "object",
921+
},
922+
"ccxt_sync_config": {
923+
"description": (
924+
"CCXT synchronous configuration settings. "
925+
"Usually ccxt_config should be used instead."
926+
),
917927
"type": "object",
918928
},
919929
},

0 commit comments

Comments
 (0)