2352 字
12 分钟

Freqtrade环境搭建

安装 Freqtrade#

Terminal window
# Download `develop` branch of freqtrade repository
git clone https://github.com/freqtrade/freqtrade.git
# Enter downloaded directory
cd freqtrade
# create virtualenv in directory /freqtrade/.venv
python3 -m venv .venv
# run virtualenv
source .venv/bin/activate
python3 -m pip install --upgrade pip
python3 -m pip install -r requirements.txt
# install freqtrade
python3 -m pip install -e .

验证 Freqtrade 安装#

Terminal window
# 1. 检查版本
freqtrade --version
# 输出:freqtrade 2025.9
# 2. 查看帮助信息
freqtrade --help
# 输出:显示所有可用命令

初始化 Freqtrade 项目#

Terminal window
# 1. 创建项目目录
mkdir ~/freqtrade-bot
cd ~/freqtrade-bot
# 2. 创建必要的子目录
freqtrade create-userdir --userdir user_data
# 3. 查看目录结构
tree user_data -L 2
# 输出:
# user_data/
# ├── backtest_results/
# ├── data/
# ├── freqaimodels/
# ├── hyperopt_results/
# ├── hyperopts/
# ├── logs/
# ├── notebooks/
# ├── plot/
# └── strategies/

目录说明:#

目录用途
strategies/存放交易策略文件
data/存放下载的历史数据
backtest_results/存放回测结果
logs/存放日志文件
hyperopts/存放参数优化配置
plot/存放生成的图表

创建配置文件#

注意:要在freqtrade-bot文件夹下进行创建配置文件

Terminal window
# 1. 生成示例配置文件
freqtrade new-config --config config.json
# 系统会询问一系列问题,建议设置如下:

交互式配置(推荐设置)#

Terminal window
? Do you want to use Dry-run (simulated trades)?
选择: Yes 模拟交易模式
? Please insert your stake currency:
输入: USDT 使用 USDT 作为计价货币
? Please insert your stake amount (Number or 'unlimited'):
输入: 100 每笔交易 100 USDT
? Please insert max_open_trades (Integer or 'unlimited'):
输入: 3 最多同时持仓 3
? Time Have your strategy define timeframe
输入: 5m 使用 5 分钟时间框架
? Please insert your display currency:
输入: USD 显示美元
? Select exchange
选择: binance 选择币安交易所
? Do you want to trade Futures?
选择: No 暂时不做合约
? Do you want to enable Telegram?
选择: No 暂时不配置 Telegram
? Do you want to enable the REST API?
选择: No 暂时不启用 API
? Do you want to enable the Plot dataframe
选择: Yes 启用图表功能

生成的json:#

{
"$schema": "https://schema.freqtrade.io/schema.json ",
"max_open_trades": 3, // 最大同时持仓数量
"stake_currency": "USDT", // 交易计价货币
"stake_amount": 100, // 每笔交易投入金额
"tradable_balance_ratio": 0.99, // 可用于交易的资金比例(99%)
"fiat_display_currency": "USD", // 法币显示货币
"dry_run": true, // 模拟交易模式(实盘设为false)
"dry_run_wallet": 1000, // 模拟账户初始资金(USDT)
"cancel_open_orders_on_exit": false, // 程序退出时是否取消未完成订单
"trading_mode": "futures", // 交易模式: 期货合约
"margin_mode": "isolated", // 保证金模式: 逐仓
"unfilledtimeout": { // 订单超时设置
"entry": 10, // 入场订单超时时间
"exit": 10, // 出场订单超时时间
"exit_timeout_count": 0, // 出场超时次数限制
"unit": "minutes" // 超时时间单位
},
"entry_pricing": { // 入场价格设置
"price_side": "same", // 价格方向: 同向
"use_order_book": true, // 使用订单簿定价
"order_book_top": 1, // 使用订单簿第1档价格
"price_last_balance": 0.0, // 最新价格平衡系数
"check_depth_of_market": { // 市场深度检查
"enabled": false, // 是否启用
"bids_to_ask_delta": 1 // 买卖盘价差阈值
}
},
"exit_pricing": { // 出场价格设置
"price_side": "same", // 价格方向: 同向
"use_order_book": true, // 使用订单簿定价
"order_book_top": 1 // 使用订单簿第1档价格
},
"exchange": { // 交易所配置
"name": "binance", // 交易所名称: 币安
"key": "", // API密钥
"secret": "", // API密钥
"ccxt_config": {}, // CCXT同步配置
"ccxt_async_config": {}, // CCXT异步配置
"pair_whitelist": [ // 交易对白名单
"BTC/USDT",
"ETH/USDT",
"SOL/USDT",
"XRP/USDT"
],
"pair_blacklist": [ // 交易对黑名单
"BNB/.*" // 排除所有BNB相关交易对
]
},
"pairlists": [ // 交易对列表配置
{
"method": "StaticPairList", // 只使用静态白名单的 pair_whitelist
"number_assets": 20, // 选取前20个交易对
"sort_key": "quoteVolume", // 排序依据: 计价货币交易量
"min_value": 0, // 最小交易量阈值
"refresh_period": 1800 // 刷新周期(秒)
}
],
"telegram": { // Telegram通知配置
"enabled": false, // 是否启用
"token": "", // Bot Token
"chat_id": "" // 聊天ID
},
"api_server": { // API服务器配置
"enabled": false, // 是否启用
"listen_ip_address": "127.0.0.1", // 监听IP
"listen_port": 8080, // 监听端口
"verbosity": "error", // 日志详细程度
"enable_openapi": false, // 是否启用OpenAPI
"jwt_secret_key": "50396f9d15b36a130ea5aa1c7b3f82e890407817eb8fdf43b2a41b8625df3d64", // JWT密钥
"ws_token": "bTg6lfzaXkIcPBFlF4I8HGaFPW8UjCQOYQ", // WebSocket令牌
"CORS_origins": [], // 跨域来源
"username": "", // 用户名
"password": "" // 密码
},
"bot_name": "freqtrade", // 机器人名称
"initial_state": "running", // 初始状态: 运行中
"force_entry_enable": false, // 是否启用强制入场
"internals": { // 内部参数
"process_throttle_secs": 5 // 处理节流间隔(秒)
}
}

