长期以来,我不得不处理需要处理大量配置参数的工作。只要有可能,我就通过DLL创建一个特殊的对话框 来解决这个问题,在这个对话框中,参数是有标签的。初始化后,该窗口被隐藏,然后程序照常运行。
如果在MQL中也有这样的东西就好了,这样它就不必在一个巨大的参数列表中寻找。如何实现它的想法非常有趣。只是语法上应该略有不同。
input struct VolumeParams // Здесь название вкладки { // Содержимое вкладки double Lot1 = 0.01; double Lot2 = 0.02; double LotRatio = 1.5; };
那么这样就更好了。
struct VolumeParams { double lot; //название параметра double LotRatio; //название параметра int tp; //название параметра int sl; //название параметра int orders; //название параметра }; VolumeParams ParamBuf[5]; input ParamBuf[0]; // Здесь название вкладки input ParamBuf[1]; // Здесь название вкладки input ParamBuf[2]; // Здесь название вкладки input ParamBuf[3]; // Здесь название вкладки input ParamBuf[4]; // Здесь название вкладки
我认为,这是个好主意,与OOP的概念一致。到目前为止,我看到了2个选项。
1)FrameInputs 风格。
parameters
[输出] 带有参数名称和值描述的字符串数组
参数_count
[out]参数[]数组中的元素数量。
2) 在MqlParams 风格中。
我总是采用第一种方法。
当专家顾问被放置在交易中时(无论是在模拟账户还是真实账户上)--参数是固定的--只有一个参数--风险百分比--被传递给专家顾问的类。所有其他参数都写在相同的结构中,并在专家顾问内部定义--要么在构造函数中,要么在一个特殊函数中。
没觉得有什么问题。你必须在类的构造函数中规定一个模板,就这样了。
嗯,你还没有和客户谈过)。
...在这里,客户想要10个输入,每个步骤都有自己的tp/sl/lot/trall/信号输入。
而这一切都在测试器中得到了优化)
嗯,你还没有和客户谈过)。
...所以客户想要10个输入,每个步骤都有自己的tp/sl/lot/trall/信号来输入。
而这一切都在测试器中得到了优化)
那么,这与本支部的主题有什么关系?
那么,这与这个主题有什么关系呢?
讨论本身确实略微偏离了主题标题。现在更多的是关于TC帖子的第二部分。
如果我们做一个MQL语言的扩展,把输入变量放在结构中,会怎么样?反正它与C++和C不兼容,因为有指针的模仿。那么,为什么不走得更远呢?
然后你可以将变量ivars传递给算法类,复制,等等。
那么,这与这个主题有什么关系呢?
所以它是这样的,要写这一大堆的参数,只要定义好结构,把它放在输入参数里就可以了。
我是指EA-in-class方法。在向EA传递输入参数 时有一个问题,该EA的类是在一个单独的.mqh文件中。我使用两种方法
那如果我们做一个MQL扩展,把输入变量放在结构中呢?反正它与C++和C不兼容,因为模仿指针。那么,为什么不走得更远呢?
然后你可以将变量ivars传递给算法类,复制等。
把这个想法放在头脑风暴的层面上 ))