auto_trade_sys/docs/common/策略与信号评估及改进建议.md
薇薇安 13a0e7d580 delete: 移除过时的文档与代码文件
删除了多个不再使用的文档和代码文件,包括交易更新推送、条件订单推送、REST API 文档、WebSocket API 文档及相关的策略分析文档。这些文件的移除有助于清理代码库,确保项目的整洁性与可维护性。
2026-02-20 17:49:00 +08:00

6.4 KiB
Raw Permalink Blame History

策略与信号评估及改进建议

基于持仓记录2026-02-16、当前策略逻辑与币安接口文档对「长时间持仓、盈利不明显」做简要诊断并给出可落地的改进方向。


一、持仓与信号现状简要诊断

1. 持仓样本(来自 持仓记录_2026-02-16

  • 数量:约 12 个持仓多空混合BUY 少、SELL 多)。
  • 盈亏分布:部分有 +15%、+13%、+9% 等浮盈,多数在 -5%+2% 区间横盘,整体「拿得久、盈利不突出」。
  • 共性
    • 入场依赖 1H/4H 技术信号MACD + EMA + 4H 趋势),无资金费率、多空结构、订单流等过滤,容易在「结构不利」时开仓。
    • 止损/止盈为固定比例或 ATR无跟踪止损、无时间止损,盈利单容易回吐,亏损单容易长期挂单。
    • 选币主要按 24h 涨跌幅 + 成交量 + signal_strength 排序,未用资金费率、大户多空比、主动买卖量等 做过滤或排序。

2. 当前信号与选单逻辑(简要)

  • 扫描24h 涨跌幅 ≥ 阈值 + 成交量 ≥ MIN_VOLUME_24H_STRICT → 对每个 symbol 拉 1H/4H K 线 → 算 RSI、MACD、EMA、4H 趋势 → 算 signal_strength010按强度排序取 TOP_N。
  • 开仓条件signal_strength ≥ MIN_SIGNAL_STRENGTH8、4H 趋势不逆势、RSI/24h 涨跌幅过滤、短周期方向过滤、大盘 Beta 过滤等。
  • 问题点
    • 信号完全来自 K 线技术指标,没有合约特有的「成本与结构」信息(资金费率、多空比、主动买卖)→ 容易在费率极高或多空极度拥挤时进场。
    • 入场时机只看扫描周期(如 15 分钟一次),没有用 WS 订单/成交推送做更细的时机优化
    • 出场只有固定 SL/TP没有跟踪止损、没有「持仓时间 + 无盈利」类时间止损

二、基于现有接口的改进方向(可落地)

1. 资金费率过滤(已接入 REST建议优先上

  • 接口GET /fapi/v1/premiumIndex(已封装为 get_premium_index(symbol)),含 lastFundingRate
  • 思路
    • 做多:若 lastFundingRate > 某上限(例如 0.001,即 0.1%),说明多头付费高,开多成本高、易被费率侵蚀 → 跳过开多
    • 做空:若 lastFundingRate < 某下限(例如 -0.001),说明空头付费高 → 跳过开空
  • 效果:减少在「费率极端不利于己方」时开仓,提高单笔期望收益;配合现有技术信号,不改变主逻辑,只做过滤。
  • 实现:在策略层开仓前增加「资金费率过滤」步骤(见下节代码)。

2. 大户多空比 / 主动买卖量(已接入 REST可选增强

  • 接口get_top_long_short_position_ratioget_taker_long_short_ratio(或账户数多空比)。
  • 思路
    • 做多:优先选择「近期主动买入占比高」或「大户多空比」偏多的标的(顺势);或极端多头拥挤时做「逆势空」需谨慎、可提高信号门槛。
    • 做空:优先选择「主动卖出占比高」或大户偏空的标的。
  • 实现:可在扫描后、或策略决定开仓前,对候选 symbol 取最近 1 条 taker 或大户多空比,与方向一致则通过、相反则降权或跳过(可选,先上资金费率再考虑)。

3. 订单/成交推送WS对「下单时机」的改进

  • 文档订单交易更新推送ORDER_TRADE_UPDATE、条件单更新ALGO_UPDATE、账户信息流等。
  • 思路
    • 已有 User Data Stream 时,订单状态、成交回报已经实时;可在此基础上做「下单后快速反馈、部分成交/全部成交的后续动作」。
    • 若引入 aggTrade / depth 等行情 WS可在「信号已满足」时结合最近几笔大单或盘口变化再点一次火减少「信号刚满足就追在尖顶/尖底」的情况(实现成本较高,可作为二期)。

4. 止盈/止损与持仓管理

  • 跟踪止损:文档支持 TRAILING_STOP_MARKET(激活价、回调比例)。可在「浮盈达到 X% 后」改为跟踪止损,锁定利润、让利润奔跑。
  • 时间止损:若持仓超过 N 小时且浮盈 < 某阈值(或浮亏),可考虑平仓释放保证金,避免长期无效挂单(需在 position_manager 或策略层加「持仓时长」判断)。
  • 分批止盈:当前有 take_profit_1/2 等设计;可结合 ATR 或固定比例,先平一部分、留一部分用跟踪止损(逻辑已有基础,可逐步细化)。

5. 扫描与选币

  • 资金费率:扫描阶段可排除「费率极端」的标的(例如 |lastFundingRate| > 0.001),避免进入 TOP_N 的 symbol 本身就不适合当前方向。
  • 成交量/流动性:继续用 24h 成交量 + 深度(若有)保证可执行性;深度接口已接入,可用于大单前的冲击成本估算。
  • 多空比/主动买卖:作为排序加分项(与方向一致则排前),而不是硬过滤,避免过度减少开仓次数。

三、建议实施顺序

  1. 立即:在开仓前增加资金费率过滤(做多/做空各一个阈值),并加配置开关与日志。
  2. 短期:在配置中提供跟踪止损开关与参数(如激活盈利率、回调比例),对已有持仓在达到条件时切到跟踪止损(或先对部分新开仓做实验)。
  3. 中期:在扫描或策略中引入大户多空比 / taker 买卖比,作为过滤或排序加分,并观察胜率与频率变化。
  4. 可选:结合 WS 订单/成交与行情aggTrade/depth做更细的入场时机优化以及「持仓时间 + 无盈利」的时间止损。

四、小结

  • 现状:信号与选单主要依赖 K 线技术指标和 4H 趋势,缺少「资金费率、多空结构、订单流」等维度,且出场方式单一,容易导致持仓时间长、盈利不明显。
  • 改进:在不推翻现有技术信号的前提下,优先用资金费率做开仓过滤,再用多空比/主动买卖做过滤或排序,并逐步加上跟踪止损时间/无盈利止损,有望在控制回撤的同时提高单笔质量与资金效率。
  • 上述改进均可基于你已接入的 REST 接口premiumIndex、fundingRate、topLongShort、takerlongshortRatio 等)和现有 WS 文档实现;具体参数(费率阈值、跟踪止损比例等)可在实盘或回测中微调。