处理优化结果
组织定制处理策略测试中优化结果的函数。他们可以在优化期间,在测试代理中调用以及EA交易和脚本中本地调用。
当您在策略测试中运行EA交易时,您可以基于简单类型或简单结构创建您自己的数据数组(它们不包含字符串,类对象或动态数组的对象)。该数据设置可以在称为帧的指定结构中的FrameAdd()函数进行保存。EA交易优化期间,每个代理发送一系列帧到程序端。接收的所有帧都写在terminal_directory/MQL5/Files/Tester expert文件夹的*.MQD文件中,名为Expert Advisor。它们按照从代理接收的顺序编写。在客户端从测试代理接收的帧生成TesterPass事件。
这些帧可以存储在计算机内存和指定名称的文件中。MQL5语言对帧数无设限。
MQL5云网络中的内存和磁盘空间限制
以下限制适用于在MQL5云网络中运行的优化:EA交易不得向磁盘写入超过1GB的信息或使用超过4GB的内存(RAM) 。如果超出限制,网络代理将无法正确完成计算,您将不会收到结果。但是,您需要为计算所花费的所有时间付费。
如果您需要从每个优化过程获取信息,请发送帧而不写入磁盘。为了避免在MQL5云网络计算期间在EA交易中使用文件操作,您可以使用以下检查:
int handle=INVALID_HANDLE;
|
函数 |
动作 |
---|---|
移动阅读帧的指针至起点并重置之前设置的过滤器 |
|
设置帧阅读过滤器并移动指针至起点 |
|
阅读帧并移动指针至下一个 |
|
接收形成帧的 输入参数 |
|
添加数据帧 |
|
在策略测试优化EA期间,接收范围值的数据和输入变量的改变步骤 |
|
在策略测试优化EA期间,指定使用输入变量 :值,改变步骤,初始值和最终值 |
另见