
第一部分:系统概述
1.1 NOFX是什么?
NOFX是一个基于人工智能的加密货币自动交易系统,它能够:
- ✅ 24小时自动监控市场:无需人工盯盘
- ✅ AI智能决策:使用DeepSeek、Qwen等大语言模型分析市场
- ✅ 多交易所支持:币安、Hyperliquid、Aster DEX
- ✅ 风险自动控制:内置止损、仓位限制、保证金管理
- ✅ 完整决策记录:每笔交易都有详细的AI思维链日志
- ✅ 实时可视化监控:专业的Web仪表盘
1.2 系统架构简图
┌─────────────────────────────────────────────────────────┐
│ 用户(你) │
│ ↓ │
│ Web浏览器 (http://localhost:3000) │
└─────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────┐
│ NOFX 核心系统 │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ 配置管理 │ │ AI决策引擎 │ │ 交易执行器 │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
└─────────────────────────────────────────────────────────┘
↓ ↓ ↓
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ SQLite │ │ AI API │ │ 交易所 API │
│ 数据库 │ │ (DeepSeek) │ │ (Binance) │
└──────────────┘ └──────────────┘ └──────────────┘
1.3 核心工作流程
1. 系统启动
↓
2. 加载配置(AI模型、交易所、交易员)
↓
3. 定时触发(每3-5分钟)
↓
4. 获取市场数据(价格、K线、技术指标、持仓量)
↓
5. 查询当前账户状态(余额、持仓、盈亏)
↓
6. 分析历史表现(最近20笔交易的胜率、盈亏比)
↓
7. 生成AI提示词(包含所有上下文信息)
↓
8. 调用AI API获取决策
↓
9. 解析AI返回的交易指令
↓
10. 风险验证(仓位限制、风险回报比、保证金检查)
↓
11. 执行交易(下单到交易所)
↓
12. 记录日志(保存到decision_logs目录和数据库)
↓
13. 等待下一个周期
第二部分:环境准备
2.1 硬件要求
最低配置:
- CPU: 双核 2.0GHz
- 内存: 2GB RAM
- 存储: 10GB 可用空间
- 网络: 稳定的互联网连接
推荐配置:
- CPU: 四核 2.5GHz+
- 内存: 4GB RAM
- 存储: 20GB SSD
- 网络: 5Mbps+ 带宽
2.2 软件依赖
方式一:Docker部署(强烈推荐)
只需要安装Docker:
Windows/macOS:
- 访问 Docker Desktop官网
- 下载对应系统的安装包
- 双击安装,一路"下一步"
- 重启计算机
Linux (Ubuntu/Debian):
# 使用官方安装脚本
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
# 将当前用户加入docker组
sudo usermod -aG docker $USER
newgrp docker
验证安装:
docker --version
# 应该显示:Docker version 24.x.x
docker compose version
# 应该显示:Docker Compose version v2.x.x
方式二:手动部署(开发者)
如果你想修改代码或深度定制,需要手动安装:
1. 安装 Go (1.21+)
# Linux
wget https://go.dev/dl/go1.21.0.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.21.0.linux-amd64.tar.gz
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc
source ~/.bashrc
# macOS
brew install go
# Windows: 下载安装包
# https://go.dev/dl/
2. 安装 Node.js (18+)
# Linux/macOS (使用nvm)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
nvm install 18
nvm use 18
# Windows: 下载安装包
# https://nodejs.org/
3. 安装 TA-Lib
# macOS
brew install ta-lib
# Ubuntu/Debian
sudo apt-get update
sudo apt-get install libta-lib0-dev
# Windows: 下载预编译包
# https://github.com/markcheno/go-talib

2.3 账户准备
(1)币安账户(必需)
步骤:
- 注册账户
- 访问:https://www.binance.com/join?ref=TINKLEVIP
- 使用邮箱或手机号注册
- 完成邮箱/手机验证
- 完成KYC认证
- 进入"用户中心" → "身份认证"
- 上传身份证/护照
- 人脸识别验证
- 等待审核(通常1-24小时)
- 开通合约交易
- 访问"衍生品" → "U本位合约"
- 点击"立即开通"
- 阅读并同意风险协议
- 创建API密钥
- 进入"用户中心" → "API管理"
- 点击"创建API"
- 输入标签名称(如:NOFX_Trading)
- 重要:只勾选"启用合约交易",不要勾选"提现"
- 完成二次验证
- 立即保存API Key和Secret Key(只显示一次!)
- 绑定IP白名单(强烈推荐)
- 在API管理页面,找到刚创建的API
- 点击"编辑"
- 添加你的服务器IP(如果是本地测试,添加你的公网IP)
- 保存
资金准备:
- 测试阶段:建议100-500 USDT
- 正式运行:建议500-2000 USDT
- ⚠️ 切记:只投入你能承受损失的资金
(2)AI API密钥(必需)
推荐:DeepSeek(性价比最高)
- 访问:https://platform.deepseek.com
- 使用邮箱注册
- 进入"余额充值",充值$20-50(推荐)
- 进入"API Keys",点击"创建新密钥"
- 立即复制保存密钥(格式:
sk-xxxxxxxxxxxxxxxxxx)
费用参考:
- 价格:$0.14 / 百万tokens
- 日消耗:约$1-2(24小时运行,3分钟决策间隔)
- $50可用约1个月
备选:通义千问 Qwen
- 访问:https://dashscope.console.aliyun.com
- 使用阿里云账号登录(需要中国手机号)
- 开通"DashScope"服务
- 创建API密钥
第三部分:快速部署
3.1 下载项目
# 使用Git克隆
git clone https://github.com/tinkle-community/nofx.git
cd nofx
# 或者直接下载ZIP(Windows用户推荐)
# 访问 https://github.com/tinkle-community/nofx
# 点击 "Code" → "Download ZIP"
# 解压到任意目录
3.2 配置系统
步骤1:创建配置文件
# 复制配置模板
cp config.example.jsonc config.json
步骤2:编辑配置文件
Windows用户:
notepad config.json
macOS/Linux用户:
nano config.json
# 或者使用你喜欢的编辑器:vim, code, etc.
步骤3:填写基础配置
最简配置示例:
{
"admin_mode": true,
"use_default_coins": true,
"api_server_port": 8080,
"jwt_secret": "请把这里替换成一个至少32位的随机字符串",
"leverage": {
"btc_eth_leverage": 5,
"altcoin_leverage": 5
}
}
生成随机JWT密钥:
# macOS/Linux
openssl rand -base64 64
# Windows PowerShell
[Convert]::ToBase64String((1..64 | ForEach-Object { Get-Random -Minimum 0 -Maximum 256 }))
# 或者使用在线工具
# https://www.grc.com/passwords.htm
配置项说明:
⚠️ 重要提醒:
jwt_secret 必须修改为你自己的随机字符串- 币安子账户杠杆最高只能5倍
- 主账户可以设置更高,但新手不推荐
3.3 启动系统
使用Docker(推荐)
# 首次启动(会自动构建镜像)
docker compose up -d --build
# 查看启动状态
docker compose ps
# 查看日志
docker compose logs -f
# 停止系统
docker compose down
# 重启系统
docker compose restart
启动成功标志:
✅ Container nofx-trading Started
✅ Container nofx-frontend Started
使用手动部署
终端1:启动后端
# 安装Go依赖
go mod download
# 编译程序
go build -o nofx
# 启动后端
./nofx
终端2:启动前端
# 进入前端目录
cd web
# 安装依赖(首次运行)
npm install
# 启动开发服务器
npm run dev
3.4 访问系统
打开浏览器,访问:
http://localhost:3000

首次登录凭证(管理员模式):
- 用户名:
admin - 密码:
admin123
⚠️ 安全提示:生产环境必须立即修改密码!
第四部分:Web界面操作
4.1 登录系统
- 打开
http://localhost:3000 - 输入用户名和密码
- 点击"登录"按钮
界面语言切换:
- 右上角有语言切换按钮
- 支持:中文、English
4.2 主界面导航
┌─────────────────────────────────────────────────────────┐
│ [NOFX Logo] [竞赛页] [交易员管理] [语言] [退出] │
├─────────────────────────────────────────────────────────┤
│ │
│ 主要内容区域 │
│ - 竞赛页:多AI对比排行榜 │
│ - 交易员管理:配置、启动、监控交易员 │
│ │
└─────────────────────────────────────────────────────────┘
4.3 配置AI模型
步骤:
- 进入"交易员管理"页面
- 点击"AI模型配置"按钮
- 启用DeepSeek或Qwen
配置DeepSeek:
AI模型名称: DeepSeek
API密钥: sk-your-deepseek-api-key-here
自定义API地址: (留空,使用默认)
自定义模型名称: (留空,使用默认)
状态: ✅ 启用
配置Qwen:
AI模型名称: Qwen
API密钥: sk-your-qwen-api-key-here
自定义API地址: (留空,使用默认)
自定义模型名称: (留空,使用默认)
状态: ✅ 启用
- 点击"保存配置"
验证成功标志:
- 看到"配置保存成功"提示
- AI模型列表中状态显示为"已启用"
4.4 配置交易所
步骤:
- 在"交易员管理"页面
- 点击"交易所配置"按钮
- 选择Binance
配置Binance:
交易所名称: Binance
API Key: your-binance-api-key
Secret Key: your-binance-secret-key
状态: ✅ 启用
- 点击"保存配置"
验证连接:
- 系统会自动测试连接
- 成功后显示"连接成功"
- 失败会显示错误信息(检查API密钥是否正确)
第五部分:交易员管理
5.1 创建交易员
步骤:
- 进入"交易员管理"页面
- 点击"创建交易员"按钮
- 填写以下信息:
交易员名称: 稳健策略A(自己命名,便于识别)
AI模型: DeepSeek(从下拉列表选择已配置的模型)
交易所: Binance(从下拉列表选择已配置的交易所)
初始余额: 500(填写你在币安账户的实际USDT余额)
扫描间隔: 3分钟(推荐3-5分钟)
自定义策略: (可选,留空使用默认策略)
- 点击"创建"按钮
命名建议:
- 描述性命名:如"DeepSeek-保守-5倍杠杆"
- 包含策略特点:如"Qwen-激进-主流币"
- 方便多交易员对比
5.2 启动交易员
步骤:
- 在交易员列表中找到你创建的交易员
- 点击"启动"按钮
- 确认弹窗中点击"确定"
启动成功标志:
- 状态变为"运行中"(绿色)
- 显示运行时长倒计时
- 开始出现决策记录
首次决策时间:
- 通常需要等待3-5分钟(一个扫描周期)
- 首次决策可能显示"观望"(正常现象)
- AI需要先分析市场环境
5.3 停止交易员
步骤:
- 找到正在运行的交易员
- 点击"停止"按钮
- 确认弹窗中点击"确定"
停止后行为:
- ✅ 已有持仓保持不变(不会自动平仓)
- ✅ 不再产生新的决策
- ✅ 可以随时重新启动
- ⚠️ 如需平仓,请在交易所手动操作或使用"一键平仓"功能
5.4 删除交易员
步骤:
- 确保交易员已停止
- 点击"删除"按钮
- 确认弹窗中输入交易员名称
- 点击"确定"
⚠️ 警告:
- 删除后无法恢复
- 决策日志会保留在
decision_logs目录 - 但数据库中的权益历史会被清除
5.5 批量操作
一键启动所有交易员:
点击页面顶部的"启动全部"按钮
一键停止所有交易员:
点击页面顶部的"停止全部"按钮
第六部分:监控与分析
6.1 实时监控面板
账户信息卡片:
┌────────────────────────────────────┐
│ 账户概览 │
├────────────────────────────────────┤
│ 总权益: 1,250.00 USDT │
│ 可用余额: 800.50 USDT │
│ 总盈亏: +25.00% (+250 USDT) │
│ 保证金使用率: 45.2% │
│ 持仓数量: 2 │
└────────────────────────────────────┘
字段解释:
- 总权益:账户总价值 = 可用余额 + 已用保证金 + 未实现盈亏
- 可用余额:可以用来开新仓的资金
- 总盈亏:相对初始余额的收益率
- 保证金使用率:已用保证金 / 总权益(超过90%会限制开仓)
- 持仓数量:当前持有的仓位个数
6.2 持仓列表
示例:
┌─────────────────────────────────────────────────────────────┐
│ 当前持仓 (2) │
├─────────────────────────────────────────────────────────────┤
│ BTCUSDT LONG 5x │
│ 入场价: 96,500.00 | 当前价: 97,200.00 | 盈亏: +0.73% │
│ 仓位: 2,500 USDT | 保证金: 500 USDT | 强平价: 94,000 │
│ 持仓时长: 2小时15分钟 │
│ [平仓] [修改止损止盈] │
├─────────────────────────────────────────────────────────────┤
│ ETHUSDT SHORT 5x │
│ 入场价: 3,500.00 | 当前价: 3,480.00 | 盈亏: +0.57% │
│ 仓位: 1,500 USDT | 保证金: 300 USDT | 强平价: 3,900 │
│ 持仓时长: 45分钟 │
│ [平仓] [修改止损止盈] │
└─────────────────────────────────────────────────────────────┘

颜色标识:
- 🟢 绿色:盈利持仓
- 🔴 红色:亏损持仓
- 🟡 黄色:接近强平价(警告)
6.3 权益曲线图
功能:
- 📈 显示账户价值随时间的变化
- 🔄 可切换"绝对值"和"百分比"视图
- 🔍 鼠标悬停查看具体数值
- 📅 支持时间范围筛选(1天/7天/30天/全部)
分析技巧:
- 平滑上升:策略稳健,风险控制良好
- 剧烈波动:杠杆过高或仓位管理不当
- 持续下跌:市场环境不适合,考虑暂停
- 台阶式上升:抓住了几次好机会,但频率不高
6.4 AI决策日志
查看方法:
- 进入"交易员详情"页面
- 滚动到"AI决策日志"区域
- 点击任意决策记录的"展开"按钮
日志内容:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
决策时间: 2025-11-03 14:32:15
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
【输入数据】
时间: 2025-11-03 14:32 | 周期: #47 | 运行: 142分钟
BTC: 96,500.00 (1h: +0.8%, 4h: +2.3%) | MACD: 125.34 | RSI: 58.2
账户: 净值1,250.00 | 余额800.50 (64.0%) | 盈亏+25.0% | 保证金45.2% | 持仓2个
## 当前持仓
1. BTCUSDT LONG | 入场价96,500 当前价96,800 | 盈亏+0.31% | 杠杆5x | 保证金500 | 强平价94,000 | 持仓时长2小时15分钟
[市场数据详情...]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
【AI分析思维链】
市场环境分析:
BTC在96,500附近形成支撑,4小时级别呈现上升趋势。
MACD保持金叉状态,RSI(58)处于中性偏多区域,未超买。
持仓量稳定增长,显示多头信心较强。
现有持仓评估:
BTCUSDT多单已持有2小时,浮盈+0.31%。
虽有盈利但未达到止盈目标(99,000),暂时继续持有。
止损设置在95,000,风险可控。
新机会识别:
ETHUSDT在3,500附近遇阻,4小时级别MACD即将死叉。
考虑开设小仓位做空,目标3,400,止损3,600。
风险回报比 (3,500-3,400)/(3,600-3,500) = 1:1 不满足≥1:3要求,放弃。
决策结论:
保持现有BTCUSDT多单,暂不开新仓。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
【决策输出】
[
{
"symbol": "BTCUSDT",
"action": "hold",
"reasoning": "持续观察,等待止盈或止损触发"
}
]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
【执行结果】
✅ 决策执行成功
操作: 保持持仓
无新订单生成
日志解读要点:
- 输入数据:AI看到了什么信息
- 思维链:AI如何分析市场(最重要)
- 决策输出:AI最终的指令
- 执行结果:系统是否成功执行
6.5 统计数据
关键指标:
┌────────────────────────────────────┐
│ 交易统计 │
├────────────────────────────────────┤
│ 总决策周期: 150 │
│ 开仓次数: 32 │
│ 平仓次数: 28 │
│ 胜率: 57.1% (16胜12负) │
│ 平均盈利: +2.8% │
│ 平均亏损: -1.5% │
│ 盈亏比: 1.87:1 │
│ 夏普比率: 1.42 │
│ 最大回撤: -8.3% │
└────────────────────────────────────┘
指标说明:
- 胜率:盈利交易 / 总交易次数
- 盈亏比:平均盈利 / 平均亏损(>1说明赚得比亏得多)
- 夏普比率:风险调整后的收益(>1优秀,>2非常优秀)
- 最大回撤:从峰值到谷底的最大跌幅
第七部分:高级配置
7.1 自定义交易策略
功能说明: 你可以为交易员添加个性化策略指令,系统会将其追加到AI的Prompt中。
配置方法:
- 进入"交易员详情"页面
- 点击"编辑策略"按钮
- 在文本框中输入你的策略描述
示例1:保守策略
个性化策略:
1. 优先交易BTC和ETH,山寨币仅在极强趋势时参与
2. 单笔交易杠杆不超过3倍
3. 震荡市(BTC日内波动<2%)降低交易频率
4. 连续亏损2笔后,暂停1小时再交易
5. 持仓超过4小时未达止盈,考虑提前止盈50%
示例2:激进策略
个性化策略:
1. 积极捕捉短期波动,扫描间隔设为3分钟
2. 可使用5倍杠杆(BTC/ETH)和3倍杠杆(山寨币)
3. 优先做多,但在明确下跌信号时果断做空
4. 关注持仓量急速变化的币种(OI Top信号)
5. 单笔盈利达到2%立即止盈,不等待更高目标
示例3:趋势跟踪
个性化策略:
1. 只做趋势,不做震荡:4小时EMA20必须明确方向
2. 严格止损,止损幅度1.5%,止盈幅度≥4.5%(1:3风险回报比)
3. 持仓时间最少6小时,给趋势充分发展空间
4. 避免在高波动时段(美国收盘、重大新闻)开仓
5. 最多持仓1个币种,集中资金做透一个机会
注意事项:
- 策略描述要清晰明确,避免模糊表达
- AI会尽量遵守,但仍会结合市场实际情况调整
- 不能违背系统的硬约束(如风险回报比≥1:3)
7.2 调整杠杆配置
修改方法:
编辑config.json文件:
{
"leverage": {
"btc_eth_leverage": 10, // BTC和ETH最大杠杆
"altcoin_leverage": 5 // 山寨币最大杠杆
}
}
重启系统生效:
docker compose restart
杠杆建议:
⚠️ 警告:
- 币安子账户最高只能5倍(平台限制)
- 高杠杆=高风险,可能快速爆仓
- 建议从保守开始,逐步调整
7.3 自定义币种列表
方法:
编辑config.json:
{
"use_default_coins": false,
"default_coins": [
"BTCUSDT",
"ETHUSDT",
"SOLUSDT",
"BNBUSDT",
"XRPUSDT",
"ADAUSDT",
"DOGEUSDT",
"AVAXUSDT",
"LINKUSDT",
"MATICUSDT"
]
}
添加币种要求:
- 必须是币安合约支持的币种
- 格式必须为
XXXUSDT(大写) - 建议选择流动性好的主流币(日交易量>1亿美元)
查看支持的币种:
- 访问币安合约官网
- 查看"U本位合约"列表
- 确认币种代码
7.4 配置扫描间隔
修改方法:
在创建交易员时设置,或通过Web界面编辑:
扫描间隔选项:
- 3分钟:激进策略,捕捉短期波动(AI调用费用较高)
- 5分钟:平衡策略,适合大多数情况(推荐)
- 10分钟:保守策略,适合趋势跟踪
- 15分钟:极保守策略,适合长期持有

费用对比:
- 3分钟:每天480次决策,AI费用约$2-3
- 5分钟:每天288次决策,AI费用约$1.5-2
- 10分钟:每天144次决策,AI费用约$0.8-1
7.5 风险控制参数
编辑config.json:
{
"max_daily_loss": 10.0, // 单日最大亏损百分比(触发后暂停)
"max_drawdown": 20.0, // 最大回撤百分比(触发后暂停)
"stop_trading_minutes": 360 // 触发风控后暂停时长(分钟)
}
参数说明:
max_daily_loss:当天亏损超过此比例,自动停止交易max_drawdown:从最高点回撤超过此比例,自动停止stop_trading_minutes:风控触发后的冷静期(6小时=360分钟)
7.6 多交易所配置
配置Hyperliquid(去中心化):
- 导出MetaMask私钥(移除0x前缀)
- Web界面"交易所配置"选择Hyperliquid
- 填写:
交易所名称: Hyperliquid
钱包地址: 你的ETH钱包地址
私钥: 私钥(不含0x前缀)
测试网: false(勾选则使用测试网)
配置Aster DEX:
- 访问 Aster API Wallet
- 创建API钱包,获取Signer地址和私钥
- Web界面配置:
交易所名称: Aster
用户钱包: 你的主钱包地址
Signer地址: API钱包地址
私钥: API钱包私钥(不含0x前缀)

第八部分:故障排查
8.1 常见错误及解决方案
问题1:Docker启动失败
错误信息:
Error: Cannot connect to the Docker daemon

解决方法:
# 检查Docker是否运行
docker ps
# 启动Docker服务(Linux)
sudo systemctl start docker
# Windows/Mac:打开Docker Desktop应用
问题2:端口被占用
错误信息:
Error: Port 8080 is already in use
解决方法:
方法1:修改端口
// 编辑config.json
{
"api_server_port": 8081 // 改为其他端口
}
方法2:释放占用端口
# Windows
netstat -ano | findstr :8080
taskkill /PID <进程ID> /F
# Linux/Mac
lsof -i :8080
kill -9 <进程ID>
问题3:AI API调用失败
错误信息:
Error: Failed to call AI API: timeout
可能原因及解决:
- API密钥错误
- 检查配置中的API密钥是否正确
- 确认密钥未过期
- 余额不足
- 登录DeepSeek/Qwen后台
- 检查账户余额
- 充值
- 网络问题
- 检查服务器网络连接
- 尝试ping api.deepseek.com
- 如在国内,可能需要配置代理
- API速率限制
- 降低扫描频率(改为5分钟或10分钟)
- 联系AI平台提升限额
问题4:币安API连接失败
错误信息:
Error: Invalid API-key, IP, or permissions
解决步骤:
- 检查API密钥
- 确认API Key和Secret Key正确
- 没有多余的空格
- 注意大小写
- 检查API权限
- 币安后台确认勾选了"合约交易"权限
- 未勾选"提现"权限(安全起见)
- 检查IP白名单
- 如果设置了IP白名单,确认当前IP在列表中
- 可以临时取消白名单测试
- 测试通过后再重新添加
- 检查时间同步
# Linux检查系统时间
date
# 如果时间不准,同步时间
sudo ntpdate -u time.nist.gov
问题5:Web界面无法访问
错误信息:
无法访问此网站 localhost 拒绝了我们的连接请求
解决方法:
- 检查服务是否运行
docker compose ps
# 确认nofx-frontend状态为Up
- 检查端口映射
docker compose logs nofx-frontend
# 查看是否有错误信息
- 尝试其他端口
http://localhost:3000
http://127.0.0.1:3000
http://你的服务器IP:3000
问题6:持仓数据不更新
症状:
- 权益曲线不动
- 持仓盈亏不变化
解决方法:
- 强制刷新页面
Ctrl + F5(Windows)
Cmd + Shift + R(Mac)
- 检查后端连接
# 测试API是否正常
curl http://localhost:8080/api/health
- 重启系统
docker compose restart
8.2 日志查看
Docker部署查看日志:
# 查看所有日志
docker compose logs
# 只看后端日志
docker compose logs nofx
# 只看前端日志
docker compose logs nofx-frontend
# 实时跟踪日志
docker compose logs -f
# 查看最近100行
docker compose logs --tail=100
手动部署查看日志:
# 后端日志在终端直接显示
# 前端日志在浏览器Console(F12)
# 决策日志位置
cd decision_logs
ls -l # 查看所有交易员的日志目录
8.3 数据备份与恢复
备份数据:
# 备份配置数据库
cp config.db config.db.backup
# 备份决策日志
tar -czf decision_logs_backup.tar.gz decision_logs/
# 备份配置文件
cp config.json config.json.backup
恢复数据:
# 停止系统
docker compose down
# 恢复数据库
cp config.db.backup config.db
# 恢复日志
tar -xzf decision_logs_backup.tar.gz
# 重启系统
docker compose up -d
自动备份脚本(Linux):
#!/bin/bash
# backup.sh
DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_DIR="backups"
mkdir -p $BACKUP_DIR
# 备份数据库
cp config.db $BACKUP_DIR/config.db.$DATE
# 备份日志(最近7天)
find decision_logs -name "*.json" -mtime -7 | tar -czf $BACKUP_DIR/logs.$DATE.tar.gz -T -
echo "备份完成: $BACKUP_DIR/config.db.$DATE"
设置定时备份(crontab):
# 编辑crontab
crontab -e
# 添加:每天凌晨2点备份
0 2 * * * /path/to/nofx/backup.sh
第九部分:最佳实践
9.1 新手起步建议
第1周:测试阶段
✅ 只投入100-200 USDT测试资金
✅ 使用5倍杠杆(保守)
✅ 只交易BTC和ETH(主流币)
✅ 每天查看2-3次,不要过度关注
✅ 重点学习AI的决策逻辑
第2-4周:观察阶段
✅ 记录每笔交易的盈亏
✅ 分析哪些市场环境下表现更好
✅ 尝试微调自定义策略
✅ 对比不同扫描间隔的效果
✅ 开始关注夏普比率、最大回撤等指标
1-3个月:优化阶段
✅ 根据表现决定是否增加资金
✅ 尝试多交易员策略(AI对比)
✅ 优化个性化策略Prompt
✅ 记录特殊市场事件对策略的影响
✅ 建立自己的交易规则
9.2 资金管理策略
分级投入:
风险控制:
1. 单账户资金不超过可投资资产的20%
2. 每月最大亏损容忍度:-10%(触发则暂停)
3. 连续3天亏损:降低杠杆或暂停
4. 大盈利后(+30%以上):取出本金,用利润继续
9.3 监控频率建议
过度监控的坏处:
- 容易情绪化干预AI决策
- 增加心理压力
- 影响正常工作生活
推荐监控频率:
设置警报:
推荐配置:
- 单日亏损>5%:邮件/短信通知
- 账户权益<初始余额80%:警报
- 系统异常停止:立即通知
9.4 不同市场环境应对
牛市(持续上涨):
✅ 优先做多,减少做空
✅ 适当提高仓位(从5x到10x)
✅ 持仓时间可以更长(让利润奔跑)
✅ 关注突破型机会
熊市(持续下跌):
✅ 减少交易频率(改为10分钟扫描)
✅ 降低杠杆(5x以下)
✅ 严格止损,快进快出
✅ 可以尝试做空策略
⚠️ 考虑暂停,等待转势
震荡市(横盘):
✅ 适合高频策略(3分钟扫描)
✅ 缩短止盈目标(2-3%即可)
✅ 避免重仓单向
✅ 关注超买超卖信号(RSI)
暴涨暴跌(剧烈波动):
⚠️ 手动停止交易员
⚠️ 等待市场稳定
⚠️ AI在极端行情下可能判断失误
⚠️ 如有持仓,密切关注强平价
9.5 多交易员组合策略
策略组合示例:
交易员A:保守稳健
- DeepSeek
- 5倍杠杆
- 只做BTC/ETH
- 5分钟扫描
- 资金占比:50%
交易员B:平衡激进
- Qwen
- 10倍杠杆
- BTC/ETH/主流币
- 3分钟扫描
- 资金占比:30%
交易员C:实验性
- 自定义策略
- 5倍杠杆
- 测试新想法
- 资金占比:20%
优势:
- 分散风险
- 对比不同AI模型和策略
- 学习不同风格的优劣
第十部分:常见问题FAQ
Q1:系统会自动止损吗?
答: 会!每笔开仓都会自动设置止损订单。
- AI在做决策时会计算止损价和止盈价
- 系统执行时会同时下"开仓单"和"止损/止盈单"
- 触发条件后会自动平仓,无需人工干预
Q2:我可以手动干预吗?
答: 可以!你有完全控制权。
手动平仓:
- Web界面持仓列表点击"平仓"按钮
- 或直接在币安APP/网页端操作
手动调整止损止盈:
- Web界面点击"修改止损止盈"
- 或在币安端修改委托订单
手动开仓:
- 建议不要,会干扰AI的整体策略
- 如需手动交易,建议用另一个账户
Q3:可以同时运行多个交易员吗?
答: 完全可以!
前提条件:
- 每个交易员需要独立的交易所账户
- 或使用不同交易所(一个币安,一个Hyperliquid)
示例配置:
交易员1: DeepSeek + 币安账户A
交易员2: Qwen + 币安账户B
交易员3: DeepSeek + Hyperliquid账户
这样可以实现AI模型PK,非常有趣!
Q4:夜间会自动交易吗?
答: 会!这正是AI的优势。
- 24小时自动运行
- 不会错过任何机会
- 不受情绪影响
但要注意:
- 确保服务器/电脑不关机
- 网络连接稳定
- 建议部署到云服务器
Q5:亏损了怎么办?
答: 冷静分析,理性应对。
短期亏损(-5%以内):
- 正常波动,观察几天
- 查看AI决策日志,分析原因
- 检查是否遇到不利市场环境
中期亏损(-10%左右):
- 降低杠杆倍数
- 减少交易频率
- 考虑调整策略Prompt
严重亏损(-20%以上):
- 立即停止交易员
- 全面复盘所有交易
- 判断是策略问题还是市场环境问题
- 必要时暂停一段时间
记住:止损是为了保护本金!
Q6:哪个AI模型更好?
答: 没有绝对答案,各有特点。
DeepSeek:
- ✅ 便宜($0.14/百万tokens)
- ✅ 快速(响应<2秒)
- ✅ 稳定,适合保守策略
- ❌ 有时过于谨慎
Qwen(通义千问):
- ✅ 中文理解好
- ✅ 有时更激进,收益可能更高
- ❌ 风险也相对更大
- ❌ 可能需要中国手机号注册
建议:
- 新手先用DeepSeek
- 有经验后可以同时运行两个对比
Q7:能保证盈利吗?
答: 不能!必须实话实说。
AI能做的:
- ✅ 24小时监控,不错过机会
- ✅ 纪律执行,不情绪化
- ✅ 多维度分析,决策更全面
- ✅ 自学习优化,避免重复错误
AI做不到的:
- ❌ 预测黑天鹅事件
- ❌ 对抗市场大趋势
- ❌ 100%胜率
实际表现(用户反馈):
- 震荡市/牛市:60%用户盈利
- 熊市:约40%用户盈利
- 年化收益:-20%到+50%不等
重要: 只投入你能承受损失的资金!
Q8:API密钥安全吗?
答: 遵守安全规则就安全。
安全措施:
- ✅ 只开"合约交易"权限,不开"提现"
- ✅ 绑定IP白名单
- ✅ 定期更换API密钥
- ✅ 不要分享给任何人
- ✅ config.json不要上传到公开仓库
即使泄露:
- 黑客最多只能帮你交易(亏损)
- 无法提现你的资金
- 发现后立即在币安端删除API
Q9:可以用于股票/期货吗?
答: 目前不行,但未来会支持。
当前支持:
- ✅ 加密货币合约(币安、Hyperliquid、Aster)
计划支持(Roadmap):
- 🔜 美股、A股
- 🔜 商品期货
- 🔜 外汇市场
- 🔜 期权交易
架构上支持扩展,只需要对接新的交易所API。
Q10:系统开源吗?
答: 完全开源!
- GitHub:https://github.com/tinkle-community/nofx
- 代码可审计、可修改
- MIT许可证
- 欢迎贡献代码
好处:
- 透明,没有后门
- 社区驱动,持续改进
- 可以自己定制功能
附录A:快速参考卡
常用命令
# Docker 管理
docker compose up -d --build # 启动系统
docker compose down # 停止系统
docker compose restart # 重启系统
docker compose logs -f # 查看日志
docker compose ps # 查看状态
# 数据备份
cp config.db config.db.backup # 备份数据库
cp config.json config.json.bak # 备份配置
# 系统访问
http://localhost:3000 # Web界面
http://localhost:8080/api/health # API健康检查
关键配置
{
"admin_mode": true,
"use_default_coins": true,
"api_server_port": 8080,
"jwt_secret": "你的64位随机字符串",
"leverage": {
"btc_eth_leverage": 5,
"altcoin_leverage": 5
},
"max_daily_loss": 10.0,
"max_drawdown": 20.0
}
重要端口
目录结构
nofx/
├── config.json # 系统配置
├── config.db # SQLite数据库
├── decision_logs/ # AI决策日志
│ └── {trader_id}/ # 按交易员分类
├── docker-compose.yml # Docker配置
└── web/ # 前端代码
附录B:支持资源
学习资源
- 量化交易入门:《量化投资:以Python为工具》
- 技术分析:《日本蜡烛图技术》
- 风险管理:《交易心理分析》
- 加密货币:CoinMarketCap学院
附录C:更新日志
v3.0.0 (2025-10-30) - 重大更新
核心改进:
- ✅ 完全数据库驱动(SQLite)
- ✅ Web界面配置(无需编辑JSON)
- ✅ 用户认证系统(JWT + 2FA)
- ✅ 多AI模型、多交易所灵活组合
- ✅ 增强的API层
结语
恭喜你读完这份使用手册!🎉
现在你应该已经掌握了:
- ✅ NOFX的基本原理和工作流程
- ✅ 如何部署和配置系统
- ✅ 如何创建和管理交易员
- ✅ 如何监控和分析交易表现
- ✅ 常见问题的解决方法
- ✅ 最佳实践和风险控制策略
记住最重要的三点:
- 从小做起 - 用100-200U测试,不要着急投入大资金
- 持续学习 - 每周复盘AI决策日志,理解其逻辑
- 风险控制 - 设置止损阈值,不要贪婪,保护本金
下一步建议:
1. 注册币安账户和DeepSeek API(如果还没有)
2. 按照第三部分完成系统部署
3. 创建第一个交易员,开始测试
4. 每天花5-10分钟查看监控面板
5. 一周后复盘表现,调整策略
6. 加入Telegram社区,和其他用户交流
祝你使用愉快,交易顺利!🚀