🌐 简体中文
AT_SYSTEM
EA Manual

Parameters & Features

For versions released in 2026 and later

EA 手册(MQL5 Market 版)

AT_SYSTEM EA 通用使用方法与参数说明

目录

前言

本手册说明我提供的各款 EA 共通的使用方法和参数等内容。

说明和截图均为 MT5 的内容。MT4 版与之相同,不同之处会单独注明。
功能和参数是否具备、名称是否相同,因 EA 和版本而异。您所用的 EA 中没有的项目,请直接跳过。

EA 的设置方法

货币对和时间周期已自动设置好的画面
货币对和时间周期已自动设置好的画面

EA 是否设置成功,也可以在工具箱的“Experts”选项卡的日志中确认。

工具箱中的 Experts 选项卡
工具箱中的 Experts 选项卡

附加 EA 时,“Common”选项卡(MT4 为“About”选项卡)中会显示简要规格。图表的 K 线数量请设置为不少于其中所写的数字。

简要规格说明(MT4 为“About”选项卡)
简要规格说明(MT4 为“About”选项卡)

参数与图表注释

示例 1:一般类型
示例 1:一般类型
示例 2:多策略类型
示例 2:多策略类型

以下按模块逐一说明。
[ ] 内是图表注释中显示的项目。

1. 基本设置与复利设置

参数说明
Magic Number
[magic]
EA 的识别编号。请为每个 EA 设置不同的值。如果与其他 EA 重复,会导致运行异常。
Fixed Lot
[lots]
固定手数交易时的手数。选择复利但没有 SL 时,也使用该值。
Lot Calculation Mode
[met]
复利设置。0 = 固定手数,1 = 复利(余额),2 = 复利(可用保证金)
Risk Percent
[risk]
复利运行时的风险设置。以所选基准(余额或可用保证金)为准,表示最大 SL 亏损所占的比例(%)。
Initial Balance开始复利运行时的余额,以账户货币输入。图表注释中不会显示。
Lot Growth Rate
[ver]
以 0 到 100 设置资金变动反映到手数上的比例。可以缓和资金剧烈变动引起的手数骤变。

复利模式的区别

Initial Balance 无论开始运行多少年之后都会被参照。即使因终端重启等原因 EA 停止,也能在相同条件下重新计算手数。

回测中的复利按 1 USD = 150 JPY 的假定汇率计算。因此手数可能与实际运行不同。

即使设置了复利,手数仍停留在 Fixed Lot 的值时,请参考 Experts 选项卡,将计算所需的货币对添加到“市场报价”(Market Watch)中。这样可能就能正常计算了。

例:账户货币为日元、运行 AUDCAD 时,如果市场报价中没有 USDCAD,就无法计算复利,手数会保持为 Fixed Lot 的值。

复利计算公式

复利手数 = 风险金额 ÷ 每 1 手的 SL 亏损

风险金额 = 基准余额 × 风险比例(Risk Percent)

基准余额 = 初始余额(Initial Balance)+(当前资金 − 初始余额)× 手数变动率(Lot Growth Rate)

当前资金 = 当前余额 + 信用额度,或当前可用保证金

计算示例:USDJPY,Lot Calculation Mode 为可用保证金,Risk Percent 5%,Initial Balance 70 万日元,当前资金 100 万日元,Lot Growth Rate 30%,SL 210 点

{70 万日元 +(100 万日元 − 70 万日元)× 30%} × 5% ÷ 21 万日元 ≈ 0.188 → 0.18 手(不足手数步长的部分舍去)

计算出的手数低于经纪商的最小手数时,将使用最小手数。此时风险会大于设定值。

2. 过滤器与交易控制

