错误、漏洞、问题 - 页 3035

 
Ivan Titov:

今天在自由职业者的网页上出现了一个错误。

Chrome浏览器。这跟它有什么关系?

谢谢你的留言。已更正

 
Slava:

你不能自己检查吗?

你可以检查,但在不了解的情况下,有什么可检查的呢 ))
而且,不可能模拟数据还没有准备好的时刻。

我想了解一下理论,在这个例子中如何正确地使用OnCalculate 工作。
如果在当前的循环迭代中数据没有准备好,应该返回limit+1计数器还是什么?

 
Roman:

可以检查,但在不了解的情况下,有什么可检查的呢)
,而且不可能模拟数据还没有准备好的时刻。

我想了解在这个例子中如何正确处理OnCalculate 的理论。
如果在当前的循环迭代中,数据还没有准备好,应该返回计数器limit+1还是什么?

应该返回零。

 
Slava:

4.所有的时间序列都按顺序处理,从最低到最高。首先是应用tick,然后是计算在该时间序列上创建的所有指标。如果你要求从一个指标中获得同一H1符号的数据,在M1上工作,你将永远不会得到有应用刻度的数据。无论你运用什么技巧,数据都会往后退一个刻度。因为每个符号有一个线程,连续处理时间段。

这句话有点含糊不清。让我澄清一下,以防万一。是的,在处理一个tick时,所有的时间序列都按顺序处理,从最年轻的到最老的。每个刻度线被添加到每个时间序列的数据中,然后按顺序计算 每个时间序列的指标。换句话说,对于OnCalculate()中的指标,时间序列的数据(所有的)肯定会被更新,但旧的时间框架的指标数据还没有被重新计算。

 
Slava :

在第一次请求时,指标可能不会从其符号而不是另一个时间框架接收数据,原因只有一个--所需的时间序列尚未建立,或者在一段时间后已经被销毁,当时没有请求。

在一个不成功的请求之后,只要向你的图表发送一个命令来更新 它,并立即终止OnCalculate。保证OnCalculate会被调用,保证所需的时间序列会在这个时候准备好。

这就像用锤子去抓苍蝇。

如你所知,该命令更新了有关符号的所有图表上的所有指标。如果你在同一个符号的几个图表上有几个指标,你很容易得到一种循环,因为每个指标将发送自己的ChartSetSymbolPeriod()命令。

你能不能增加一个命令,只更新REMOTE指标?

 
Alain Verleyen:

这类似于用锤子来抓苍蝇。

如你所知,该命令更新了有关符号的所有图表上的所有指标。如果你在同一个符号的几个图表上有几个指标,你很容易得到一种循环,因为每个指标将发送自己的ChartSetSymbolPeriod()命令。

你能不能增加一个命令,只更新REMOTE指标?

如果代码中存在逻辑错误,你可以得到任何东西。

 
mktr8591:

事实上,OnTick与OnCalculate 并不是由同一个符号同步的。理论上讲,OnTick可能会晚一些,在它开始的时候,所有TFs上的所有指示都会被计算出来?

到目前为止,我看到的是相反的情况--指标没有在条形图打开的时候以新的tick到达的方式计算。

 
Anton:

这句话有点含糊不清。让我澄清一下,以防万一。是的,当处理一个tick时,所有的时间序列都按顺序处理,从最年轻的到最老的。每个刻度线都被添加到每个时间序列的数据中,然后按顺序计算 每个时间序列的指标。这意味着对于OnCalculate()中的指标,时间序列(所有时间序列)的数据肯定被更新了,但更高时间段的指标的数据还没有被重新计算。

" 按顺序计算每个时间段的指标",即取决于"ENUM_TIMEFRAMES期间",这是什么意思

intiCustom(
stringsymbol,// 符号名称
ENUM_TIMEFRAMES期间//周期
字符串名称//文件夹/用户名称
...//指标输入参数的列表
)。

而如果有两个具有相同ENUM_TIMEFRAMES周期 的指标,其中一个是根据另一个的数据计算的,如何保证连续计算的正确性?

我是否正确理解,如果指标是在M1上 计算的(ENUM_TIMEFRAMES周期),那么当请求OHLC信息时,它将收到关于任何上层TF的最后一个tick的当前信息?

 
什么是结果

iSpread ?


我看到,如果你在终端的Symbols/Bars中查询条形图,它与点差值大致相似。

当然,这些值并不对应于SYMBOL_SPREAD给出的真实值。

为什么有这样的差别?那么使用iSpread 显示的如此不真实的价差是什么呢

 
Aleksey Vyazmikin:

你说的" 按顺序计算 每个时间序列的指标"是什么意思,即取决于"ENUM_TIMEFRAMES期间"?

intiCustom(
stringsymbol,// 符号名称
ENUM_TIMEFRAMES期间//周期
字符串名称//文件夹/用户名称
...//指标输入参数的列表
)。

如果有两个具有相同ENUM_TIMEFRAMES周期 的指标,而其中一个指标是根据另一个指标的数据计算的,如何确保连续计算的正确性?

这是由终端提供的。

我是否正确理解,如果指标是在M1上 计算的(ENUM_TIMEFRAMES周期),那么当请求OHLC信息时,在任何情况下都会收到关于任何上层TF的最新tick的实际信息?

是的,正是如此。