如今的专家顾问(EA)和自定义指标的设置复杂度越来越高。例如,Blessing 3 EA 有多达118行输入,而The Beast EA 则高达155行。随着每个新版本的发布,输入参数的数量也在不断增加。一些更高级的枢轴指标甚至有数十个参数。MT4的设计已经有些年头了,它的输入对话框只能显示8行,且无法调整大小。
大多数交易者可能对此并不介意,因为他们往往一次性设置好参数后就不再更改。但如果你是那种每天都在测试、优化或尝试不同设置的交易者,那么我相信这个工具会对你非常有用。
InputResizer 是一个一次设置、长期受益的工具。只需将它附加到一个图表上,所有在你电脑或VPS上运行的MT4实例的输入窗口都将变得可调整大小。

这里提供了两个版本 - 指标和EA,功能相同。请选择其中一个版本使用;请勿同时使用指示器和EA。
指示器版本 - InputResizer.mq4:
该指标依赖于接收的tick数据。因此,如果你选择这个版本,你需要等待一个tick,直到指标发现你打开的窗口并进行管理。因此,建议将其附加到一个接收tick频率较高的图表(如EURJPY或GBPJPY)。
EA版本 - InputResizerEA.mq4:
使用EA的优势非常明显;它在循环模式下运行,不依赖于tick数据。它每300毫秒(默认设置)检查一次窗口,因此你无需等待。不过,如果在市场关闭时启动MT4,你需要切换WeekendMode(如下所述),或者使用tick生成器工具或脚本。
使用EA的一个小缺点是,它会占用一个图表,你不能在其上使用其他EA。因此,建议将其附加到一个专门的图表(M1-W1,货币对无关),将此图表最小化,并不要用于其他用途。
设置:
默认情况下(如上所示),InputResizer将在每个输入窗口首次出现时,将其放置并调整到指定的坐标(以像素为单位,相对于屏幕左上角)。然后,如果输入窗口(根据EA/指标名称区分)再次出现,最后一次关闭窗口时的位置和大小将被应用。
如果 RememberSize=false,所有窗口将在InitCustom(如果为true)坐标下打开;如果InitMaximized=true,则最大化(InitMaximized会覆盖InitCustom),或者在默认位置和大小下打开,如果两个都为false。
如果 RememberSize=true,上述规则仅适用于窗口首次出现时。然后,在每次窗口关闭时,坐标将被存储,并在下次出现时重新应用。存储的坐标将覆盖InitCustom和InitMaximized。
如果 Individual=true,坐标将为每个EA/指标名称分别存储。此设置仅在RememberSize=true时相关。
SleepTime:(仅EA)扫描之间的时间,单位为毫秒。更小的数字会导致更快的响应,但会增加CPU负载。
WeekendMode:(仅EA)如果设置为true,则无需使用tick模拟器即可运行。用于周末测试!在正常交易时间请将其设置回false,以防止意外行为。
最后说明:- 为了使InputResizer正常工作,必须允许DLL。如果不允许,你将收到警告信息。
- 如果你第一次打开指标/EA的输入窗口,它不会调整大小,直到你选择输入选项卡。
- 如果你使用EA版本并希望在运行时更改其设置(F7),请切换到月线时间框架,进行所需的更改,然后切换回任何较低的时间框架。
- 坐标存储在全局变量中;它们会一直存在,直到你删除它们。你可以通过按F3并删除所有以'iRes'开头的全局变量来随时执行此操作。
更新:
2011.06.25: 修复bug:“z”字符拼写错误(感谢 symr 发现这个bug)。
2011.06.29: 升级:不再需要输入本地化控制,更可靠的操作,能够处理在不同MT4实例上打开的多个输入窗口。
2011.07.10: 修复bug:从指标列表中(Ctrl+I)打开的指标输入框无法找到。
2014.02.08: 重要升级:增加“_600”版本,修改为与MT4构建600及更新版本兼容。
评论 0