参数说明
Allowed Max Spread
[max]
允许交易的点差上限(点)。图中框内左上方的 8 就是该值。
Allowed range from average spread
[adj]
加到内部自动测得的平均点差(图表注释中显示为 [avg])上的点数。点差超过“平均值 + 该值”时,EA 会放弃交易。平均值上下波动时,允许的点差也会随之缓慢上下变动。其上限由 Allowed Max Spread 决定。
Buy / Sell 的 TP 和 SL
[Buy TP,SL / Sell TP,SL]
可以更改 TP 和 SL 的 EA,会在参数栏中显示。单位原则上为点(1 点 = 10 个最小报价单位)。
Stop new entries after loss
Loss that triggers entry stop
[cooldown h,pips]
仅限具备该功能的 EA。单次平仓亏损达到 Loss that triggers entry stop(点)以上时,在 Stop new entries after loss(小时)的时间内禁止新开仓。将小时设为 0 即为无效。详情请参见内置辅助功能第 5 项。
Operation Mode可以在参数中切换仅买入、仅卖出、双向运行、双向停止。MT5 中的操作也相同。不运行的一侧,其 TP 和 SL 会变暗显示。
Allow hedging
[2way]
true:允许对冲,false:不允许对冲。默认值因 EA 而异。为了在经纪商禁止对冲时能够切换,原则上标配此开关。
Weekend carry-over
[weekend]
true:持仓过周末,false:不持仓过周末。默认值因 EA 而异。设为 false 时,周五 23 点如果有持仓就会平仓。
Triple swap stop control
[3xSwapTrade]
仅限具备该功能的 EA。EA 会自动判断三倍隔夜利息的日期,并从该日换日前后起不再开仓。不再开仓的时间段因 EA 而异。
Summertime
[DST]
仅限受夏令时影响的 EA。EA 会在内部自动判断,并在图表注释中增加相应项目。
none:无 | American:美国式 | European:欧洲/英国式

3. 辅助功能(Utilities)

参数说明
Export trade info to CSV
[csv]
针对开仓、平仓、TP/SL、订单失败,分别将点差、跳空、滑点、延迟、浮动盈亏、隔夜利息等输出到 CSV。详情见后文。
Show P/L pips on chart
[pips]
根据终端中的交易历史,在图表上显示从开仓到平仓的连线和获得的点数。
Order Comment
[cmt]
输入的文本会显示在下单时的注释栏中。超过 31 个字符时,会自动从末尾截断。即使注释丢失,也会显示内部的默认注释。

4. 买入/卖出各策略的参数

参数说明
Enable Strategy1~运行:true / 不运行:false
TP [pips]可以更改最大 TP。部分 EA 的数值会根据情况变动。
SL [pips]最大 SL。部分 EA 的数值会根据情况变动。用于复利计算。同一策略有多个 SL 时,按运行中的策略里的最大值计算。最大值会在设置 EA 之后的初始化时显示在 Experts 选项卡中。

内置辅助功能

为了防止人为失误造成不必要的亏损,EA 具备了各种不易出现操作失误的辅助功能。另外,作为验证支持功能,也原样保留了我开发时使用的交易详情输出、在图表上显示交易历史等功能。

1. 自动图表设置

将 EA 拖放到外汇图表上后,图表会自动切换为正确的货币对和时间周期,右侧显示参数设置。K 线等的配色也会改变。

外汇以外的品种(加密货币、指数等),其品种名称后面附加的字符因经纪商而异。因此,请先自己打开正确品种和时间周期的图表,再设置 EA。

2. 图表注释

参数等简要信息配置在图表右侧,便于查看。弄错就可能引发事故的“Magic Number”和“手数”会换色并放大显示。

即使缩小图表、并排显示多个图表,也尽量能显示出来,因此内容紧凑,优先级高的项目排在上方。订单注释较长时,字体会变小。字体使用默认字体,以避免乱码。

并排显示多个图表的示例
并排显示多个图表的示例

3. 因状态错误等引起的图表变化

处于无法运行的状态时,图表的显示会根据情况变化,让人一眼就能看出。因通信中断等原因而停止运行时,除 Magic Number 和手数外,其余内容都会变暗。

正常运行时
正常运行时
未运行时(原因是设置或通信)
未运行时(原因是设置或通信)

因终端更新等原因 EA 被移除时,注释可能会保留,而右上角的 EA 名称变为空白。由于不会变暗,容易被误认为正常运行,请注意。

4. 资金不足判断

保证金不足的检查,以前就已作为标配提供。但以前存在这样的情况:距离 SL 还有余地,却用连小幅浮亏都承受不住的资金开仓。

因此,当资金承受不了一次 SL 时,EA 会放弃新开仓并发出警告。出现该警告时,请确认资金和手数。

资金不足警告
在注释下方显示警告(不会新开仓)
资金不足警告(放大)
同上(放大)

5. 冷却(Cooldown)

这是仅限具备该功能的 EA 的功能。上一次平仓出现较大亏损时,在一段时间内停止新开仓。用于在行情急剧变化时抑制连续开仓(过度交易)。

