//index_currency aud,cad; // работает
index_currency *aud,*cad; // не работаетintOnInit(){
aud = new index_currency; cad = new index_currency; // неправильно работает
aud.create(AUDX,100,PERIOD_M1,PRICE_CLOSE);
cad.create(CADX,100,PERIOD_M1,PRICE_CLOSE);
1 type Class declaration ... Constructor Name; {Overload;} ... end; 2 type Class declaration ... Constructor Name(Arguments); {Overload;} ... end; Ключевое слово Constructor определяет процедуру Name конструктора для класса. При создании объекта, вы вызываете метод Constructor класса, а не объекта...
你好。我有这个问题,也许这是个简单的问题,但我已经很累了。
我一直在测试历史上的EA,我一直得到这个错误
12:17:41 TIC:加载成功
12:19:07 测试生成器:不匹配的数据错误(2010.07.08 00:00的低价87.6580没有从最低时间段达到,低价87.6590不匹配)。
12:19:07 测试生成器:不匹配的数据错误(在2010.08.30 12:00超过了音量限制6029)。
12:19:09 测试生成器:不匹配的数据错误(2010.10.12 16:00的高价81.8880没有从最低时间段到达,高价81.8470不匹配)。
12:19:09 测试生成器:不匹配的数据错误(2010.10.12 16:00的低值81.6610没有从最低的时间框架达到,低价81.7620不匹配)。
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
低容量,高容量,我不知道要改变什么值。
我把MiniLotSize改为0.1、1和0.01,也把MaxLotSize改为0(经纪商设置),但它仍然不交易。
彻底失败... 我不知道要改变什么值......帮助。 我真的会很感激...
你好。我有这个问题,也许这是个简单的问题,但我已经很累了。
我一直在测试历史上的EA,我一直得到这个错误
12:17:41 TIC:加载成功
12:19:07 测试生成器:不匹配的数据错误(2010.07.08 00:00的低价87.6580没有从最低时间段达到,低价87.6590不匹配)。
12:19:07 测试生成器:不匹配的数据错误(在2010.08.30 12:00超过了音量限制6029)。
12:19:09 测试生成器:不匹配的数据错误(2010.10.12 16:00的高价81.8880没有从最低时间段到达,高价81.8470不匹配)。
12:19:09 测试生成器:不匹配的数据错误(2010.10.12 16:00的低值81.6610没有从最低的时间框架达到,低价81.7620不匹配)。
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
低容量,高容量,我不知道要改变什么值。
我把MiniLotSize改为0.1、1和0.01,也把MaxLotSize改为0(经纪商设置),但它仍然不交易。
彻底失败...我不知道要改变什么值......帮助。我真的会很感激...
这些信息表明不同时间段的历史数据是不一致的。交易设置与此无关。只要手动重新下载所有数据。
PS 这个问题与MT4有关,与MQL5无关。
我用ChartIndicatorAdd() 函数将指标添加到图表中。现在我不知道哪个函数可以把它从图表中删除。
开发人员是否打算在调用(新)类构造函数时传递一个参数? 在类中使用动态数组是有问题的。
继承时,访问指定符 private并不隐藏父方指定符public的方法,如果我没弄错的话,不应该是这样。
ZS:纠正帮助 - 例如。"MQL5参考/语言基础知识/面向对象的编程/继承"。
及以下
{}不能编译
对开发商而言。
发现PositionsTotal()和OrdersTotal()在初始化块中不能正常工作(至少在我看来不正确)。
有什么问题呢。
如果初始化是在交易账户变更后进行的,_UninitReason = 6(REASON_ACCOUNT),那么这些函数返回0。
尽管这些职位和命令实际存在。
PS
我允许在改变账户时进行交易,并对专家的首次启动有一些控制。
因此,专家顾问看到这是一个新账户的第一次启动,但它不能确定初始化块中是否存在头寸和订单。
至少,在tick处理的区块中一切正常,这些函数返回关于头寸和订单数量的真实数据。
它似乎在工作,但工作起来很奇怪,甚至不是偶尔的,而是偶尔的。有时成功,有时不成功......。PPS
据我所知,它的治疗方法是在一定的秒数内睡着,现在我必须找出多少秒......ZS:纠正帮助 - 例如。"MQL5参考/语言基础知识/面向对象的编程/继承"
及以下
{}不能编译。
谢谢你的帖子,我们已经改正。
也许我在上一篇文章中没有完全解释,但在使用类构造函数 时,通常是这样的。
http://www.delphisources.ru/pages/faq/faq_delphi_basics/Constructor.php.html 或http://ru.wikipedia.org/wiki/Конструктор_(编程)
我很不高兴地发现(MQL5参考/语言基础/数据类型/结构和类),在限制方面。
"构造函数没有返回类型(你可以指定无效类型)。在MQL5中,构造函数没有任何输入参数。因此,每个类只能有一个构造函数"。
但是使用标准的构造函数(即不是自己创建的,我的类对数组使用动态内存分配)会出现 "数组超出范围 "的错误,如果声明了类的类型变量--即没有使用new操作符--就不会出现这种错误。
如果你使用 一个 指向类实例的指针,就不会有错误,但如果你声明没有 * : index_currency aud,cad。
但使用标准的构造函数(即不创建自己的构造函数,我的类对数组使用动态内存分配),我得到了 "数组超出范围 "的错误,如果我声明一个类类型的变量,即不使用new操作符,就不会发生这种错误。
如果使用 一个 指向类实例的指针,则没有错误,如果使用两个或更多,则发生错误,如果声明中没有 *: index_currency aud,cad,则没有错误。