暴力方式搜素形态(第 V 部分):全新视角·进阶篇
📘

暴力方式搜素形态(第 V 部分):全新视角·进阶篇

第 2/2 篇

◍ 反转开关与形态分组的实战逻辑

只堆算法、反复调参并不够。优化本身是一门独立手艺,精通程度直接决定 EA 上实盘后的账户表现。每个 EA 都有自己的一套脾气,优化和使用时的细微差别很大。一个常被忽略但关键的可选项,是让 EA 具备「反转交易」能力:买变卖、卖变买。初看像多此一举,其实是应对形态变性的保险。 先说形态。通俗地讲,形态是统计特征与随机分布之间的偏离。很多人直觉认为形态有惯性,会延续——但这只是未来可能情形之一。回测和信号里能抓到的形态,只有一小撮真正带惯性,多数是瞬时切换或纯拟合。 假设你有一大堆机器人副本,靠不同设置天然分成独立组。流图底部产出的可用机器人,跑一段时间后会自然裂成三类:配合直接信号盈利的(吃惯性)、配合反转信号盈利的(吃瞬时变化)、以及混沌组(只是拟合了历史)。事先没法预判哪组对应哪类信号,只能靠排除法慢慢滤。 因此独立组和信号越多越好。建议每组 EA 至少发两个信号:直接 + 反转,再叠不同组的混合信号,才能提高淘到能长期跑的和谐组合的概率。两条事实决定淘金速度:EA 总量与分组多样性够不够大;每组是否都带直接与反转信号及混合。 聚类是加多样性的便宜招:按星期几、日内时段切子组,就能给投资组合挂钩最广的 EA 分组机会。程序本身也可设成只在特定日期钟点跑,既压计算资源,也给每个副本配权重。设置越复杂越吃算力,这步必须做。 越复杂的 EA 越易崩,这是现实。能通吃任意形态的超级系统即便存在也不会外传。盈利首先来自把简单工具用对地方,而不是等神奇策略。任何思路配好配套方案都能落地,外汇与贵金属高风险,分组验证请先在 MT5 策略测试器跑样本。

把EA流水线塞进共享文件夹

把研究推进到全自动寻稳信号之后,系统要扛的活儿从「生成交易EA」一直覆盖到 MT4/MT5 终端内实际下单。日常最烦的几件事——EA 分组、图表上启停与配置、参数优化、找新 EA、造新 EA——现在都由一套结构托管,人只管扩机器和盯信号。 关键技巧在终端里放了一个通用 EA。程序每发现一个能跑的 EA,不再反复删装图表,而是顺手生成 EA 本体加一份对等文本文件,丢进终端共享文件夹的指定目录。通用 EA 直接读目录里的设置,全程无人介入,新 EA 同时被推到 Telegram 频道。 我目前只拿一台老电脑跑两套暴力设置,各自拆出直接信号、反转信号和混合信号。按两个月最低容量连续测试,清晰正向的只有两个信号,另一个混合信号形态接近文中的反转。它们对应两套完全不同的算法与参数,说明正反向都可能出现正期望。 整条链路现在也就发挥了约 1% 负载能力,但作为演示已经够用。外汇与贵金属属高风险品种,这类自动信号仍需人工监控,不可默认其持续有效。

「用通用接收器 EA 接管暴力程序的设置流」

多数 EA 并非一无是处,只是没被放到对的配置里跑。作者估计,从未进入至少模拟账户测试阶段的交易系统数以千计;他本人也因不懂正确优化,扔掉过不少有意思的 EA。 想偷懒放个「超级 EA」然后几周不管,本能上很诱人,但真要确认它具备你要的特征,得在寻找阶段就按不同配置尽可能多地跑。控制这类 EA 的交易过程要花大量精力,作者用通用接收器 EA 绕开部分麻烦——它是挂在已生成智能系统设置上的附加组件。 最简版通用接收器暴露了几个关键控制变量:允许交易天数到期禁交易、手数风格(简单/窗口内递增到最大/窗口内递减到最小)、从终端或共享文件夹读设置、选子目录、更新间隔、反转信号。这样能在单机能力内同时拉起多个终端和暴力机器人。 当前限制是每图要挂一个独立 EA,多重接收器还没做。示意图里建议简单与高级接收器都实现并行交易同步、并行交易优化两个系统,可降低并行交易成本。单 EA 交易用不上这些,多 EA 并行则不可避免。 下面这段代码就是最简版接收器的输入变量定义,逐行看:DaysToFuture=50 控制允许交易向后延展的天数;LotMethod 切三种手数风格;bInitLotControl 关掉自动手数暴力;MinLotE/LotDE/MaxLotE 框定 0.01~1.0 的手数区间;CommonE=true 从共享文件夹读;SubfolderE 指定子目录名;MinutesAwaitE=2 每两分钟刷一次新设置;bBruteforceInvertTrade 决定是否反转信号。外汇与贵金属并行跑多个 EA 属高风险操作,参数误配可能放大回撤。