冷却期间,图表注释下方会以橙色显示剩余时间(时:分)。

冷却期间的图表显示
冷却期间的显示(剩余时间)
冷却期间的显示(放大)
同上(放大)

时间从出现亏损的持仓的平仓时刻开始计算。判定对象仅为同一货币对、同一 Magic Number 的最近一次平仓。买入和卖出两个方向的新开仓都会停止。平仓则照常进行。

6. Magic Number 重复警报

在同一个 MT4/MT5 内,如果认为 Magic Number 可能重复,会显示警报画面。

MT5 的警报画面
MT5 的警报画面

如果不关闭 MT4/MT5 终端就关机,结束时的处理不会执行,即使没有重复也可能出现警报。此外也可能意外出现。如果没有重复,可以忽略并继续设置。

7. GMT0 经纪商警告

对于 GMT0 经纪商中内部定义的几家,会显示警告提示。其他 GMT0 经纪商不在判定范围内,请您自行判断。

所支持的 GMT,请参见“其他补充”中的 GMT。

8. 夏令时自动控制

需要设置夏令时的 EA,会按经纪商自动判别。设置 EA 时,Experts 选项卡中会显示以下之一。

图表注释下方也会显示。判定以我所了解的经纪商为依据。其他经纪商的判定结果可能有所不同。如果显示结果与您所用的经纪商不符,请告知我。

Experts 选项卡中
Experts 选项卡中
图表注释下方
图表注释下方

9. 点差自动测量

EA 会自动计算平均点差,并在内部将该平均值加上几点后的值设为点差过滤器的值。不再需要每次设置 EA 时都去测量、确认点差。

10. 交易历史线与点数显示

在图表上直观地显示交易历史。更改时间周期后也会显示。不需要时,可在参数中切换 ON/OFF。会显示从开仓到平仓的连线和获得的点数。

MT4 在回测中也能显示。MT5 的回测仅在可视化模式下运行。

MT4 回测后的图表显示
MT4 回测后的图表显示

11. 测试器显示

回测时会显示年化恢复因子(YRF)。这是我在开发中用作参考的指标之一。

YRF = 盈亏 ÷ 回撤 ÷ 年数

MT4:回测结束后的 Journal 选项卡
MT4:回测结束后的 Journal 选项卡
MT4:优化时的 OnTester 结果栏
MT4:优化时的 OnTester 结果栏
MT5:回测结束时的 Journal 选项卡(YRF)
MT5:回测结束时的 Journal 选项卡(YRF)
MT5:优化后的结果栏(最大回撤)
MT5:优化后的结果栏(最大回撤)

12. 交易信息记录(CSV 输出)

可以将交易时的信息记录到 CSV 文件中。请在参数中切换。输出时,处理会相应变重。

TicketOrder TimeHourMinuteDay of WeekOrder TypeOrder PriceFill PriceAllowed Spread(pips)Average Spread(pips)Fill Spread(pips)Gap(pips)Slippage(pips)Latency(ms)Runtime(ms)Order RetriesProfit/Loss(pips)Max Floating Profit(pips)Max Floating Loss(pips)CommissionSwapGross P/LNet P/LHold TimeLot SizeSymbolTimeframeEA NameVersionMagic Number
22021.01.06 02:00:0020WedBuy139.933139.9333.80.80.60.60.0001------------------------0.1GBPJPY-M5Murasame6.4852431095
32021.01.06 06:25:00625WedSell139.926139.9263.90.90.70.00.0001------------------------0.1GBPJPY-M5Murasame6.4852431095
32021.01.06 11:00:00110WedClose140.1140.13.90.90.7-0.70.0001-17.48.5-45.20.00.0-16.92-16.924:35:000.1GBPJPY-M5Murasame6.4852431095
22021.01.08 09:04:5894FriTP141.099141.0993.90.90.90.00.0001116.6116.7-16.20.02.69112.19114.8855:04:580.1GBPJPY-M5Murasame6.4852431095
62021.01.19 01:00:0010TueBuy140.835140.8353.90.92.82.80.0001------------------------0.1GBPJPY-M5Murasame6.4852431095
62021.01.20 10:34:591034WedTP141.884141.8843.90.90.70.00.0001104.9106.3-5.40.00.67101.06101.7333:34:590.1GBPJPY-M5Murasame6.4852431095
82021.01.21 01:10:00110ThuSell141.456141.4563.90.92.1-0.10.0001------------------------0.1GBPJPY-M5Murasame6.4852431095
82021.01.21 06:20:00620ThuClose141.561141.5613.90.91.1-1.10.0001-10.50.4-26.70.00.0-10.15-10.155:10:000.1GBPJPY-M5Murasame6.4852431095
CSV 输出示例(MT5)。可以左右滚动
保存位置实盘/模拟运行时:MQL4 或 MQL5 文件夹内的 Files
回测时(MT4):MT4 数据文件夹内的 tester\files
回测时(MT5):测试器专用文件夹内的 MQL5\Files(例:MetaQuotes\Tester\(ID)\Agent-127.0.0.1-(端口号)\MQL5\Files)
文件名EA 名称_账号_TradeLog.csv(MT4/MT5 通用。每个 EA 单独一个文件)
分隔符制表符分隔
项目Ticket / Order Time / Hour / Minute / Day of Week / Order Type / Order Price / Fill Price / Allowed Spread(pips) / Average Spread(pips) / Fill Spread(pips) / Gap(pips) / Slippage(pips) / Latency(ms) / Runtime(ms) / Order Retries / Profit/Loss(pips) / Max Floating Profit(pips) / Max Floating Loss(pips) / Commission / Swap / Gross P/L / Net P/L / Hold Time / Lot Size / Symbol / Timeframe / EA Name / Version / Magic Number