注意事项#

现货写法

"pair_whitelist": [
"BTC/USDT",
"ETH/USDT",
"SOL/USDT",
"XRP/USDT"
],

合约写法

"pair_whitelist": [
"BTC/USDT:USDT",
"ETH/USDT:USDT",
"SOL/USDT:USDT",
"XRP/USDT:USDT"
],

回测只使用静态白名单币种

"pairlists": [ // 交易对列表配置
{
"method": "StaticPairList", // 只使用静态白名单的 pair_whitelist

下载示例策略#

官方策略仓库https://github.com/freqtrade/freqtrade-strategies

Terminal window
# 1. 下载官方策略仓库
cd user_data/strategies
wget https://raw.githubusercontent.com/freqtrade/freqtrade-strategies/main/user_data/strategies/Strategy001.py
# 2. 再次列出策略
freqtrade list-strategies -c config.json

测试数据下载#

Terminal window
# 下载 BTC/USDT 最近 7 天的 5 分钟数据
freqtrade download-data -c config.json --days 7 --timeframes 5m

验证数据下载成功#

Terminal window
ls user_data/data/binance/futures/
# 输出示列:
BTC_USDT_USDT-1h-funding_rate.feather SOL_USDT_USDT-1h-funding_rate.feather
BTC_USDT_USDT-1h-mark.feather SOL_USDT_USDT-1h-mark.feather
BTC_USDT_USDT-5m-futures.feather SOL_USDT_USDT-5m-futures.feather
ETH_USDT_USDT-1h-funding_rate.feather XRP_USDT_USDT-1h-funding_rate.feather
ETH_USDT_USDT-1h-mark.feather XRP_USDT_USDT-1h-mark.feather
ETH_USDT_USDT-5m-futures.feather XRP_USDT_USDT-5m-futures.feather

运行回测#

Terminal window
freqtrade backtesting -c config.json --strategy Strategy001

回测报告#

Terminal window
"D:\CodeEditor\Projects\FreqTrade\freqtrade\freqtrade-bot\user_data\backtest_results\backtest-result-2026-02-08_
10-44-11.meta.json"
Result for strategy Strategy001
BACKTESTING REPORT
┏━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┓
Win Draw Loss
Pair Trades Avg Profit % Tot Profit USDT Tot Profit % Avg Duration Win%
┡━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━┩
SOL/USDT:USDT 4 -1.03 -4.155 -0.42 19:45:00 3 0 1
75.0
BTC/USDT:USDT 5 -1.41 -5.902 -0.59 22:23:00 4 0 1
80.0
ETH/USDT:USDT 6 -1.04 -6.090 -0.61 5:10:00 4 0 2
66.7
XRP/USDT:USDT 8 -3.05 -24.376 -2.44 13:09:00 4 0 4
50.0
TOTAL 23 -1.82 -40.523 -4.05 14:13:00 15 0 8
65.2
└───────────────┴────────┴──────────────┴─────────────────┴──────────────┴──────────────┴────────────────────┘
LEFT OPEN TRADES REPORT
┏━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┓
Win Draw Loss
Pair Trades Avg Profit % Tot Profit USDT Tot Profit % Avg Duration Win%
┡━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━┩
BTC/USDT:USDT 1 0.07 0.046 0.0 14:00:00 1 0 0
100
ETH/USDT:USDT 1 -0.12 -0.121 -0.01 0:35:00 0 0 1
0
XRP/USDT:USDT 1 -0.13 -0.135 -0.01 0:50:00 0 0 1
0
TOTAL 3 -0.06 -0.210 -0.02 5:08:00 1 0 2
33.3
└───────────────┴────────┴──────────────┴─────────────────┴──────────────┴──────────────┴────────────────────┘
ENTER TAG STATS
┏━━━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━┓
Enter Tag Entries Avg Profit % Tot Profit USDT Tot Profit % Avg Duration Win Draw Loss Win%
┡━━━━━━━━━━━╇━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━┩
OTHER 23 -1.82 -40.523 -4.05 14:13:00 15 0 8
65.2
TOTAL 23 -1.82 -40.523 -4.05 14:13:00 15 0 8
65.2
└───────────┴─────────┴──────────────┴─────────────────┴──────────────┴──────────────┴───────────────────────┘
EXIT REASON STATS
┏━━━━━━━━━━━━━┳━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┓
Win Draw Loss
Exit Reason Exits Avg Profit % Tot Profit USDT Tot Profit % Avg Duration Win%
┡━━━━━━━━━━━━━╇━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━┩
roi 14 1.34 17.771 1.78 2:18:00 14 0 0
100
force_exit 3 -0.06 -0.210 -0.02 5:08:00 1 0 2
33.3
stop_loss 6 -10.07 -58.084 -5.81 1 day, 22:36:00 0 0 6
0
TOTAL 23 -1.82 -40.523 -4.05 14:13:00 15 0 8
65.2
└─────────────┴───────┴──────────────┴─────────────────┴──────────────┴─────────────────┴────────────────────┘
MIXED TAG STATS
┏━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┓
Tot Profit Win Draw
Enter Tag Exit Reason Trades Avg Profit % USDT Tot Profit % Avg Duration Loss Win%
┡━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━┩
roi 14 1.34 17.771 1.78 2:18:00 14 0
0 100
force_exit 3 -0.06 -0.210 -0.02 5:08:00 1 0
2 33.3
stop_loss 6 -10.07 -58.084 -5.81 1 day, 0 0
22:36:00 6 0
TOTAL 23 -1.82 -40.523 -4.05 14:13:00 15 0
8 65.2
└───────────┴─────────────┴────────┴──────────────┴──────────────┴──────────────┴──────────────┴─────────────┘
SUMMARY METRICS
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
Metric Value
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
Backtesting from 2026-02-01 00:00:00
Backtesting to 2026-02-08 02:30:00
Trading Mode Isolated Futures
Max open trades 3
Total/Daily Avg Trades 23 / 3.29
Starting balance 1000 USDT
Final balance 959.477 USDT
Absolute profit -40.523 USDT
Total profit % -4.05%
CAGR % -88.43%
Sortino -26.39
Sharpe -23.15
Calmar -196.76
SQN -1.73
Profit factor 0.31
Expectancy (Ratio) │ -1.76 (-0.24) │
Avg. daily profit -5.789 USDT
Avg. stake amount 93.036 USDT
Total trade volume 4243.198 USDT
Best Pair SOL/USDT:USDT -0.42%
Worst Pair XRP/USDT:USDT -2.44%
Best trade XRP/USDT:USDT 3.00%
Worst trade BTC/USDT:USDT -10.10%
Best day 5.687 USDT
Worst day -26.157 USDT
Days win/draw/lose 2 / 2 / 4
Min/Max/Avg. Duration Winners 0d 00:35 / 0d 14:00 / 0d 03:05
Min/Max/Avg. Duration Losers 0d 00:35 / 3d 18:55 / 1d 11:08
Max Consecutive Wins / Loss 13 / 3
Rejected Entry signals 8
Entry/Exit Timeouts 0 / 0
Min balance 944.725 USDT
Max balance 1000.991 USDT
Max % of account underwater 5.62%
Absolute drawdown 56.266 USDT (5.62%) │
Drawdown duration 4 days 11:05:00
Profit at drawdown start 0.991 USDT
Profit at drawdown end -55.275 USDT
Drawdown start 2026-02-01 13:10:00
Drawdown end 2026-02-06 00:15:00
Market change -14.37%
└───────────────────────────────┴────────────────────────────────┘
Backtested 2026-02-01 00:00:00 -> 2026-02-08 02:30:00 | Max open trades : 3
STRATEGY SUMMARY
┏━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┓
Avg Profit Tot Profit Avg Win Draw
Strategy Trades % USDT Tot Profit % Duration Loss Win% Drawdown
┡━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━┩
Strategy001 23 -1.82 -40.523 -4.05 14:13:00 15 0 56.266 USDT
8 65.2 5.62%
└─────────────┴────────┴─────────────┴─────────────┴──────────────┴─────────────┴──────────────┴─────────────┘

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或赞助支持!

赞助
Freqtrade环境搭建
https://blog.smyb.fun/posts/aitrade/02_freqtrade环境搭建/
作者
三木羽冰
发布于
2026-01-02
许可协议
CC BY-NC-SA 4.0
最后更新于 2026-01-02,距今已过 47 天

部分内容可能已过时

Profile Image of the Author
三木羽冰
嵌言片语
音乐
封面

音乐

暂未播放

0:00 0:00
暂无歌词
分类
标签
站点统计
文章
21
分类
3
标签
6
总字数
24,212
运行时长
0
最后活动
0 天前

目录