Skip to content

Commit b863c68

Browse files
authored
Merge pull request freqtrade#11200 from freqtrade/feat/remove_hdf5
Remove hdf5 support
2 parents 3a8aba1 + ecd2d01 commit b863c68

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+1768
-1736
lines changed

.github/workflows/ci.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,11 @@ jobs:
9191
run: |
9292
python build_helpers/extract_config_json_schema.py
9393
94+
- name: Run command docs partials extract
95+
# This should be kept before the repository check to ensure that the docs are up-to-date
96+
run: |
97+
python build_helpers/create_command_partials.py
98+
9499
- name: Check for repository changes
95100
run: |
96101
if [ -n "$(git status --porcelain)" ]; then

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ ENV FT_APP_ENV="docker"
1111
# Prepare environment
1212
RUN mkdir /freqtrade \
1313
&& apt-get update \
14-
&& apt-get -y install sudo libatlas3-base curl sqlite3 libhdf5-serial-dev libgomp1 \
14+
&& apt-get -y install sudo libatlas3-base curl sqlite3 libgomp1 \
1515
&& apt-get clean \
1616
&& useradd -u 1000 -G sudo -U -m -s /bin/bash ftuser \
1717
&& chown ftuser:ftuser /freqtrade \

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -90,13 +90,13 @@ For further (native) installation methods, please refer to the [Installation doc
9090

9191
```
9292
usage: freqtrade [-h] [-V]
93-
{trade,create-userdir,new-config,show-config,new-strategy,download-data,convert-data,convert-trade-data,trades-to-ohlcv,list-data,backtesting,backtesting-show,backtesting-analysis,edge,hyperopt,hyperopt-list,hyperopt-show,list-exchanges,list-markets,list-pairs,list-strategies,list-freqaimodels,list-timeframes,show-trades,test-pairlist,convert-db,install-ui,plot-dataframe,plot-profit,webserver,strategy-updater,lookahead-analysis,recursive-analysis}
93+
{trade,create-userdir,new-config,show-config,new-strategy,download-data,convert-data,convert-trade-data,trades-to-ohlcv,list-data,backtesting,backtesting-show,backtesting-analysis,edge,hyperopt,hyperopt-list,hyperopt-show,list-exchanges,list-markets,list-pairs,list-strategies,list-hyperoptloss,list-freqaimodels,list-timeframes,show-trades,test-pairlist,convert-db,install-ui,plot-dataframe,plot-profit,webserver,strategy-updater,lookahead-analysis,recursive-analysis}
9494
...
9595
9696
Free, open source crypto trading bot
9797
9898
positional arguments:
99-
{trade,create-userdir,new-config,show-config,new-strategy,download-data,convert-data,convert-trade-data,trades-to-ohlcv,list-data,backtesting,backtesting-show,backtesting-analysis,edge,hyperopt,hyperopt-list,hyperopt-show,list-exchanges,list-markets,list-pairs,list-strategies,list-freqaimodels,list-timeframes,show-trades,test-pairlist,convert-db,install-ui,plot-dataframe,plot-profit,webserver,strategy-updater,lookahead-analysis,recursive-analysis}
99+
{trade,create-userdir,new-config,show-config,new-strategy,download-data,convert-data,convert-trade-data,trades-to-ohlcv,list-data,backtesting,backtesting-show,backtesting-analysis,edge,hyperopt,hyperopt-list,hyperopt-show,list-exchanges,list-markets,list-pairs,list-strategies,list-hyperoptloss,list-freqaimodels,list-timeframes,show-trades,test-pairlist,convert-db,install-ui,plot-dataframe,plot-profit,webserver,strategy-updater,lookahead-analysis,recursive-analysis}
100100
trade Trade module.
101101
create-userdir Create user-data directory.
102102
new-config Create new config
@@ -120,6 +120,7 @@ positional arguments:
120120
list-markets Print markets on exchange.
121121
list-pairs Print pairs on exchange.
122122
list-strategies Print available strategies.
123+
list-hyperoptloss Print available hyperopt loss functions.
123124
list-freqaimodels Print available freqAI models.
124125
list-timeframes Print available timeframes for the exchange.
125126
show-trades Show trades.
@@ -136,7 +137,6 @@ positional arguments:
136137
options:
137138
-h, --help show this help message and exit
138139
-V, --version show program's version number and exit
139-
140140
```
141141

142142
### Telegram RPC commands
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
import subprocess
2+
from pathlib import Path
3+
4+
5+
subcommands = [
6+
"trade",
7+
"create-userdir",
8+
"new-config",
9+
"show-config",
10+
"new-strategy",
11+
"download-data",
12+
"convert-data",
13+
"convert-trade-data",
14+
"trades-to-ohlcv",
15+
"list-data",
16+
"backtesting",
17+
"backtesting-show",
18+
"backtesting-analysis",
19+
"edge",
20+
"hyperopt",
21+
"hyperopt-list",
22+
"hyperopt-show",
23+
"list-exchanges",
24+
"list-markets",
25+
"list-pairs",
26+
"list-strategies",
27+
"list-hyperoptloss",
28+
"list-freqaimodels",
29+
"list-timeframes",
30+
"show-trades",
31+
"test-pairlist",
32+
"convert-db",
33+
"install-ui",
34+
"plot-dataframe",
35+
"plot-profit",
36+
"webserver",
37+
"strategy-updater",
38+
"lookahead-analysis",
39+
"recursive-analysis",
40+
]
41+
42+
result = subprocess.run(["freqtrade", "--help"], capture_output=True, text=True)
43+
44+
with Path("docs/commands/main.md").open("w") as f:
45+
f.write(f"```\n{result.stdout}\n```\n")
46+
47+
48+
for command in subcommands:
49+
print(f"Running for {command}")
50+
result = subprocess.run(["freqtrade", command, "--help"], capture_output=True, text=True)
51+
52+
with Path(f"docs/commands/{command}.md").open("w") as f:
53+
f.write(f"```\n{result.stdout}\n```\n")

build_helpers/schema.json

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1055,7 +1055,6 @@
10551055
"enum": [
10561056
"json",
10571057
"jsongz",
1058-
"hdf5",
10591058
"feather",
10601059
"parquet"
10611060
],
@@ -1067,7 +1066,6 @@
10671066
"enum": [
10681067
"json",
10691068
"jsongz",
1070-
"hdf5",
10711069
"feather",
10721070
"parquet"
10731071
],

docker/Dockerfile.armhf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ ENV FT_APP_ENV="docker"
1111
# Prepare environment
1212
RUN mkdir /freqtrade \
1313
&& apt-get update \
14-
&& apt-get -y install sudo libatlas3-base libopenblas-dev curl sqlite3 libhdf5-dev libutf8proc-dev libsnappy-dev \
14+
&& apt-get -y install sudo libatlas3-base libopenblas-dev curl sqlite3 libutf8proc-dev libsnappy-dev \
1515
&& apt-get clean \
1616
&& useradd -u 1000 -G sudo -U -m ftuser \
1717
&& chown ftuser:ftuser /freqtrade \

docs/backtesting.md

Lines changed: 1 addition & 105 deletions
Original file line numberDiff line numberDiff line change
@@ -7,111 +7,7 @@ To learn how to get data for the pairs and exchange you're interested in, head o
77

88
## Backtesting command reference
99

10-
```
11-
usage: freqtrade backtesting [-h] [-v] [--logfile FILE] [-V] [-c PATH]
12-
[-d PATH] [--userdir PATH] [-s NAME]
13-
[--strategy-path PATH]
14-
[--recursive-strategy-search]
15-
[--freqaimodel NAME] [--freqaimodel-path PATH]
16-
[-i TIMEFRAME] [--timerange TIMERANGE]
17-
[--data-format-ohlcv {json,jsongz,hdf5,feather,parquet}]
18-
[--max-open-trades INT]
19-
[--stake-amount STAKE_AMOUNT] [--fee FLOAT]
20-
[-p PAIRS [PAIRS ...]] [--eps]
21-
[--enable-protections]
22-
[--dry-run-wallet DRY_RUN_WALLET]
23-
[--timeframe-detail TIMEFRAME_DETAIL]
24-
[--strategy-list STRATEGY_LIST [STRATEGY_LIST ...]]
25-
[--export {none,trades,signals}]
26-
[--export-filename PATH]
27-
[--breakdown {day,week,month} [{day,week,month} ...]]
28-
[--cache {none,day,week,month}]
29-
[--freqai-backtest-live-models]
30-
31-
options:
32-
-h, --help show this help message and exit
33-
-i TIMEFRAME, --timeframe TIMEFRAME
34-
Specify timeframe (`1m`, `5m`, `30m`, `1h`, `1d`).
35-
--timerange TIMERANGE
36-
Specify what timerange of data to use.
37-
--data-format-ohlcv {json,jsongz,hdf5,feather,parquet}
38-
Storage format for downloaded candle (OHLCV) data.
39-
(default: `feather`).
40-
--max-open-trades INT
41-
Override the value of the `max_open_trades`
42-
configuration setting.
43-
--stake-amount STAKE_AMOUNT
44-
Override the value of the `stake_amount` configuration
45-
setting.
46-
--fee FLOAT Specify fee ratio. Will be applied twice (on trade
47-
entry and exit).
48-
-p PAIRS [PAIRS ...], --pairs PAIRS [PAIRS ...]
49-
Limit command to these pairs. Pairs are space-
50-
separated.
51-
--eps, --enable-position-stacking
52-
Allow buying the same pair multiple times (position
53-
stacking).
54-
--enable-protections, --enableprotections
55-
Enable protections for backtesting.Will slow
56-
backtesting down by a considerable amount, but will
57-
include configured protections
58-
--dry-run-wallet DRY_RUN_WALLET, --starting-balance DRY_RUN_WALLET
59-
Starting balance, used for backtesting / hyperopt and
60-
dry-runs.
61-
--timeframe-detail TIMEFRAME_DETAIL
62-
Specify detail timeframe for backtesting (`1m`, `5m`,
63-
`30m`, `1h`, `1d`).
64-
--strategy-list STRATEGY_LIST [STRATEGY_LIST ...]
65-
Provide a space-separated list of strategies to
66-
backtest. Please note that timeframe needs to be set
67-
either in config or via command line. When using this
68-
together with `--export trades`, the strategy-name is
69-
injected into the filename (so `backtest-data.json`
70-
becomes `backtest-data-SampleStrategy.json`
71-
--export {none,trades,signals}
72-
Export backtest results (default: trades).
73-
--export-filename PATH, --backtest-filename PATH
74-
Use this filename for backtest results.Requires
75-
`--export` to be set as well. Example: `--export-filen
76-
ame=user_data/backtest_results/backtest_today.json`
77-
--breakdown {day,week,month} [{day,week,month} ...]
78-
Show backtesting breakdown per [day, week, month].
79-
--cache {none,day,week,month}
80-
Load a cached backtest result no older than specified
81-
age (default: day).
82-
--freqai-backtest-live-models
83-
Run backtest with ready models.
84-
85-
Common arguments:
86-
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
87-
--logfile FILE, --log-file FILE
88-
Log to the file specified. Special values are:
89-
'syslog', 'journald'. See the documentation for more
90-
details.
91-
-V, --version show program's version number and exit
92-
-c PATH, --config PATH
93-
Specify configuration file (default:
94-
`userdir/config.json` or `config.json` whichever
95-
exists). Multiple --config options may be used. Can be
96-
set to `-` to read config from stdin.
97-
-d PATH, --datadir PATH, --data-dir PATH
98-
Path to directory with historical backtesting data.
99-
--userdir PATH, --user-data-dir PATH
100-
Path to userdata directory.
101-
102-
Strategy arguments:
103-
-s NAME, --strategy NAME
104-
Specify strategy class name which will be used by the
105-
bot.
106-
--strategy-path PATH Specify additional strategy lookup path.
107-
--recursive-strategy-search
108-
Recursively search for a strategy in the strategies
109-
folder.
110-
--freqaimodel NAME Specify a custom freqaimodels.
111-
--freqaimodel-path PATH
112-
Specify additional lookup path for freqaimodels.
113-
114-
```
10+
--8<-- "commands/backtesting.md"
11511

11612
## Test your strategy with Backtesting
11713

docs/bot-usage.md

Lines changed: 2 additions & 92 deletions
Original file line numberDiff line numberDiff line change
@@ -10,101 +10,11 @@ This page explains the different parameters of the bot and how to run it.
1010

1111
## Bot commands
1212

13-
```
14-
usage: freqtrade [-h] [-V]
15-
{trade,create-userdir,new-config,show-config,new-strategy,download-data,convert-data,convert-trade-data,trades-to-ohlcv,list-data,backtesting,backtesting-show,backtesting-analysis,edge,hyperopt,hyperopt-list,hyperopt-show,list-exchanges,list-markets,list-pairs,list-strategies,list-freqaimodels,list-timeframes,show-trades,test-pairlist,convert-db,install-ui,plot-dataframe,plot-profit,webserver,strategy-updater,lookahead-analysis,recursive-analysis}
16-
...
17-
18-
Free, open source crypto trading bot
19-
20-
positional arguments:
21-
{trade,create-userdir,new-config,show-config,new-strategy,download-data,convert-data,convert-trade-data,trades-to-ohlcv,list-data,backtesting,backtesting-show,backtesting-analysis,edge,hyperopt,hyperopt-list,hyperopt-show,list-exchanges,list-markets,list-pairs,list-strategies,list-freqaimodels,list-timeframes,show-trades,test-pairlist,convert-db,install-ui,plot-dataframe,plot-profit,webserver,strategy-updater,lookahead-analysis,recursive-analysis}
22-
trade Trade module.
23-
create-userdir Create user-data directory.
24-
new-config Create new config
25-
show-config Show resolved config
26-
new-strategy Create new strategy
27-
download-data Download backtesting data.
28-
convert-data Convert candle (OHLCV) data from one format to
29-
another.
30-
convert-trade-data Convert trade data from one format to another.
31-
trades-to-ohlcv Convert trade data to OHLCV data.
32-
list-data List downloaded data.
33-
backtesting Backtesting module.
34-
backtesting-show Show past Backtest results
35-
backtesting-analysis
36-
Backtest Analysis module.
37-
edge Edge module.
38-
hyperopt Hyperopt module.
39-
hyperopt-list List Hyperopt results
40-
hyperopt-show Show details of Hyperopt results
41-
list-exchanges Print available exchanges.
42-
list-markets Print markets on exchange.
43-
list-pairs Print pairs on exchange.
44-
list-strategies Print available strategies.
45-
list-freqaimodels Print available freqAI models.
46-
list-timeframes Print available timeframes for the exchange.
47-
show-trades Show trades.
48-
test-pairlist Test your pairlist configuration.
49-
convert-db Migrate database to different system
50-
install-ui Install FreqUI
51-
plot-dataframe Plot candles with indicators.
52-
plot-profit Generate plot showing profits.
53-
webserver Webserver module.
54-
strategy-updater updates outdated strategy files to the current version
55-
lookahead-analysis Check for potential look ahead bias.
56-
recursive-analysis Check for potential recursive formula issue.
57-
58-
options:
59-
-h, --help show this help message and exit
60-
-V, --version show program's version number and exit
61-
62-
```
13+
--8<-- "commands/main.md"
6314

6415
### Bot trading commands
6516

66-
```
67-
usage: freqtrade trade [-h] [-v] [--logfile FILE] [-V] [-c PATH] [-d PATH]
68-
[--userdir PATH] [-s NAME] [--strategy-path PATH]
69-
[--db-url PATH] [--sd-notify] [--dry-run]
70-
[--dry-run-wallet DRY_RUN_WALLET]
71-
72-
optional arguments:
73-
-h, --help show this help message and exit
74-
--db-url PATH Override trades database URL, this is useful in custom
75-
deployments (default: `sqlite:///tradesv3.sqlite` for
76-
Live Run mode, `sqlite:///tradesv3.dryrun.sqlite` for
77-
Dry Run).
78-
--sd-notify Notify systemd service manager.
79-
--dry-run Enforce dry-run for trading (removes Exchange secrets
80-
and simulates trades).
81-
--dry-run-wallet DRY_RUN_WALLET, --starting-balance DRY_RUN_WALLET
82-
Starting balance, used for backtesting / hyperopt and
83-
dry-runs.
84-
85-
Common arguments:
86-
-v, --verbose Verbose mode (-vv for more, -vvv to get all messages).
87-
--logfile FILE Log to the file specified. Special values are:
88-
'syslog', 'journald'. See the documentation for more
89-
details.
90-
-V, --version show program's version number and exit
91-
-c PATH, --config PATH
92-
Specify configuration file (default:
93-
`userdir/config.json` or `config.json` whichever
94-
exists). Multiple --config options may be used. Can be
95-
set to `-` to read config from stdin.
96-
-d PATH, --datadir PATH
97-
Path to directory with historical backtesting data.
98-
--userdir PATH, --user-data-dir PATH
99-
Path to userdata directory.
100-
101-
Strategy arguments:
102-
-s NAME, --strategy NAME
103-
Specify strategy class name which will be used by the
104-
bot.
105-
--strategy-path PATH Specify additional strategy lookup path.
106-
107-
```
17+
--8<-- "commands/trade.md"
10818

10919
### How to specify which configuration file be used?
11020

0 commit comments

Comments
 (0)