prev_calculated - 页 7

 
Alexander Puzanov:

你在这三点上都有错误的判断。

prev_calculate显示在上一次调用中被计算(处理)的BAR数量。这是一个公理。

如果历史已经改变,膨胀,或者指标还没有被计算 - prev_calculate的值==0。 这也是一个公理。

这其中有什么不清楚的地方呢?

 
Karputov Vladimir:

你在这三点上都有错误的判断。

prev_calculate显示在上一次调用中被计算(处理)的BAR数量。这是一个公理。

如果历史已经改变,膨胀,或者指标还没有被计算 - prev_calculate的值==0。 这也是一个公理。

这其中有什么不清楚的地方呢?

其中只有两个问题不清楚。

1.如果终端和图表都没有关闭,历史记录会在哪里消失?

2.在初始化指标缓冲区 时,使数组没有空间垃圾有这么难吗?或者用PLOT_EMPTY_VALUE中设置的值来初始化数组

 
Alexey Viktorov:

这其中只有两个问题是不清楚的。

1.如果终端和图表都没有关闭,历史记录会在哪里消失?

2.在指标缓冲区初始化 过程中,做一个没有空间垃圾的数组有这么难吗?或者,数组应该用PLOT_EMPTY_VALUE设置的值进行初始化

1.@如果终端和图表都没有关闭,历史记录会在哪里消失?

2.这是相当真实的生活情况,在每一步都会遇到。我需要声明一个变量。你认为哪个是正确的,a)或b)。

a): int i;
б): int i=0;
 
Karputov Vladimir:

1.@如果终端和图表都没有关闭,历史记录会在哪里消失?

2.这是相当真实的情况,在每一步都会遇到。我需要声明一个变量。你认为哪个选项是正确的,a)还是b)。

a): int i;
б): int i=0;

1.没有暗示,直截了当的问题。终端正在工作,收到了报价,在每一个刻度上,指标重新计算OnCalculate,并计算prev_calculated,返回rate_total,突然砰的一声!!!一整条柱子都丢失了。去哪里?

2.不要把变量、自定义数组和指标缓冲区 混为一谈。


看来已经找到了一个拐杖。该指标是用这个拐杖推出的。再一次失去历史之后,会有一个结果。

 
Alexey Viktorov:

这其中只有两个问题是不清楚的。

1.如果终端和图表都没有关闭,历史记录会在哪里消失?

2.在初始化指标缓冲区 时,使数组没有空间垃圾有这么难吗?或者用PLOT_EMPTY_VALUE中设置的值来初始化数组

2.不难,但没有必要,甚至不可取。因为缓冲区内充满了计算出来的指标数据。没有必要做无用功。
 
Karputov Vladimir:

你在这三点上都有错误的判断。

prev_calculate显示在上一次调用中被计算(处理)的BAR数量。这是一个公理。

如果历史已经改变,膨胀,或者指标还没有被计算 - prev_calculate的值==0。 这也是一个公理。

哪一部分不清楚?

哦,亲爱的,你认为错误与公理有什么不同? 你不需要在这里把话说清楚--所有制定的3点都可以在我的第一篇文章中轻易看到。如果不是这样--你是一个程序员,而不是一个木匠,请在你的代码中显示如何用裸露的prev_calculated解决3段中单独列出的简单任务,而不需要额外的拐杖:显示在前一个tick上计算了多少条,定义OnCalculate的 第一次调用 并定义历史(检查和)已经被改变。没有必要为用户编造任何东西,以适应你的公理--任务的制定,非常简单,毫不含糊,就像半根手指一样。

 

Alexey Viktorov:

这不在文件中!!。因此,这是一篇自由发挥的文章。就像我说的自动初始化,甚至更酷。至少我的有一个免责声明...

你在胡说八道什么?如果这个初始化是在OnCalculate中实现的,它将在没有任何循环的情况下被初始化。但是如果prev_calculated被清零,它就会重置所有在操作过程中积累的数据...

对一个关于初始化时缓冲区的初始化的问题。从逻辑上考虑。在OnInit()中没有对rate_total的访问,对吗?如果在OnInit()中没有对rate_total的访问,那么指标缓冲区的大小还不知道(=0你可以自己检查)。既然指标缓冲区大小=0,那么你打算重置什么?

 
Alexander Puzanov:

哦,亲爱的,你认为虫子和公理有什么不同? 没有必要在这里用文字洒满你的大脑--所有制定的3个段落在我的第一篇文章中可以很容易看到。如果不是这样--你是一个程序员,而不是一个木匠,请在你的代码中显示如何用裸露的prev_calculated解决3段中单独列出的简单任务,而不需要额外的拐杖:显示在前一个tick上计算了多少条,定义OnCalculate的 第一次调用 并定义历史(检查和)已经被改变。没有必要为用户编造任何东西,以适应你的公理--任务的制定,非常简单,毫不含糊,就像半根手指一样。

你不应该向弗拉基米尔提出这个问题(他只为开发者的立场辩护),而应该向开发者本身提出,他们(由斯拉瓦代表)告诉你,当prev_calculated=0时,一切都必须重新计算。他们不能总是计算出指标使用的所有变体。如果现在有问题,折磨版主是没有用的,你必须到servicedesk去详细说明。
 
Alexey Viktorov:

初始化指标缓冲区 时,确保数组中没有空间垃圾有这么难吗?或者数组被初始化,其值被设置为PLOT_EMPTY_VALUE

if (rates_total > prev_calculated)
  ArrayFill(Buffer, prev_calculated, rates_total - prev_calculated, EMPTY_VALUE);
 
Alexey Viktorov:

1.没有潜台词,直截了当的问题。终端工作,收到报价,在每一个刻度上,指标重新计算OnCalculate,并计算prev_calculated返回rate_total,突然砰的一声!!!一整条柱子都丢失了。去哪里?

2.不要把变量、自定义数组和指标缓冲区 混为一谈。


似乎已经找到了一个拐杖。该指标是用这个拐杖推出的。再一次失去历史之后,会有一个结果。

1.又是一个思路,但我还是没看出有什么意义。

2.你仍然没有回答你的问题,这告诉我,你从来没有想过,在变量声明之后,它被储存在什么地方。