换仓评估修复:沉没成本不参与决策

之前逻辑:expected_gain > locked_loss * 1.5 → 沉没成本谬误
错的:把已发生的亏损当成了交易成本

修复后:
1. 已亏损是沉没成本,卖不卖都已损失,不参与决策
2. 只比较持有 old 票的未来预期 vs 换到 new 票的未来预期
3. 深套票(<-15%)默认=死钱,继续持有预期≈-5%~0%
4. 目标票(RR>=3+买入信号)才有换仓资格
5. 最多卖2只、不超过总资产50%
6. 优先选亏损比例小、市值大的(效率高)

输出示例(已实测):
  换仓建议:卖双一科技(亏-15.9%);阿里(亏-21.7%)→腾69k→买海博思创1手(53k)
  理由:已深套,回本需涨19~28%不现实,死钱换有信号票,止损-3%可控,+17%空间明确
This commit is contained in:
知微
2026-06-24 11:48:27 +08:00
parent 92815aac06
commit 68e530a4be
3 changed files with 135 additions and 96 deletions
+43 -43
View File
@@ -110,9 +110,9 @@
},
"priority": 1,
"rationale": "价格回调到支撑区,弱势市场低吸",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
},
{
"id": "000657_breakout_chase",
@@ -260,9 +260,9 @@
},
"priority": 1,
"rationale": "价格回调到支撑区,弱势市场低吸",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
},
{
"id": "000700_breakout_chase",
@@ -555,9 +555,9 @@
},
"priority": 99,
"rationale": "没有分支匹配时的默认动作",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
}
],
"created_at": "2026-06-24"
@@ -772,9 +772,9 @@
},
"priority": 99,
"rationale": "没有分支匹配时的默认动作",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
}
],
"created_at": "2026-06-24"
@@ -5482,9 +5482,9 @@
},
"priority": 1,
"rationale": "价格回调到支撑区,弱势市场低吸",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
},
{
"id": "300035_breakout_chase",
@@ -5902,9 +5902,9 @@
},
"priority": 1,
"rationale": "价格回调到支撑区,弱势市场低吸",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
},
{
"id": "300308_breakout_chase",
@@ -6133,9 +6133,9 @@
},
"priority": 1,
"rationale": "价格回调到支撑区,弱势市场低吸",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
},
{
"id": "300548_breakout_chase",
@@ -6350,9 +6350,9 @@
},
"priority": 1,
"rationale": "价格回调到支撑区,弱势市场低吸",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
},
{
"id": "300690_breakout_chase",
@@ -6652,9 +6652,9 @@
},
"priority": 99,
"rationale": "没有分支匹配时的默认动作",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
}
],
"created_at": "2026-06-24"
@@ -6784,9 +6784,9 @@
},
"priority": 1,
"rationale": "价格回调到支撑区,弱势市场低吸",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
},
{
"id": "518880_breakout_chase",
@@ -7008,9 +7008,9 @@
},
"priority": 1,
"rationale": "价格回调到支撑区,弱势市场低吸",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
},
{
"id": "600036_breakout_chase",
@@ -7197,9 +7197,9 @@
},
"priority": 1,
"rationale": "价格回调到支撑区,弱势市场低吸",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
},
{
"id": "600519_breakout_chase",
@@ -7478,9 +7478,9 @@
},
"priority": 99,
"rationale": "没有分支匹配时的默认动作",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
}
],
"created_at": "2026-06-24"
@@ -7645,9 +7645,9 @@
},
"priority": 1,
"rationale": "价格回调到支撑区,弱势市场低吸",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
},
{
"id": "600739_breakout_chase",
@@ -8044,9 +8044,9 @@
},
"priority": 1,
"rationale": "价格回调到支撑区,弱势市场低吸",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
},
{
"id": "601899_breakout_chase",
@@ -8304,9 +8304,9 @@
},
"priority": 99,
"rationale": "没有分支匹配时的默认动作",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
}
],
"created_at": "2026-06-24"
@@ -8401,9 +8401,9 @@
},
"priority": 1,
"rationale": "价格回调到支撑区,弱势市场低吸",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
},
{
"id": "688411_breakout_chase",
@@ -8703,9 +8703,9 @@
},
"priority": 99,
"rationale": "没有分支匹配时的默认动作",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
}
],
"created_at": "2026-06-24"
@@ -8870,9 +8870,9 @@
},
"priority": 1,
"rationale": "价格回调到支撑区,弱势市场低吸",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
},
{
"id": "688639_breakout_chase",
@@ -9332,9 +9332,9 @@
},
"priority": 1,
"rationale": "价格回调到支撑区,弱势市场低吸",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
},
{
"id": "688802_breakout_chase",
@@ -9613,9 +9613,9 @@
},
"priority": 99,
"rationale": "没有分支匹配时的默认动作",
"trigger_count": 0,
"trigger_count": 1,
"success_rate": null,
"last_triggered": null
"last_triggered": "2026-06-24"
}
],
"created_at": "2026-06-24"
@@ -9623,5 +9623,5 @@
}
],
"total": 42,
"regenerated_at": "2026-06-24 11:41"
"regenerated_at": "2026-06-24 11:47"
}