Тестер стратегий позволяет тестировать и оптимизировать торговые стратегии (советники) перед началом использования их в реальной торговле. При тестировании советника происходит его однократная прогонка с начальными параметрами на исторических данных. При оптимизации торговая стратегия прогоняется несколько раз с различным набором параметров...
enum Enum_Symbol {AUDJPY,AUDUSD,CHFJPY,EURAUD,EURCAD,EURCHF,EURGBP,EURJPY,EURRUR,EURUSD,GBPAUD,GBPCAD,GBPCHF,GBPJPY,GBPUSD,USDCAD,USDCHF,USDJPY,USDRUR};
input Enum_Symbol SIMBOL_1 = AUDUSD; // Выбор пары для ...input Enum_Symbol SIMBOL_2 = AUDJPY; // Выбор пары для ...
...
Переменные должны быть объявлены перед их использованием. Для идентификации переменных используются уникальные имена. Описания переменных используются для их определения и объявления типов. Описание не является оператором. Индексом массива может быть только целое число. Допускаются не более чем четырехмерные массивы. Нумерация элементов...
Главным преимуществом торговых терминалов MetaTrader является возможность создания автоматических торговых систем, способных совершать торговые операции без вмешательства трейдера, что позволяет исключить влияние психологии на результаты торговли. Для этого нужно сформулировать торговую стратегию и реализовать ее в виде программы на языке MQL...
Добавил тему Оптимизация. Граничные Условия Параметров Решаю задачку о автоматизации проверки стратегий, это типа как тут в соседней ветке описывалось, но по другому. Проблема :Разные стратегии имеют разный набор по кол-ву и типам оптимизируемых параметров. Решение:Нормировать все параметры к диапазону Добавил тему Вечерние размышления о...
..."谁需要它?""?
...这里有足够多的人也能在终端图上画漫画。
完全正确!有明显的交易东西,然后是过度的东西。
这里的人抱怨说,终端不知道莫斯科交易所返回的错误!(而且多年来一直在抱怨......)。
另外,有一个明显的交易需求,就是有一个活跃货币对的列表(至少从市场概览窗口),但这是不存在的。
没有办法明确地从市场概览窗口获得一个货币对的勾选--你必须在某个地方派出一些间谍......。(我知道哪些人和如何做,这很容易,但这是很荒谬的)
或者没有琐碎的可能性来整理优化结果......每个优化东西的人都有这样的需求,一直以来...(是的,excel很好,但它不是一个终端,而且把设置转回来很不方便。甚至从优化结果中复制某个参数的可能性也被取消了)。
这到底是怎么回事!?
为什么我需要在终端机上的漫画...(或至少是多头的潜在可能性),当没有明显的交易东西时!
元引号没有冒犯的意思,但位置有些不对......是一个事实的问题。这是我根据自己使用mql5的经验所写的。如果说mql4让我感觉到交易功能已经加入了C语言,那么在mql5中,语言和交易功能都已经淹没在终端内逻辑的迷宫中了。很快就会像在windows上用api编程一样......。
但是,我认为,你必须更接近生活。而生活就是交易的需要。例如,这是一个很好的机会,可以在终端一键开启交易!这很好。
也就是说,你隔着屏幕看,获得必要的信息。用鼠标点击 - 打开一个位置。没有什么不必要的!
为什么我需要知道一个订单是如何逐渐转化为一个头寸的?这不是一个交易员的问题,这是一个内部问题!你不会在每次心跳后给血管下达微压缩的命令。而你并没有给肠子下达如何工作的命令。在mql中,所有这些终端内的问题都被甩给了程序员。而且还投入了大量的精力。而且没有明显的东西。
你想知道另一个有趣的事实吗?如果你正确地做了所有的处理,其中一些已经在文章中描述过了,你不会在这样的交易机器人中找到交易算法...这是很严肃的!这是某种不平衡的现象。到目前为止,mql5是一个由程序员为程序员创造的玩具...为了编程而编程,具有令人印象深刻的编程能力。
好吧,好吧,我想很多人都已经把这件事告诉了元老级的人,所以可能没有必要再写。但印象却堆积如山...我不得不说出它们))。这对神经系统有好处))。
好吧,这个话题有点不完整。
所以,我不得不让测试者拿起一对,此外还有其他价值。
而为了不从手工写出每一对和海量的变量,我在寻找一种方法,通过标准的手段或某种更短的方式来完成这个任务。
这里是最后的变体--它可能对某人很有用...这是我写的,而且很有效。
1- 在市场概览窗口中,打开所有的符号,然后右键点击--保存。我们得到一个带有列表的文本文件。在我的情况下,只有外汇在那里,所以如果你有其他东西在那里,自己添加处理。
2- 从文件中的配对,将它们插入枚举中。在专家顾问变量的声明 中写道。
就这样,测试者将能够从列表中搜索字符。
从设置中的下拉列表中选择配对也很方便。请注意,为了进行优化,你需要在第一次编译之前立即将整个列表安装到程序中,因为后来添加的符号可能在最终的优化设置中不可见...这就是这样的 "细微差别"。如果任何一个元老级的人读到这篇文章--你可以纠正这个错误...警惕的版主一定会读到它...
还有一些东西要加到OnInit中。
在程序本身中,将选定的字符放入一个字符串变量,看起来像这样。
自然,有一些细微的差别,我把实施的方式带到适合我的目的......
从手工操作来看,只有一次(对每个经纪人)保存文本文件并在其中安排逗号,然后再复制到enum。
告诉我吧!
如果你是一个程序员,来到这里是为了通过编程赚取一些钱 - 那么 无疑!
但是,如果你必须用最简单的方式来描述一个想法,那么我们就有了堕落!但说实话,我并不想讨论这个问题。你自己也很清楚这一点。而你写的是--为你的编程利基辩护。
我向自由职业者提出申请,我自己也写...一个人并不能阻止另一个人!
Oops))而如果我宣布自由职业者的结果,会发生什么呢))))但嘘,这种事情不能大声说出来。)
还有元引号--一般来说,当然做得很好。你想自己写。如果你想的话--就订购吧!大家都很高兴,无论是程序员还是交易员))应该是这样的,他们用自己的活动给每个人提供机会。
非常感谢你的好故事!他们有足够的能力来弥补其他所有的搞砸了的事情。但如果能解决这些问题也是不错的。
我甚至建议先不要改进任何东西,可以用多普勒。
但他们更清楚))。
真的,如果你把字符保存到一个文件中,并在编译前把它们从那里复制到代码中,那还有什么可讨论的。
而在这种行为的基础上,你说到终端的 "缺点"。
不是针对你,你只是作为一个程序员很弱,我希望你能成长和发展。好运!
如果你将字符保存到一个文件中,并在编译前将它们从那里复制到代码中,那还有什么可讨论的。
而在这种行为的基础上,你又谈到了终端的 "缺点"。
不是针对你,你只是作为一个程序员很弱,我希望你能成长和发展。好!
你误解了!我不是一个程序员,无论是工作还是教育,都不是!
这并不妨碍我为微控制器,或为安卓,或在mql4 mql5上编写我需要的一切。我甚至用16种代码和汇编程序来写... 你一直在用代码写)吗?在现实中,16个财富代码?这不是一种高级语言,你需要知道CPU是如何设置和工作的...
将本地上市称为代码是一种笑料...
我不需要任何花招,直接的最佳代码。但在我的代码中,逻辑通常比别人的更复杂,而且效率更高。虽然我无法与职业程序员竞争,当然))。但这是他们的面包和黄油,而对我来说,这只是第二个爱好。甚至不是我的主要爱好。我可以用电焊机焊接薄金属而不烧毁,我可以用很多东西编写程序......设计和组装简单的电子产品...这些都不是我的工作!))我的意思是,我对适应无意义的语言规则不感兴趣,我对结果感兴趣。如果你不得不绕道而行,那就太糟糕了。它在μl4中比较简单。而且我不认为有任何客观理由让它变得更复杂。
至于这个主题)建议一个更好的解决方案。
我描述的目的是--这样在运行程序之前,你可以在优化参数列表中选择对。
还有,这样测试人员就可以通过对--这是主要的!
不要提供kodobase专家的变种))与kodobase的解决方案相比,我的解决方案是最优雅的。
批评是很容易的!
你说我的执行力很差!建议一个更好的方案。我会感谢你的!
因为在某些时候,我将回到多币种...也许。
或者写:"我想不出更好的办法--对不起!"
是的--我不接受写程序的 命令,我不吃程序员))。你不明白!我不是一个程序员,无论是工作还是教育,都不是!
这并不妨碍我为微控制器或为安卓系统编写我所需要的一切,或在mql4 mql5中编写。我甚至用16种代码和汇编程序来写...你一直在用代码写)吗?在现实中,16个财富代码?这不是一种高级语言,你需要知道CPU是如何设置和工作的...
将本地上市称为代码是一种笑料...
我不需要任何花招,直接的最佳代码。但在我的代码中,逻辑通常比别人的更复杂,而且效率更高。虽然我无法与职业程序员竞争,当然))。但这是他们的面包和黄油,而对我来说,这只是第二个爱好。甚至不是我的主要爱好。我可以用电焊机焊接薄金属而不烧毁,我可以用很多东西编写程序......设计和组装简单的电子产品...这些都不是我的工作!))我的意思是,我对适应无意义的语言规则不感兴趣,我对结果感兴趣。如果你不得不绕道而行,那就太糟糕了。这在μl4中是比较容易的。而且我不认为有任何客观理由让它变得更复杂。
至于这个主题)建议一个更好的解决方案。
我描述的目的是--这样在运行程序之前,你可以在优化参数列表中选择对。
还有,测试人员可以通过对--这是最主要的一个!
不要提供kodobase专家的变种))与kodobase的解决方案相比,我的解决方案是最优雅的。
批评是很容易的!
你说我的执行力很差!建议一个更好的方案。我会感谢你的!
因为有一天我将回到多币种...也许。
或者写:"我想不出更好的办法--对不起!"
是的--我不接受写程序的 命令,我不吃程序员))。如果你想知道,我在学生时代也涉足过汇编程序,但我认真地只用C、C++和Postgre上的SQL来写作。 这只是为了我的论文,但这个项目或多或少是严肃的,CAD系统,什么的)
我很高兴你是一个多才多艺的人)你知道C语言和其他语言的圣经要比MQL5复杂得多,它要比MQL5简单得多,我认为。 你知道,关于你的水平--在你的帖子中提到的问题,其解决方案很简单,但你骂终端和MQL,也就是说,你不学习如何做和发展,而是骂别人的工作,即使不是没有缺陷,但这样的工作很辛苦。这种方法对我来说是陌生的,无法理解的。但也许这只是一种印象,我错了。
至于主题--我已经忘记了细微的差别,我也懒得去阅读和消化。 简而言之--如果你想在优化过程中对所有的字符进行搜索--那么在OnInit by number中,输入参数只是一个符号的数字,二,三,如在猫头鹰中使用。
如果你手动选择特定的符号来实现自动化 - 那么你的解决方案是不好的,因为当你用其他符号改变经纪人时需要改变代码。手动输入两个符号比较容易。如果你懒得输入符号,你可以在市场概览中输入它们的编号。
如果你懒得键入字符--在《市场评论》中给它们编号。
在直接查询它们的名字之前,它们并不在市场审查测试器中。
你说我的执行力很差!建议一个更好的方案。我会感谢你的!
枚举中所有已知货币的组合+后缀作为字符串参数?
至于这个话题--我已经忘记了其中的细微差别,而且我也懒得去阅读和钻研。
善于交谈的人))))而你在评判我))。
你的方式...这些数字与夫妻之间相差甚远。这是不方便的。如果只有几对就好了,但如果你需要所有的对? 顺便说一下,你确定你不需要吗?
是的,你可以找出窗口里有多少对,并丢弃测试者提供的额外数值...但它已经运行扔下了管道,即不太有用的优化选项。
另外,在优化过程中,你不知道该进程是在哪一对上运行。你需要打开一个窗口,数一数,再数一数!你不打算陷入困境?
在我的情况下--只是复制-粘贴,对经纪人来说,一次就够了......
你在批评我吗?
要么复制一次并在未来自由、舒适、清晰地工作,要么不断地在市场概览窗口中计算数字......。 这是某种工作狂,在平))))。
枚举中所有已知货币的组合+后缀作为字符串参数?
是的,也是一种选择,比阿列克谢的更能说明问题。但对于经纪人来说,这套方案是不同的。可能会有未使用的组合,这将降低测试器的效率。
是的,而且这些货币都需要找到并得分,这比一次性复制更难。我个人))。我正在考虑这个方案。
也许其他人知道一些其他的选择))))。