stock-ai-agent/docs/REAL_TRADING_SETUP_GUIDE.md

5.6 KiB
Raw Permalink Blame History

Bitget 实盘交易配置指南

一、获取 Bitget API 密钥

1.1 注册 Bitget 账户

  1. 访问 Bitget 官网
  2. 注册账户并完成 KYC 认证

1.2 开通合约交易

  1. 登录后进入「合约」页面
  2. 完成合约交易风险测评
  3. 开通 U 本位合约交易

1.3 创建 API 密钥

  1. 进入「账户」→「API 管理」

  2. 点击「创建 API」

  3. 设置以下内容:

    • 备注名: Stock Agent
    • 权限:
      • 读取
      • 提现 (可关闭)
      • 交易 (必需)
    • IP 白名单: 添加你的服务器 IP可选但推荐
    • Google 验证: 完成绑定
  4. 创建后获得:

    • API Key
    • API Secret
    • Passphrase (如果设置了)

二、配置项目

2.1 编辑 .env 文件

在项目根目录的 .env 文件中添加以下配置:

# ============================================================================
# Bitget API 配置
# ============================================================================
BITGET_API_KEY=你的API_Key
BITGET_API_SECRET=你的API_Secret
BITGET_PASSPHRASE=你的Passphrase

# 使用测试网(强烈建议先在测试网测试!)
BITGET_USE_TESTNET=true

# 实盘交易总开关false 时仅模拟交易生效)
REAL_TRADING_ENABLED=false

# 风险控制参数
REAL_TRADING_MAX_SINGLE_POSITION=1000
REAL_TRADING_MAX_TOTAL_RATIO=0.5
REAL_TRADING_DEFAULT_LEVERAGE=10
REAL_TRADING_RISK_PER_TRADE=0.02
REAL_TRADING_MAX_ORDERS=5

2.2 配置项说明

配置项 说明 推荐值
BITGET_API_KEY Bitget API Key 从 Bitget 获取
BITGET_API_SECRET Bitget API Secret 从 Bitget 获取
BITGET_PASSPHRASE API Passphrase 从 Bitget 获取(如果需要)
BITGET_USE_TESTNET 是否使用测试网 true(测试网)
REAL_TRADING_ENABLED 实盘交易开关 false(测试前保持 false
REAL_TRADING_MAX_SINGLE_POSITION 单笔最大持仓 1000 USDT
REAL_TRADING_DEFAULT_LEVERAGE 默认杠杆 10x低于模拟的20x
REAL_TRADING_RISK_PER_TRADE 每笔风险 0.02 (2%)

三、测试网测试

3.1 Bitget 测试网

测试网地址: https://testnet.bitget.com/

特点:

  • 与生产网相同的 API 接口
  • 虚拟资金,无风险
  • 适合测试所有功能

3.2 配置测试网

确保 .env 中设置:

BITGET_USE_TESTNET=true

3.3 运行测试脚本

# 激活虚拟环境
source backend/venv/bin/activate

# 运行测试脚本
python scripts/test_real_trading.py

3.4 测试内容

测试脚本会依次执行:

  1. API 连接测试
  2. 查询账户余额
  3. 查询当前持仓
  4. ⚠️ 下单测试(已注释,需手动取消注释)

四、生产网注意事项

4.1 切换到生产网

⚠️ 警告: 切换到生产网后,所有交易都是真实资金!

  1. 修改 .env:

    BITGET_USE_TESTNET=false
    
  2. 强烈建议:

    • 先在测试网充分测试所有功能
    • 使用最小资金进行初期测试
    • 设置严格的风险控制参数
    • 保留模拟交易作为回测

4.2 风险控制建议

# 保守配置(推荐初期使用)
REAL_TRADING_MAX_SINGLE_POSITION=100     # 单笔最大 100 USDT
REAL_TRADING_DEFAULT_LEVERAGE=5           # 杠杆降低到 5x
REAL_TRADING_RISK_PER_TRADE=0.01          # 每笔风险 1%
REAL_TRADING_MAX_ORDERS=2                 # 最多 2 个持仓

4.3 实盘交易检查清单

  • API Key 配置正确
  • 测试网所有功能验证通过
  • 风险参数已设置
  • 小资金试运行100-1000 USDT
  • 监控告警已配置
  • 紧急撤单方案已准备

五、功能验证

5.1 API 连接验证

python scripts/test_real_trading.py

期望输出:

✅ API 连接成功USDT 余额: xxxxx

5.2 查询功能验证

测试脚本会自动验证:

  • 账户余额查询
  • 持仓查询
  • 订单状态查询

5.3 下单功能验证(测试网)

在测试网环境下,可以取消注释测试脚本中的下单代码进行真实下单测试:

# 在 test_real_trading.py 中找到此部分并取消注释
result = api.place_order(
    symbol=symbol,
    side='open_long',
    order_type='market',
    size=test_size
)

六、故障排查

6.1 API 连接失败

错误: API 连接失败

解决:

  1. 检查 API Key 和 Secret 是否正确
  2. 检查是否在正确的网络(测试网/生产网)
  3. 检查 IP 白名单配置

6.2 签名验证失败

错误: API 签名验证失败

解决:

  1. 检查系统时间是否准确
  2. 检查 API Secret 是否完整复制
  3. 检查 passphrase 是否正确

6.3 权限不足

错误: 权限不足

解决:

  1. 确认 API Key 已开通「交易」权限
  2. 重新创建 API Key 并勾选所有必需权限

七、安全最佳实践

7.1 API Key 安全

  • 不要将 API Key 提交到 Git 仓库
  • 使用 .env 文件并添加到 .gitignore
  • 定期轮换 API Key
  • 设置 IP 白名单

7.2 资金安全

  • 使用测试网充分测试
  • 从小资金开始
  • 设置合理的止损
  • 不要使用全部资金

7.3 系统安全

  • 保留实盘交易日志
  • 配置飞书/Telegram 告警
  • 定期检查持仓状态
  • 设置紧急停机方案

八、下一步

配置完成后:

  1. 运行测试脚本验证连接
  2. 在测试网测试所有功能
  3. 小资金生产网测试(可选)
  4. 配置监控告警
  5. 逐步增加资金规模

祝交易顺利! 🚀