This Helm chart deploys Freqtrade in Kubernetes for testing workflows: downloading historical data, running backtests, and running hyperopt. It also includes an optional web UI for inspecting results and the API.
- A StatefulSet with two containers:
testing: runs download-data, backtesting, and/or hyperopt, then stays idleui: runs the Freqtrade webserver (optional)
- Secrets for
config.jsonand API credentials - ConfigMap for strategy files
- Services (headless + UI)
- Optional Ingress for the UI
- Optional PVC for persistent
user_data
- Testing features are disabled by default. Enable them under
testing.*. - The UI is disabled by default. Enable it via
testing.ui.enabled. - When any of
testing.download_data.enabled,testing.backtesting.enabled, ortesting.hyperopt.enabledis true, thetestingcontainer becomes the default container forkubectl execandkubectl logs.
Render:
helm template freqtrade-testing . -n freqtrade-testingInstall:
helm install freqtrade-testing . -n freqtrade-testing --create-namespaceExample: download data and run backtests.
helm upgrade --install freqtrade-testing . \
-n freqtrade-testing \
--create-namespace \
--set testing.enabled=true \
--set testing.download_data.enabled=true \
--set testing.backtesting.enabled=truehelm upgrade --install freqtrade-testing . \
-n freqtrade-testing \
--create-namespace \
--set testing.enabled=true \
--set testing.ui.enabled=truePort-forward:
kubectl -n freqtrade-testing port-forward svc/freqtrade-testing-freqtrade-testing-ui 8080:8080Key values:
config.*Freqtrade configurationtesting.*download/backtest/hyperopt controlstesting.ui.*UI and ingress settingsimage.*container image and tagpersistance.*PVC settings
- The API password is generated if
config.api_server.passwordis empty. - Strategy selection is controlled by
strategyandstrategies.