内置逻辑与技术

名称说明
服务器时间 0 点时段禁止新开仓点差容易扩大的 0 点时段,原则上不开仓。平仓则因逻辑而异,有的会在此时段平仓,有的不会。
平仓点差过滤器为了避免早晨点差扩大时平仓,平仓也配备了点差过滤器。但触及 SL 时无法控制,该过滤器不起作用。因逻辑特性,也有 EA 不具备该过滤器。
跳空过滤器上一根 K 线收盘价与当前价格之差达到一定值以上时,不开仓。该值按 EA 分别设置。许多逻辑以上一根 K 线的收盘价为判定依据,成交价偏离较远会不利,该过滤器的目的就是抑制这种情况。对于价格跳变后成交的问题,也有防范作用。平仓时不起作用。交易时发生了多大的跳空,可以通过 CSV 输出确认。
防止跳价成交过去曾出现过开仓后价格立即跳变、触及 SL 的情况。推测是在价格显示异常值时发生的。点差过滤器无法防止,SL 的设置时机和滑点设置也无法防止。可能防止这种情况的方法,已标配在所有能够搭载的 EA 中。
年末年初控制从 12 月 20 日前后(因 EA 而异)到次年 1 月 3 日,不再开新仓,只进行平仓。期间想提前平仓时,请手动操作。
保证金不足与交易许可检查防止以超出保证金的手数下单,或在 MT4/MT5 不允许交易的状态下下单。这样可以避免因订单错误而持续向服务器发送无用的通信。
AMPAC
(Anti Miss Positioning Auto Control)
这是我自主研发的提高成交能力的技术。在 MT4/MT5 中,常会因通信导致报价延迟到达,或 EA 处理拥堵等原因,使订单被跳过。通过我独有的重复下单和轻量化来弥补,从而提高成交能力。
Magnet coding这是我为 MT4 自主研发的、让 EA 在实盘中正确运行的编码技术。MT4 有时不会按代码运行,回测中有效的过滤器在实盘中可能不起作用。这是避免该问题的一种方法。它并不完美,仍可能出现误差,但与 2024 年以前制作的 EA 相比,同一期间的回测与实盘之间的误差有缩小的趋势。

其他补充

GMT

我的 EA 大量使用日线,因此只能在冬季 GMT+2、夏季 GMT+3 且每周有 5 根日线的经纪商处使用。在其他 GMT 下,每周会有 6 根日线,日线与 4 小时线的计算会发生变化,逻辑就不成立了。

图表显示的 K 线数量

大多数 EA 需要 1000 根以上。设置 EA 时,“Common”选项卡(MT4 为“About”选项卡)中的简要规格里写有所需的 K 线数量。请设置为不少于该数量。

周末的设置

周末图表不走动,因此在 MT5 中设置 EA 后,图表注释可能不显示。此时请再次在参数画面按“OK”,可能就会显示了。

注意事项与免责声明