核心原理:用均线角度定义趋势强度
传统均线交叉策略在震荡行情中易频繁触发假信号,回撤难以控制。本策略的核心思路是:仅当均线呈现足够陡峭的单边走势时,才判定为有效趋势行情,具备开仓价值。
策略以 SMA 均线为基础,计算当前均线值与指定跨度前均线值的差值,通过反正切函数将均线变化率换算为直观角度。角度绝对值越大,代表趋势方向性越强、行情越流畅;
角度接近 0 则为震荡区间,策略主动放弃交易。同时引入价格 - 均线偏离度指标,以百分比衡量价格相对均线的偏离程度,从入场端规避趋势末端追高风险。
开仓逻辑:三重过滤的稳健入场
策略采用新 K 线触发机制,仅在 K 线收盘时执行一次信号判断,避免盘中杂波干扰。开仓需同时满足三重条件:
- 角度阈值过滤:做多需均线角度达到正阈值以上,做空需达到负阈值以下,同时设置最小角度二次校验,筛除弱趋势假突破;
- 价格方向验证:做多需收盘价位于均线上方,做空需位于均线下方,顺势入场不逆势操作;
- 偏离度上限约束:价格与均线的偏离度绝对值不超过设定上限,防止在趋势加速末端高位接盘。
风控体系:逐级收紧的动态止损
策略止损随行情发展逐级调整,核心目标是守住浮盈、让利润奔跑,持仓过程共设置四层止损保护:
- 保本止损:持仓盈利达 500 点时,止损移至开仓价外侧 100 点,确保交易不以亏损收场;
- 盈利偏离收紧:价格相对均线偏离度达 19% 时,止损直接收紧至当前收盘价,锁定大部分浮盈;
- 极端偏离保护:偏离度扩大至 50% 时,止损进一步收紧至当前价附近,应对极端行情反转风险;
- 趋势破位移位:价格反向穿越均线时,止损同步移至均线外侧,趋势破位后快速离场。
数据回溯:内置 SQLite 全链路记录
策略基于 MT5 原生接口内置 SQLite 本地数据库,自动持久化记录每一次开仓、止损调整事件。每条记录包含事件时间、交易方向、手数、价格、均线值、
角度、偏离度、止损价及账户净值等全维度信息,相比终端原生记录更完整,便于后续策略复盘、参数优化与绩效归因。
Real-Time Spread Monitor with Session Statistics
直接在图表上以点和点差的形式显示当前的买卖价差,并实时追踪自指标添加以来该交易时段的最低、最高和平均价差。当价差超过用户设定的阈值时,颜色会发生变化以发出警报。
TickValue_Compare - diagnose differences between TICK_VALUE, LOSS and PROFIT
一个诊断脚本,用于比较“市场观察”中每个交易代码的 SYMBOL_TRADE_TICK_VALUE、SYMBOL_TRADE_TICK_VALUE_LOSS 和 SYMBOL_TRADE_TICK_VALUE_PROFIT 值。 将每个符号归类为以下四类之一(ALL_EQUAL、TV_MATCHES_PROFIT、TV_MATCHES_LOSS、ALL_DIFFER),并提供汇总报告及解读提示。 该功能有助于在EA中实现基于风险的仓位大小调整时,验证应采用哪种点值属性。可将每个交易符号的完整报告导出为CSV文件,并保存在MQL5/Files目录下。


