Isobar Event Shield
- 实用工具
- 版本: 1.0
- 激活: 5
Isobar Event Shield 在 MetaTrader 5 中保护您的交易免受经济新闻冲击。它读取终端内置的经济日历,对影响您交易品种的每次数据发布进行倒计时,并在发布前不久对您或其他智能交易系统已持有的仓位和挂单执行您选择的保护措施。它从不自行开仓。
快速入门
- 将工具加载到一个图表上(每个终端一个副本),并在终端工具栏中启用 Algo Trading。
- 图表品种的基础货币和报价货币会被自动监控。可在 Extra Currencies to Watch 中添加更多货币(例如 USD,EUR,JPY),并将 Protection Scope 保持为 Linked,以保护使用这些货币的所有品种。
- 选择 Open Position Action 和窗口长度(Window Opens 和 Window Closes,默认 15 和 10 分钟)。
- 保持面板在图表上。窗口打开时保护会自动执行;窗口关闭后,暂存的挂单会重新挂出。
- 想查看效果时,按服务器时间输入一个几分钟后的手动事件,例如 14:35 USD Test,观察状态变为 SHIELD ACTIVE。
面板按钮
- [-] / [+]:将面板收起为显示倒计时的小胶囊,或重新展开。
- <>:将面板移动到下一个图表角落(左上、右上、右下、左下)。
- SHIELD NOW:立即对当前范围执行持仓操作并暂存挂单(Linked 时为使用任一监控货币的所有品种)。以此方式暂存的订单,如果当前或下一个窗口在 Threat Meter Horizon 内开始,则在该窗口结束后恢复,否则在 Window Closes 分钟后恢复。
- FLATTEN SCOPE:平掉范围内的所有仓位。第一次点击进入待确认状态(按钮显示 CONFIRM FLATTEN ?),4 秒内再次点击才会执行。挂单不受影响。
- AUTO ON / OFF:OFF 时工具仅做监控。倒计时和提醒照常进行,但窗口打开时不会修改任何仓位或订单。
- IMPACT HIGH / MED+ / ALL:雷达、窗口、提醒、图表线条和锁定标志所使用的最低重要性。
- SYMBOL / LINKED / ACCOUNT:保护范围,见下文。
- HARD ON / OFF:硬性禁区,见下文。它独立于 AUTO 工作。
按钮的更改在工具运行期间一直有效,包括切换周期或品种之后。修改输入参数或重新加载工具会恢复为输入参数的值。
面板读数
- 状态徽章:ALL CLEAR(近期无窗口)、SHIELD ARMED(下一个窗口将在提醒提前时间内开始)、SHIELD ACTIVE(窗口已打开)、WINDOW OPEN(AUTO 为 OFF 时窗口已打开)、MONITOR ONLY(AUTO 为 OFF)、ALGO TRADING OFF(启用 Algo Trading 之前保护无法执行)、NO EVENT FEED(日历不可用且无手动事件)、TESTER MODE。指示灯和左侧色条使用状态颜色,窗口打开期间指示灯闪烁。
- 徽章旁的文字:AUTO 或 MANUAL、持仓操作以及窗口分钟数,例如 15/10m。
- NEXT RELEASE 卡片:货币和事件名称、大号倒计时(发布前为 T-,发布后为 T+)、服务器时钟、窗口时间,以及 THREAT 指示条:从 0%(距离窗口还有 Threat Meter Horizon 分钟)上升到 100%(窗口已打开)。
- EVENT RADAR:接下来的五次发布。每行显示重要性方块(红色为高、琥珀色为中、灰色为低)、星期、时间、货币、名称、数值(F 预测值、P 前值、公布后为 A 实际值)和剩余时间。LIVE 表示其窗口已打开。右上角显示数据源状态(CAL ONLINE 及事件数、CAL ERROR 及错误代码,或 TESTER: MANUAL FEED)和重要性过滤。
- EXPOSURE:按当前范围和 magic 过滤统计的仓位数、手数、含隔夜利息的浮动盈亏、挂单和暂存订单,以及图表品种的点差(点)。SPREAD LOAD 将当前点差与窗口外学习到的正常水平比较(x3.0 表示正常的三倍,BASE 为正常点差)。
- 底部一行:最近一次操作或提醒。
- 图表上:每个即将到来的发布在其时间处绘制带名称的虚线竖线,并以阴影区域标出其窗口(红色为高、琥珀色为中、灰蓝色为低)。会重叠的标签自动错开,鼠标悬停在线上可查看事件和时间。
窗口内会发生什么
窗口打开时,Open Position Action 会针对每次发布执行一次,作用于范围内且符合 magic 过滤的所有仓位:
- Alert only (no position changes):不做任何修改。
- Lock winners at breakeven + buffer:盈利至少达到 Minimum Profit Before Breakeven Lock 点的仓位,其止损移至入场价加 Breakeven Lock Buffer。若现有止损更优则保留;遵守止损和冻结水平;亏损仓位保留原有止损。
- Reduce exposure by %, then lock breakeven:平掉每个仓位的 Exposure Reduction 百分比(按手数步长向下取整;若剩余量低于最小手数则跳过),每个窗口只执行一次,然后执行保本锁定。
- Bank positions that are in profit:平掉盈利加隔夜利息为正的仓位。
- Close every position in scope:平掉范围内的所有仓位。
启用 Park Pending Orders 时,范围内的挂单会被撤下并保存全部设置。窗口结束后按原样重新挂出。若价格在窗口期间已被穿越或订单已过期,该订单会被放弃并记录日志。若市场关闭、连接中断或 Algo Trading 关闭,则每 60 秒重试一次。关闭 Re-Arm Parked Orders 时,撤下的订单将被永久取消。暂存订单保存在 MQL5\Files 中,重启后将工具加载到同一品种时会重新挂出。
硬性禁区:窗口打开期间,受影响品种上的每个新仓位都会立即被平掉(净额账户只平掉新增部分),每个新挂单都会被暂存到窗口结束。此功能适用于手动交易和符合 magic 过滤的其他智能交易系统。未启用时,窗口期间新开的仓位不受影响。
提醒会在以下情况发送:每次发布之前(Pre-Release Alert Lead)、保护执行时、AUTO 为 OFF 时窗口打开、拒绝新入场时,以及暂存订单重新挂出时。
保护范围
- Symbol:仅图表品种。
- Linked:基础货币或报价货币为发布货币的所有品种。
- Account:账户上的所有仓位和订单。
Magic Filter:-1 表示所有交易,0 表示仅手动交易,其他值表示使用该 magic 编号的智能交易系统。
手动事件
按服务器时间输入事件,以分号分隔。yyyy.mm.dd hh:mi CCY Label 表示指定日期一次,hh:mi CCY Label 表示每天重复。CCY 为三字母货币代码,或 ALL 表示整个账户。手动事件始终视为高重要性,并且是策略测试器中唯一的数据源。
示例:2026.10.09 15:30 USD FOMC Minutes; 21:55 ALL Rollover
暂停您自己的智能交易系统
Isobar 发布任何智能交易系统都可读取的终端全局变量:ISOBAR_LOCK(任一窗口期间为 1)、ISOBAR_LOCK_ 加每个监控货币(例如 ISOBAR_LOCK_USD)、ISOBAR_LOCK_ 加图表品种(例如 ISOBAR_LOCK_EURUSD),以及 ISOBAR_NEXT_SEC(距下一次发布的秒数,无发布时为 -1)。移除工具时这些变量会被删除。在您的 EA 入场逻辑之前加入这一行:
if(GlobalVariableCheck("ISOBAR_LOCK") && GlobalVariableGet("ISOBAR_LOCK") > 0.5) return;
典型设置
- 保护手动交易(默认):Lock winners at breakeven + buffer,开启 Park Pending Orders,范围 Linked。
- 重要新闻前后不持仓(例如自营交易公司规则):Window Opens 2,Window Closes 2,Close every position in scope,开启 Hard Blackout,范围 Entire account。
- 暂停另一个 EA 但不改动其交易:Alert only (no position changes),关闭 Park Pending Orders,并在该 EA 中读取 ISOBAR_LOCK。
- 将一篮子货币对的风险减半:Reduce exposure by %, then lock breakeven,Exposure Reduction 50,Extra Currencies to Watch 设为 USD,EUR,GBP,JPY。
输入参数
Economic Calendar Radar
- Minimum Event Importance(High importance only):其他选项为 Moderate and high importance 和 All events。
- Extra Currencies to Watch(空):以逗号分隔的货币代码。
- Radar Lookahead(36):向前加载的小时数,1 至 168。
- Calendar Refresh Interval(60):日历刷新间隔秒数,最少 15。
- Manual Events(空):见手动事件。
Shield Window
- Window Opens(15)和 Window Closes(10):发布前后的分钟数,0 至 240。
- Auto-Execute Shield When Window Opens(true):AUTO 按钮的初始值。
- Protection Scope(Every symbol sharing the event currency):范围按钮的初始值。其他选项为 Chart symbol only 和 Entire account。
- Magic Filter(-1)。
Shield Policy
- Open Position Action(Lock winners at breakeven + buffer)。
- Breakeven Lock Buffer(20)和 Minimum Profit Before Breakeven Lock(50):单位为点。
- Exposure Reduction(50):减仓操作平掉的手数百分比。
- Park Pending Orders During Window(true)和 Re-Arm Parked Orders After Window(true)。
- Hard Blackout: Reject New Entries In Window(false):HARD 按钮的初始值。
- Max Slippage for Closes(30):点。
Alerts
- Pre-Release Alert Lead(30):发布前的分钟数,0 为关闭。
- Terminal Pop-Up Alerts(true)、Sound Alerts(true)、Push Notifications to Mobile(false;需要在终端通知设置中填写 MetaQuotes ID)。
Cockpit & Chart Overlays
- Cockpit Dock Position(Top left)、Horizontal Margin(16)和 Vertical Margin(28):面板位置,单位为像素。
- Threat Meter Horizon(120):THREAT 指示条和 SHIELD NOW 暂存所覆盖的分钟数。
- Draw Release Lines & Blackout Zones(true)和 Max Events Drawn On Chart(6)。
- Publish Lock Flags as Global Variables(true)。
说明
- 适用于对冲和净额账户,以及货币出现在日历中的任何品种(外汇、贵金属、指数、能源)。
- 每个请求发送前都会检查止损和冻结水平、手数限制并经过 OrderCheck 验证。不使用 DLL 和网络请求,移除工具时所有图表对象一并删除。
风险声明
Isobar Event Shield 是风险管理工具。它无法阻止新闻前后的滑点、跳空或点差扩大,也不保证盈利或避免亏损。请先在模拟账户上测试您的设置,再用于真实账户。
