-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
66 lines (54 loc) · 1.99 KB
/
Copy pathMakefile
File metadata and controls
66 lines (54 loc) · 1.99 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
# memecoin-freqtrade-bot Makefile
# Usage: make <target>
COMPOSE = docker compose
TIMERANGE ?= 20240101-20241231
EPOCHS ?= 200
JOBS ?= -1
.PHONY: help setup download-data backtest hyperopt trade stop logs status plot
help:
@echo "Available targets:"
@echo ""
@echo " setup Pull Docker image"
@echo " download-data Download OHLCV data for all pairs (TIMERANGE=$(TIMERANGE))"
@echo " backtest Run backtesting (TIMERANGE=$(TIMERANGE))"
@echo " hyperopt Run hyperopt (EPOCHS=$(EPOCHS), TIMERANGE=$(TIMERANGE))"
@echo " trade Start live paper-trading bot"
@echo " stop Stop the running bot"
@echo " logs Tail bot logs"
@echo " status Show running containers"
@echo " plot Generate interactive trade plot (last backtest)"
@echo ""
@echo "Examples:"
@echo " make download-data TIMERANGE=20240101-20241231"
@echo " make backtest TIMERANGE=20240601-20241231"
@echo " make hyperopt EPOCHS=300"
setup:
docker pull freqtradeorg/freqtrade:stable
download-data:
$(COMPOSE) run --rm freqtrade download-data \
--config /freqtrade/user_data/config/config.backtest.json \
--config /freqtrade/user_data/config/pairs.json \
--timeframe 5m \
--timerange $(TIMERANGE) \
--exchange binance
backtest:
TIMERANGE=$(TIMERANGE) $(COMPOSE) -f docker-compose.backtesting.yml run --rm freqtrade-backtest
hyperopt:
TIMERANGE=$(TIMERANGE) EPOCHS=$(EPOCHS) JOBS=$(JOBS) \
$(COMPOSE) -f docker-compose.hyperopt.yml run --rm freqtrade-hyperopt
trade:
$(COMPOSE) up -d freqtrade
stop:
$(COMPOSE) down
logs:
$(COMPOSE) logs -f freqtrade
status:
$(COMPOSE) ps
plot:
$(COMPOSE) run --rm freqtrade plot-dataframe \
--config /freqtrade/user_data/config/config.backtest.json \
--config /freqtrade/user_data/config/pairs.json \
--strategy MemecoinStrategy \
--strategy-path /freqtrade/user_data/strategies \
--export-filename /freqtrade/user_data/backtest_results/backtest_results.json \
--timerange $(TIMERANGE)