Enoir Heringer Da Silveira: Мне действительно понравилось это, но я не мог заставить это работать.
"Объемыпродажклещей"。
"Объемы тиков для покупки"
"Всего тиковых объемов"
если вы можете мне помочь
В статье описан подход, сам принцип.Индикаторы не предназначены для конкретной работы. Они изготовлены только для демонстрации этого принципа.В Маркете есть Демо индикатор на этом принципе.Он распространяется бесплатно.Название можно увидеть в моем профиле.
延迟只是优化的结果。第一个延迟发生在初始化过程中。如果指标(在 MT4 视频中)被设置为符号的某个时间框架,而该时间框架没有历史记录,或者历史记录不完整,那么历史记录上的图表可能无法绘制,或者绘制时出现错误。我已经观察到这种现象。请注意,指标可以设置在一个时间框架上,从另一个时间框架获取初始数据,并显示在第三个时间框架上。为了只在历史记录上绘制一次图表,并立即不出错,我们在 OnCalculate 中添加了一段代码,用于检查源数据是否准备就绪,然后跳过五次 OnCalculate 调用,以确保现在所有源数据都已准备就绪。为了不让用户认为指示器挂起,日志会显示 pass 1 ....、pass 2 等信息。第 2 次等。正如您所看到的,没有重新计算,对终端的负载很小。最后,只有最后一个图表被重新计算。这种情况每分钟发生一次。这种方式不好吗?也许吧。但我没有想到更酷的方法。
第二次延迟发生在图形元素由指示器而非终端控制的模式下。这样做是为了处理多个CHARTEVENT_CHART_CHANGE 事件 的发生。也就是说,当用户突然开始来回拉动图表时。如果我们试图在事件发生时对其进行处理,那么指标将无法处理各种构造,并会变得一团糟。这就是为什么当事件发生时,指标什么也不做,直接返回控制。但是当用户停止生成事件时,指示器会等待三秒钟,以确保不会再有新的事件发生,然后才会在新的位置重绘图表。只有一次是的,我们有延迟。但我们会诚实地发出警告,不会消耗不必要的资源,如果有疑问,我们会解释我们的立场。现在的情况是 )
第一种和第二种情况都没有必要表现出来。我自己不会做这些检查。但对于其他人,我必须这样做。如果我发现或有人提出更好的方法,我会立即开始修正。
Мне действительно понравилось это, но я не мог заставить это работать.