- 显示:
- 12
- 等级:
- 已发布:
-
需要基于此代码的EA交易或指标吗?请在自由职业者服务中订购 进入自由职业者服务

EdgeMeter 针对任何入场信号都会回答一个问题:
扣除交易成本后,这个信号能否盈利?
它不会下单。它读取历史数据,在每个已平仓
K线进行评估,并给出结论。
我为何编写它
我花了一个月时间在XAUUSD M1时间周期上开发了一个网格交易EA。我设定了固定止损,添加了
浮动止损上限、反转平仓机制以及最大持仓时长。但它却一直亏损。
当我最终单独测试其入场信号时,答案仅用了三十
秒就得出了答案:
信号发出后15分钟内的平均波动:+0.04
每手往返支付的点差 : 0.26
没有任何平仓逻辑能弥补这一点。资金在入场时就已经亏损了,而我每小时
花在平仓上的每一小时都是白费。而这个脚本的存在正是为了防止这种情况。
报告内容
针对您指定的每个持仓周期:
- 总优势:信号触发后的平均有利波动
- 扣除成本后的净收益,按单笔头寸逐笔模拟计算
- 基于非重叠交易计算的t统计量
- 盈利月份占比
- 最大回撤
随后,系统对随机对照组执行相同的评估:采用相同的触发频率,
交易方向由抛硬币决定。随机入场交易必须正好亏损交易成本,
不多也不少。这有两个作用:既证明了模拟器的正确性,
同时为你提供噪声底限。如果你的信号无法明显超越这些
行,则该信号不包含任何信息。
重叠陷阱
这就是让我陷入困境的部分,也是大多数人容易陷入的陷阱。
连续的信号在大部分前向窗口内是重叠的。以60根K线为观察范围
,每根K线进行采样,会产生59种重叠方式的窗口。若将它们视为
独立的,会使t统计量大致膨胀到观察期长度的平方根。
我自己的信号按这种方法计算得出的t值为3.32,看起来颇具说服力。但在真正的
独立样本中,t值仅为1.20——与噪声无异。EdgeMeter
每次仅模拟一个仓位,因此其报告的交易不会重叠,
t统计量因此真实可靠。
通过标准
该脚本检查三项标准,且三项均需满足:
[1] 扣除成本后,每笔交易的净收益 > 0
[2] |t| > 2
[3] 4个月中至少有3个月盈利
在查看数据之前请先确定您的标准。事后才决定
导致亏损系统被推广到实盘账户的原因。
如何测试您自己的交易信号
打开文件,并在“USER SECTION”中编辑两个函数。其他部分无需
。
bool UserInit() - 创建指标句柄并使用
缓冲区
int UserSignal(int i) - 评估第 i 个已收盘K线
返回 +1 表示买入,-1 表示卖出,0 表示持仓观望
所有数组的索引从 0 开始,0 代表最旧的K线。这与通常的
序列索引方式,且这是有意为之:这样向前返回的值即为
索引 + 时间范围,从而消除了整类符号错误。
入场点模拟在下一根K线(Open(i+1))的开盘价处。切勿在UserSignal内部读取K线i+1或更晚的K线
——这属于“前瞻性偏误”,会导致本应有价值的
信号显得非常出色。
默认的 UserSignal 是一个双周期移动平均线交叉信号,作为
示例代码保留下来。请替换它。
设置成本
InpSpread、InpCommission 和 InpSlippage 以 PRICE 单位为单位,而非点数,且
它们是脚本中最重要的输入参数。请从您自己的
账户中获取,而非经纪商宣传的数据。
如果您有实盘或模拟交易的成交记录,请使用实际测得的
平均值。若无,请取图表上显示的典型点差,并
滑点预留值,而不是假设为零。模拟服务器报告的
接近零的滑点;这是模拟服务器的特性,而非市场本身。
要求
运行前请加载足够的历史数据:打开相应交易品种的图表,
时间周期,并向最左侧滚动。如果历史数据不足,脚本会提醒您
。信号少于30个,则任何结果都只是个案,而非证据。
可免费使用和修改。
由MetaQuotes Ltd译自英文
原代码: https://www.mql5.com/en/code/76316
Adaptive Volume Profile Node Tracker
在可配置的回溯窗口内构建一个滚动式、适应波动率的成交量分布图,并将控制点(POC)、价值区高位/低位以及具有统计学意义的高位/低位成交量节点(HVN/LVN)直接绘制在图表上。
Multi-Symbol Correlation Divergence Meter
追踪当前图表代码与选定参考代码之间的滚动相关性,并在两者价格差在统计上被拉大时,标记其脱钩的时刻。
Dynamic Session Range Sweep Detector with Liquidity Zone Marking
追踪亚洲、伦敦和纽约交易时段的波动范围,在每个交易时段收盘时锁定该范围,并通过箭头信号和阴影反应区标记真正的流动性扫盘——即K线影线刺穿已锁定的最高点或最低点,但收盘价又回到该范围之内的情况。不重绘,适用于任何交易品种和时间周期。
离散
离散技术指标由价格和交易量的变化决定。