Files
crypto_monitor/策略交易说明.md
T
2026-05-23 12:02:57 +08:00

6.1 KiB
Raw Blame History

策略交易说明

本文档说明仓库根目录 共用策略逻辑 与四个 crypto_monitor_* 实例中的 策略交易 入口(顶栏「策略交易」,页内子 Tab:趋势回调 / 顺势加仓)。


一、架构(精简共用)

strategy_trend_lib.py      # 趋势回调:网格价、补仓拆分、边界校验(纯计算)
strategy_roll_lib.py         # 顺势加仓:总风险反推、斐波限价、最多 3 腿(纯计算)
strategy_db.py               # roll_groups / roll_legs 表结构
strategy_config.py           # 各所 app → 统一回调配置(交易所 API
strategy_register.py         # Flask POST/strategy/roll/preview、/strategy/roll/execute
strategy_ui.py               # 主站 index 页数据(滚仓组、持仓列表等)
strategy_exchange_*.py       # 适配器说明(实际下单仍走各所 app 的 ccxt
strategy_templates/          # strategy_trading_page.html(双栏)、trend/roll 面板片段
层级 职责
lib 不算 ccxt、不写库
config place_exchange_orderreplace_active_monitor_tpsl_on_exchange 等接到统一 cfg
各所 app .env、DB、init_db、PM2、微信、监控轮询

部署时各实例 PYTHONPATH 需包含仓库根目录(ecosystem.config.cjsPYTHONPATH=..)。


二、导航与页面

顶栏 「策略交易」/strategy:页内 左右并列 两张卡片(趋势回调 | 顺势加仓),布局与「实盘下单」双栏一致。旧链接 /strategy/trend/strategy/roll 会自动跳转到 /strategy

区域 说明
左栏 · 趋势回调 四所均可(预览、执行、自动补仓、程序止盈)
右栏 · 顺势加仓 须已有同向持仓;滚仓组/历史表在右栏内滚动
/trade 实盘下单

各所 app.py 注册 @app.route("/strategy/trend|roll")render_main_page(...)install_strategy_trading 仅注册滚仓 POST API。


三、趋势回调(延续 Gate 趋势机器人逻辑)

  • 位置:各所顶栏 策略交易 → 趋势回调(共用 strategy_trend_register.py + 各所交易所 API)。
  • 行为:与《crypto_monitor_gate_bot/趋势回调策略说明.md》一致——预览 → 确认执行 → 首仓 50% + 交易所止损 + 多档 自动 市价补仓 + 程序监控止盈。
  • 共用代码parse_and_compute_trend_pullback_plan 中网格/拆档已改为调用 strategy_trend_lib
  • 互斥:与「机器人下单监控」持仓上限、运行中趋势计划互斥(逻辑未改)。

逻辑与 gate_bot 一致;各所使用自己的 API 密钥与 crypto.db,互不影响。


四、顺势加仓(滚仓,仅人工)

4.1 原则

  • 禁止自动加仓;仅页面按钮「执行滚仓」或挂限价单(无价格穿越自动下单)。
  • 全币种(与各所合约列表一致)。
  • 止盈:全程使用 首仓 order_monitors.take_profit,滚仓不改止盈。
  • 止损:每次人工填写 新统一止损;成交后调用各所 先撤后挂 TP/SL(止盈仍为首仓)。
  • 总风险%:按「合并持仓 + 新止损」反推本次加仓张数,使触及新止损时亏损约 账户基数 × 风险%(默认 2%,可在表单修改)。
  • 做多最多滚仓 3 次(首仓不计入,仅计 roll_legs 已成交次数);做空默认同样 3 次(见 strategy_roll_lib.ROLL_MAX_LEGS_SHORT)。

4.2 斐波限价

  • 填写 上沿 H、下沿 L(H > L),仅用于计算限价加仓价(与 fib_key_monitor_lib.calc_fib_planentry 一致)。
  • 做多:下沿 = 结构止损侧;做空:上沿 = 结构止损侧。
  • 可选 0.6180.786;与关键位自动单的 TP(H/L 对侧)不同,滚仓 TP 锁定首仓。

4.3 前置条件

  1. 实盘下单 已有同 symbol、同方向 active order_monitors
  2. 交易所有同向持仓(读 get_live_position_contracts)。
  3. active trend_pullback_plans(与趋势回调互斥)。

4.4 数据表(各所 crypto.db

  • roll_groups:绑定 order_monitor_id、首仓 TP/SL、当前 SL、已滚仓次数。
  • roll_legs:每腿方式(市价 / 斐波0.618 / 斐波0.786)、张数、新 SL、状态(filled / pending)。

init_db() 时自动 CREATE TABLE IF NOT EXISTSstrategy_db.init_strategy_tables)。

4.5 操作步骤

  1. 打开顶栏 策略交易 /strategy,在 右栏·顺势加仓 操作。
  2. 选择持仓币种、方向、加仓方式,填写 H/L(斐波时)、新统一止损、总风险%。
  3. 点击 执行滚仓(市价立即加仓并更新止损;限价则挂委托,成交后需再处理止损——当前版本限价 pending 后提示手动同步)。
  4. 查看页底 滚仓腿历史

可选:对表单字段 POST /strategy/roll/previewJSON)查看 strategy_roll_lib.preview_roll 结果。


五、升级与重启

cd /opt/crypto_monitor
git pull
# 四所 PM2 若用到滚仓/趋势 lib,建议重启
pm2 restart crypto_binance crypto_gate crypto_gate_bot crypto_okx manual-trading-hub

仅改 Python 库、未改模板时,重启对应 Flask 进程即可。


六、相关文档

文档 内容
crypto_monitor_gate_bot/趋势回调策略说明.md 趋势回调细则(与四所共用逻辑一致)
AI复盘与模型配置说明.md 复盘页 AI(与策略无关)
manual_trading_hub/使用说明.md 中控(不含策略交易)
fib_key_monitor_lib.py 斐波公式共用

七、后续可增强(未实现)

  • 滚仓页内嵌预览按钮、限价成交后一键同步止损。
  • 趋势回调计划逻辑进一步迁入 strategy_trend_lib + 各所 adapter 类(当前网格/拆档与四所轮询已共用)。