Статья о традиционных и не совсем традиционных алгоритмах усреднения, упакованных в максимально простые и достаточно однотипные классы. Они задумывались для универсального использования в практических разработках индикаторов. Надеюсь, что предложенные классы в определенных ситуациях могут оказаться достаточно актуальной альтернативой громоздким, в некотором смысле, вызовам пользовательских и технических индикаторов.
这是指标的标准完全初始化,在其第一次启动时进行,通过Oninit()完成。
有时,在更新历史等方面,也需要这样做。
没有人想到,通过Oninit()反复初始化指标会导致数组停止响应。
为了什么?
"SetIndexBuffer 将指定的指标缓冲区 与一维动态数组绑定"
当你更新历史记录时,你是否将缓冲区链接到其他数组?
这是指标的标准完全初始化,在其第一次启动时进行,通过Oninit()完成。
有时,在更新历史等方面,也需要这样做。
没有人想到,通过Oninit()反复初始化指标会导致数组停止响应。
这里已经有人向你提出展示源代码,至少可以了解问题出在哪里。
两行代码(虽然是源代码)不允许确定问题。
这是指标的标准完全初始化,在其第一次启动时进行,通过Oninit()完成。
有时,当你更新历史等时,也需要这样做。
这是没有必要的。
你只是错误地重新绑定,然后你希望把数据保存在缓冲区内,并在指标重新计算之前解决它。这就是为什么你在错误的索引上访问不存在的数据时会得到合法的超出范围。
没有必要这样做。
只是你在出错时重新绑定,然后希望把数据保存在缓冲区,并在指标重新计算到来之前访问它。这就是为什么你在错误的索引上访问不存在的数据时会得到逻辑超范围的结果。
我故意用缓冲区清零的方式进行初始化,所以我原则上不指望保存数据。
问题是,重新绑定后,数组并没有被填满,当我试图写入时,才出现指定的错误。
如果这是常态,那么很好...
缓冲区是空的,直到重新计算指标的请求到来。
而且,如果你强行重新启动/重新绑定它,在你到达指标处理程序OnCalculate 之前,你无权访问其任何元素。
下午好!
帮助我理清终端的活动。
注册了一个信号,终端工作了一段时间 - 打开和关闭订单。然后账户被封锁,评论说 "由于服务器负载过高"。支持人员说,我的终端产生了许多对服务器的请求(打开、关闭、修改等)。我可以从日志中看到,metatrader试图每两分钟同步一次其状态,其他的都没有发生。
有什么办法可以跟踪从metatrader到服务器的请求数量,从而不至于让整个账户被封锁?
1.告诉我,在使用vps服务器时,使用标志和静态变量 是否可靠?
有时在复杂的EA条件下,有必要使用多达十个或更多的标志,这还不算静态变量。
2.要重置所有标志和静态变量,从图表中删除EA就可以了吗?
3.如果重新启动服务器会发生什么,标志和静态变量会保留吗?
4.如果服务器突然关闭,当服务器被打开时,标志和统计变量是否会被重置?
这些问题涉及MQL4和MQL5。
1.告诉我,在使用vps服务器时,使用标志和静态变量 是否可靠?
有时在复杂的EA条件下,有必要使用多达十个或更多的标志,这还不算静态变量。
2.要重置所有标志和静态变量,从图表中删除EA就可以了吗?
3.如果重新启动服务器会发生什么,标志和静态变量会保留吗?
4.如果服务器突然关闭,当服务器被打开时,标志和统计变量是否会被重置?
这些问题与MQL4和MQL5有关。
1.如果你有VPS或你自己的电脑,这并不重要;最主要的是MQL4/5可以工作。
2.是的。
3.不保存。
4.是的,他们会的。
如果你想让标志保存,把它们的值写到一个文件里,然后再读取。试着从专家顾问中删除交易功能,留下那些设置标志的功能,在注释中输出它们,写出它们的值,重新加载MT4/5,看看会发生什么。
1.是的,不管是VPS还是你自己的电脑,只要MT4/5能运行,就没有问题。
2.是的。
3.不保存。
4.是的,他们会的。
如果你想保存标志,把它们的值写到一个文件中,然后再读取它们。尝试从专家顾问中删除交易功能,留下那些设置标志的功能,把它们的值写在注释中,重新加载MT4/5,看看会发生什么。
写入文件 的伟大解决方案!