You have to supply the trading strategy
Leave SampleStrategy in your Freqtrade configuration and you'll be running a demonstration strategy. The Docker guide says so explicitly. Freqtrade handles the machinery around a Python strategy: fetching market data, placing orders, recording trades in SQLite and exposing controls through a web interface or Telegram. That division of work is useful if you can write the trading rules yourself. It gives a Python developer a route from historical simulation to observing the same idea against a live market. Docker quick start.
The 777 files and roughly 147,564 source lines in our checkout reflect how much machinery you're adopting. The README lists backtesting, parameter optimization and FreqAI's adaptive prediction models, alongside exchange support. You can select or exclude trading pairs and inspect trade performance without building that plumbing. I'd choose Freqtrade for a strategy I intend to maintain in Python. Someone hoping the included example supplies a reliable income has misunderstood what the project provides. Project README.
What happened when we ran it
Our sandbox installed Freqtrade commit a9a9176 in 94 seconds, adding 270 packages and occupying 6,824 MB. The build succeeded in 1 second. We ran it on October 9, 2026, with 3 CPUs and 8 GB of RAM, using the Python 3.12 Bookworm uv image in an unprivileged container without secrets. Installation and build both worked on that path. Those results establish a working developer setup, without measuring order execution or a strategy's returns.
The test step failed with exit 1 after 377 seconds. Pytest reported 4,691 passed, 1 failed and 20 skipped, with 363 deselected. The failed case was tests/test_pip_audit.py::test_pip_audit_no_vulnerabilities. Its exception shows the Python subprocess running pip-audit returned an error. Separately, the lab's pip-audit result recorded 1 known vulnerability. This is a failed dependency audit check within an otherwise largely passing test run.
The log tail doesn't identify the affected package, advisory or severity. It also contains LightGBM warnings that eval_set is deprecated in favor of eval_X and eval_y; those warnings are separate from the named failure. Pytest's own summary records 354.48 seconds, while the lab timed the test step at 377 seconds. Keep those measurements separate. The evidence supports neither a diagnosis of a trading defect nor a claim that the dependency environment passed its audit.
The installed environment used 6,824 MB
A 64 MB checkout became a 6,824 MB installed environment in the sandbox. Budget space for that measured setup before adding historical market data. The footprint belongs to our installed environment; it isn't a measurement of the official Docker image or the minimum trading runtime. Our scan also found 10 CI workflow files, a Dockerfile, a compose file and a tests directory. The project has visible delivery infrastructure, but its presence doesn't cancel the failed audit.
Docker is the route I'd try first for running a bot. The guide walks through creating user_data, generating configuration and copying your own strategy into the strategy directory. You still have to review pricing and pair selection. Dry-run usually needs no exchange credentials; live orders require exchange API keys and sometimes an additional password. Telegram is optional. These configuration decisions remain after the successful 1-second build. Configuration guide.
Backtesting assumes fills without slippage
Freqtrade's backtester assumes an order fills at its requested price when that price falls inside the candle's range. That excludes slippage, the difference between the expected execution price and the actual one. The documentation also spells out its ordering assumptions when exits and stops compete inside a candle. That's helpful honesty. It makes a historical report useful for examining strategy rules, while leaving a separate job of checking behavior against live market data. Backtesting assumptions.
The 4,691 passing tests in our run don't establish whether your strategy uses information it couldn't have known when placing an order. Freqtrade provides lookahead-analysis to examine that mistake: the backtest initially has the full historical dataframe, so careless calculations can read future candles. The command checks the signals it actually triggers, leaving untriggered signals unverified. Run it on your strategy before treating an attractive report as evidence of an advantage. Lookahead analysis.
Hyperliquid has an open partial-exit accounting report
Issue #13671, opened October 13, reports that a Hyperliquid futures stop can be booked at the original order size after a partial exit reduced the position. The reporter says the wallet balance is correct while the recorded close amount and profit are overstated. This is a user report, separate from our sandbox result. If your workflow uses those stops and partial exits, reconcile Freqtrade's records against exchange fills before depending on its profit display. Hyperliquid accounting report.
Release 2026.9, published September 29, includes fixes for funding-fee reprocessing and cross-margin wallets, plus configuration redaction and FreqAI path handling. Those are consequential maintenance items for software connected to an exchange account. They don't identify or resolve the 1 known vulnerability in our October 9 environment. Review the relevant changes when choosing a release, and get the missing advisory details before deciding whether that audit finding blocks your deployment. Release notes.
October activity supports adopting a maintained codebase
The repository's last push was October 14, 2026. GitHub returned 55,388 stars and 29 open issues and PRs together, while recent merged work addressed cancelled websocket tasks and futures-volume handling. The push date and recent fixes show current maintenance. Repository activity. For market-making or cross-exchange arbitrage, I'd compare Hummingbot. For a research script centered on historical data and broker simulation, I'd compare Backtrader. Before giving this installed Freqtrade environment exchange credentials, get the missing advisory details and reconcile the fills your strategy depends on.

