我把升级报告给你:升级报告:
升级与优化蓝图锁定(基于参数截图)
1. 核心任务:植入截图中的“动态风控调整”模块
这是当前代码所没有,但截图中明确要求的新机制。我将在输入参数和主循环中加入这套逻辑。
新增参数对接截图:
input double 风险控制亏损阈值 = -500.0;
input int 风险控制加大间隔 = 100;
input int 风险控制模式最大持仓 = 15;
input bool 启用动态风险调整 = true;
input bool 启用时间控制 = false; (及附带的启动/关闭小时和分钟设置)
逻辑实现:
当某个方向的单边浮亏(或总浮亏,根据我们的设定)超过 风险控制亏损阈值 (-500.0) 时,如果 启用动态风险调整 为 true,系统自动进入“防守模式”:
拉大网格: 加仓的间距强制从原来的 BaseInterval 切换为 风险控制加大间隔 (100)。
锁死层数: 该方向的持仓层数硬性被限制在 风险控制模式最大持仓 (15) 层,即使原来设置了更高的层数也不再加仓。
时间控制对接: 实现截图中从 启动小时/分钟 到 关闭小时/分钟 的精确交易时间过滤。
2. 底层性能重构(引入 EAStats)
保留原代码所有的交易条件判定,但我会用一个统一的 EAStats 结构体在每个 Tick 的最开始扫描一遍持仓。
优点: 彻底干掉原来 GetBuyOrderNumber、GetHighestBuyPrice、RunningProfitsByType 等十几个反复使用 for 循环遍历全盘订单的低效函数,让系统以极低的资源占用运行,彻底解决卡顿和漏单隐患。
3. “首尾交叉对切”逻辑(保留原版逻辑)
原版的 关闭最后和中间单 也许看起来不够“高级”,但它可能有特殊的业务考量。
处理方式: 逻辑思想和触发条件(比如 buyNumber_global == 3 时平第1和第3单)一字不改。仅仅用新引入的 EAStats 数据去更快速、更稳定地帮它找到这些特定的单子并执行平仓,保证核心交易思想与原作者 100% 一致。
4. “逃跑计划”风控矩阵升级
将原来硬编码的 15 美金逃跑逻辑,替换为截图参数 当前最大手数启动逃跑计划 (1.0) 和 整体止盈美金逃跑计划 (15.0)。
结合 EAStats 中实时计算出的浮盈浮亏,精准执行:当单边最大一笔手数 >= 1.0 且该单边总利润 > 15 美金时,立刻无情全平该方向。
5. 暗黑矩阵 UI 面板的深度接驳
由于这是一个多品种 EA,UI 将以矩阵列表的形式呈现。
UI 数据打通: 我会把新加的“动态风险控制状态”、“逃跑计划监控”等数据,实时推送到每个品种对应的行(Row)上。这样,一旦某个品种进入了 -500 亏损的防守模式,您在面板上一眼就能看到它的状态变成了警告色。 |