Freqtrade 接入 Binance 的试跑,正确顺序是先回测、再模拟盘(dry-run),最后才考虑实盘。回测和模拟盘都不需要真实的 Binance API 密钥,回测用历史数据,模拟盘用实时行情但不动用真金白银。
回测:先让策略在历史数据上跑一遍
回测的目的是验证策略逻辑在已知行情下的表现,不涉及任何交易所连接。Freqtrade 默认从 user_data/data/ 加载历史 K 线数据。
第一步是下载数据。 如果本地还没有 Binance 的历史数据,Freqtrade 会提示你先用 freqtrade download-data 命令下载。指定交易对和时间周期即可,比如下载 BTC/USDT 的 5 分钟 K 线。
第二步运行回测。 基础命令是 freqtrade backtesting --strategy <策略类名>,策略文件放在 user_data/strategies/ 目录下。回测默认使用 5 分钟 K 线,可以用 --timeframe 参数覆盖。
回测结果会输出一张交易统计表,包含总交易数、平均持仓时长、总收益百分比和绝对收益。回测的利润计算已经包含了手续费,Freqtrade 会使用交易所的默认费率。如果你需要指定起始资金,用 --dry-run-wallet 1000 或 --starting-balance 1000,金额必须大于配置中的 stake_amount,否则无法模拟交易。
一个容易忽略的点:回测结束时会强制平掉所有未平仓的交易,这些"强制卖出"会单独列在结果里。这模拟了现实中回测周期必须结束的情况,不是策略的真实表现。
模拟盘:用实时行情验证执行逻辑
模拟盘(dry-run)是 Freqtrade 的正式功能,在真实行情下运行策略,但所有交易都在本地模拟,不会提交到 Binance。
配置里需要改三处。 第一,把 "dry_run" 设为 true;第二,指定一个独立的数据库文件,比如 "db_url": "sqlite:///tradesv3.dryrun.sqlite",这样模拟盘的交易记录和将来的实盘数据分开;第三,API 密钥可以留空,因为模拟盘不需要连接交易所账户。
但有一个例外:如果你希望模拟盘用实时行情。 Freqtrade 的模拟盘默认需要下载公开的行情数据来运行,这不要求 API 密钥。只有当你配置了 "sandbox": true 或者需要访问某些需要认证的端点时,才需要对应的密钥。对于普通的 Binance 现货模拟,留空密钥通常可以正常运行。
启动命令是 freqtrade trade --config config.json,Freqtrade 会输出日志显示模拟盘状态。运行后,你可以用 freqtrade trade --config config.json --db-url sqlite:///tradesv3.dryrun.sqlite 来指定数据库位置。
Binance 特有的两个坑
BNB 黑名单问题。 Binance 账户如果用 BNB 抵扣手续费,Freqtrade 官方建议把 BNB/ 加入黑名单。原因是:如果第一笔交易恰好是 BNB 交易对,后续交易会消耗 BNB 余额,导致最初那笔 BNB 订单因为余额不足而无法卖出。
交易所 ID 必须选对。 Binance 已经分成多个实体:国际站用 binance,美国用户必须用 binanceus,否则 API 密钥不会被识别。如果你后续要跑实盘,这一点直接决定连接是否成功。
模拟盘跑多久算"够"
没有固定天数。模拟盘的核心目的是验证策略在实时环境下能否正常执行:信号是否按预期触发、订单模拟是否合理、Telegram 通知是否收到。 如果你只是测试框架和配置,运行几小时到一天就能看出基本行为。如果你想评估策略在真实行情下的表现,至少需要覆盖一个完整的市场波动周期,但这需要时间,不能靠加速。
模拟盘的结果和回测可能有明显差异,因为回测的成交假设是理想化的,而模拟盘会受实时行情延迟和配置影响。
参考资料
- GitHub·hrodrig/freqhub env.example,页面发布或更新日期:2026-01-16;核查日期:2026-10-08。
- Freqtrade·Configure the bot,页面发布或更新日期:2019-07-01;核查日期:2026-10-08。
- Freqtrade·Backtesting,页面发布或更新日期:2025-06-01;核查日期:2026-10-08。
- Freqtrade·Backtesting,页面发布或更新日期:2021-07-01;核查日期:2026-10-08。
- Freqtrade·Sandbox API testing,页面发布或更新日期:2020-02-01;核查日期:2026-10-08。
- Freqtrade·Start the bot,页面发布或更新日期:2019-11-01;核查日期:2026-10-08。
- Freqtrade·Exchange-specific Notes,页面发布或更新日期:2019-11-01;核查日期:2026-10-08。