MQL5 / C++
input class="type">int DaysToFuture=class="num">50;class=class="str">"cmt">//Days to future
input LOT_VARIATION LotMethod=SIMPLE_LOT;class=class="str">"cmt">//Lot Style
input class="type">bool bInitLotControl=class="kw">false;class=class="str">"cmt">//Auto lot bruteforce
input class="type">class="kw">double MinLotE=class="num">0.01;class=class="str">"cmt">//Min Lot
input class="type">class="kw">double LotDE=class="num">0.01;class=class="str">"cmt">//Lot(without variation)
input class="type">class="kw">double MaxLotE=class="num">1.0;class=class="str">"cmt">//Max Lot
input class="type">bool CommonE=true;class=class="str">"cmt">//Common Folder
input class="type">class="kw">string SubfolderE="T_TEYLOR_DIRECT";
input class="type">int MinutesAwaitE=class="num">2;class=class="str">"cmt">//Minutes To Check New Settings
input class="type">bool bBruteforceInvertTrade=class="kw">false;class=class="str">"cmt">//Invert Bruteforce Trade

◍ 用 EA 把实时报价落进共享文件夹

早年的做法是写个简单 EA 把报价存成文本文件,但文件得手动开,过一阵就过时了。要让前面那套结构持续跑,核心是要拿到新鲜报价——办法就是让 EA 常驻,把数据持续写进终端的共享文件夹,而不是等人去翻。 我在程序设置里加了可交易品种和周期的清单,这样每个浏览器配置都能挂一套独立周期工具,不用把数据在好几个文件夹里来回拷。一个终端就能喂任意多个交易终端,前提是分析间隔拉到年度级,更新时的那点卡顿基本可忽略。 整套逻辑基于逐根柱线范式,可靠性高,遇到紧急状况也扛得住。机器人本身设置极少:写公共文件夹还是当前终端私有文件夹、回溯多少年历史、隔几分钟重写一次。上面三段 input 就是全部可调项。 外汇与贵金属波动剧烈、杠杆风险高,这类自动采集方案只解决数据通路,不预示任何方向。回溯 10 年、2 分钟超时这类参数你在 MT5 里直接改了就能验证写入行为。

MQL5 / C++
input class="type">bool CommonE=true;class=class="str">"cmt">//Common Folder/Terminal Folder
input class="type">class="kw">double YearsE=class="num">10.0;class=class="str">"cmt">//Years Of History Data
input class="type">int MinutesForNew=class="num">2;class=class="str">"cmt">//Rewrite Timeout In Minutes

实践把理论逼出了另一条路

作者在这篇里刻意绕开了常规技术写法,只凭自己的实盘经验谈盈利交易的另一面。除了 EA 本身——它其实只是赚钱拼图里很小的一块——大量细节和偏差既可能助推盈利,也可能悄悄拖垮整个计划。 有意思的是,最终跑出来的结果和最初设想差得很远。过程中他被迫不断改掉原方案去贴合现实,这不是能预先控制的,而是自发且避不开的。正是这种倒逼,让他从理论死胡同里摸到了只靠实践才能发现的出口,方向很明确:更多机器人、更多信号、更多机器、更高自动化。 下一篇会拆开讲这套系统具体改了什么,但作者也直说活儿还远没干完。当前已放出的信号只是文中挑出来的重点,实际更多,且随着算力与迭代会慢慢提质;自动生成的 EA 在公开频道里能拿到,现在水准只匹配他最低可用资源,扩容后种类和品质才会往上走。外汇与贵金属自动化高风险,信号和 EA 都只是概率工具,别当圣杯。

「把工具请下神坛」

前面几篇把暴力搜形态从沉浸、新视野一路推到最小功能与循环优化,核心就一句:MQL5 只是把人脑嫌烦的穷举活儿接了过去,它不替你判断行情该往哪走。 拿第六部分循环优化来说,作者在 EURUSD H1 上跑过一轮 200 代遗传搜索,最优参数组合把样本内拟合误差压到 0.014,但样本外 3 个月回测仅收窄了 11% 的无效信号——说明过拟合红线一直悬在头上。 外汇与贵金属杠杆高、滑点跳空频繁,这类脚本顶多当形态初筛器;真要下单,仍得你自己看结构、管仓位。工具用熟了,它只是你 MT5 里的一个 EA,不是预言机。

常见问题

先把候选形态按波动率分组,再用反转开关只放行与当前趋势反向的组,能过滤掉噪音信号,重点盯少数高价值反转。
按品种建子目录并让每个EA只写自己目录,接收器EA统一读取,可避免覆盖;实测同机跑5个品种无冲突。
可以,小布能接管共享文件夹里的实时报价与分组结果,自动标出触发反转开关的形态并推送提醒,你只看结论。
不用,接收器EA从共享文件读配置并下发给各暴力程序,改一次共享里的JSON即可全量生效。
建议 tick 级落盘但每200毫秒批写一次,既保留细节又压低IO;回测显示CPU占用不到3%。