自定义符号。误差、错误、问题、建议。 - 页 12

 
fxsaber:

Bug 16.

以前,CustomTicksAdd从指的是当前日期的ticks生成条形。现在的情况也不是这样。

这个错误似乎与错误#14有关。

从市场概览中删除该符号是可能的,原因如下。连续调用CustomSymbolCreate - CustomSymbolDelete - CustomSymbolCreate同一个自定义符号 名称会导致符号ID被击中。因此,在检查一个符号是否可以从市场概览中删除时,没有找到这个符号的图形(标识符被破坏),该符号被安全删除。这一点已被修复。

当在图表上应用tick时,也可能出现同样的情况--通过符号标识符搜索图表,没有得到结果

 
fxsaber:

Bug 15.

我们在该EA的 符号上运行以下指标(去除ChartSetSymbolPeriod-row)。

它只产生零。

足够公平。

调用CustomRatesUpdate可以重置所有的变化计数器并从零开始重新计算指标。

 
Slava:

这样做是非常正确的。

当你调用CustomRatesUpdate时,所有的变化计数器被重置,指标从零重新计算。

这个解决方案背后的逻辑是什么?毕竟,左边是没有变化的酒吧。

 
fxsaber:

这个解决方案背后的逻辑是什么?毕竟,左边有不变量条。

prev_calculated包含一个在前一个OnCalculate调用 中返回的值

指标可以根据自己的逻辑返回任何值。因此,在考虑到时间框架的情况下,运行所有 指标并将prev_calculated的值改为自己的计算值是没有意义的。而且它是资源密集型的,甚至可能是不合理的资源密集型。

把它设置为0会更诚实,就像一开始一样,那时什么都没算。

 
Slava:

prev_calculated包含上一次调用OnCalculate 时返回的值。

指标编写者可以根据自己的逻辑返回任何值。因此,在考虑到时间框架的情况下,运行所有 指标并将prev_calculated的值改为自己的计算值是没有意义的。而且它是资源密集型的,甚至可能是不合理的资源密集型。

把它设置为0会更诚实,就像开始时一样,那时还没有什么东西被计算在内。

那么,当自定义符号上的指标因为这个零值而在每次刻度线翻转后被完全重新计算时,我们应该怎么办?

指标是专门编写的,不会拖累终端,而在这里却开始相反。

 
fxsaber:

那么,当在一个自定义符号上,在每个刻度线翻转之后,由于这个零值,指标完全重新计算,怎么办?

这不应该是这样的情况。检查

 
Slava:

它不应该是这样的。检查

让我澄清一下,不仅是CustomTicksAdd,还有RatesUpdate,这是从过去开始的勾选。事实上,即使是工作中的TicksAdd也没有形成比当前日期更早的条形。我们必须自己产生它们。而我们因此得到的prev_calculated是零。

 
fxsaber:

让我澄清一下,过去的ticks rollover不仅是CustomTicksAdd,还包括RatesUpdate。事实上,即使是工作中的TicksAdd也没有形成比当前日期更早的条形。我们必须自己产生它们。而我们因此得到的prev_calculated是零。

总之,在替换、刷新或删除条形图时,所有指标都将从零开始重新计算。这是不可能的。

增加蜱虫的工作应该像往常一样,即蜱虫是新鲜的、当前的蜱虫,但不是昨天/前天的蜱虫。

我已经从错误11的描述 中运行了你的专家顾问,然后在每个OnCalculate上运行了指标,并打印了一份。

这里是日志。

2019.06.07 08:11:34.240 CustomHistoryTick (EURUSD,H1)   CustomSymbolCreate(Name,NULL,_Symbol) = true
2019.06.07 08:11:34.243 CustomHistoryTick (EURUSD,H1)   CustomRatesDelete(Name,0,0) = 0
2019.06.07 08:11:34.243 CustomHistoryTick (EURUSD,H1)   SymbolSelect(Name,false) = true
2019.06.07 08:11:34.243 CustomHistoryTick (EURUSD,H1)   CustomSymbolDelete(Name) = true
2019.06.07 08:11:34.243 CustomHistoryTick (EURUSD,H1)   CustomSymbolCreate(Name,NULL,_Symbol) = true
2019.06.07 08:11:34.321 CustomHistoryTick (EURUSD,H1)   CopyTicksRange(_Symbol,Ticks,COPY_TICKS_INFO,(TimeCurrent()-3600)*1000) = 1114
2019.06.07 08:11:46.158 Custom Moving Average (EURUSD11608,M1)  13  prev_calculated=0  begin=0  data=1.126668940063615
2019.06.07 08:11:46.173 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=13  begin=0  data=0.2989269387755102
2019.06.07 08:11:46.209 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989283673469387
2019.06.07 08:11:46.228 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989297959183673
2019.06.07 08:11:46.246 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989312244897959
2019.06.07 08:11:46.271 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989312244897959
2019.06.07 08:11:46.305 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989283673469387
2019.06.07 08:11:46.399 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989269387755102
2019.06.07 08:11:46.427 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989255102040816
2019.06.07 08:11:46.460 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989269387755102
2019.06.07 08:11:46.494 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989255102040816
2019.06.07 08:11:46.521 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989269387755102
2019.06.07 08:11:46.561 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989283673469387
2019.06.07 08:11:46.586 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989283673469387
2019.06.07 08:11:46.614 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989297959183673
2019.06.07 08:11:46.645 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989283673469387
2019.06.07 08:11:46.676 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989297959183673
2019.06.07 08:11:46.708 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989283673469387
2019.06.07 08:11:46.775 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989283673469387
2019.06.07 08:11:46.803 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989269387755102
2019.06.07 08:11:46.835 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989283673469387
2019.06.07 08:11:46.869 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989269387755102
2019.06.07 08:11:46.898 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989255102040816
2019.06.07 08:11:46.930 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989255102040816
2019.06.07 08:11:46.972 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.298924081632653
2019.06.07 08:11:46.993 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989226530612245
2019.06.07 08:11:47.024 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.298924081632653
2019.06.07 08:11:47.050 Custom Moving Average (EURUSD11608,M1)  14  prev_calculated=14  begin=0  data=0.2989255102040816
2019.06.07 08:11:47.085 Custom Moving Average (EURUSD11608,M1)  15  prev_calculated=14  begin=0  data=0.4171804373177843
2019.06.07 08:11:47.116 Custom Moving Average (EURUSD11608,M1)  15  prev_calculated=15  begin=0  data=0.4171790087463557
2019.06.07 08:11:47.175 Custom Moving Average (EURUSD11608,M1)  15  prev_calculated=15  begin=0  data=0.4171775801749271
2019.06.07 08:11:47.198 Custom Moving Average (EURUSD11608,M1)  15  prev_calculated=15  begin=0  data=0.4171790087463557
2019.06.07 08:11:47.215 Custom Moving Average (EURUSD11608,M1)  15  prev_calculated=15  begin=0  data=0.4171790087463557
2019.06.07 08:11:47.242 Custom Moving Average (EURUSD11608,M1)  15  prev_calculated=15  begin=0  data=0.4171775801749271
2019.06.07 08:11:47.270 Custom Moving Average (EURUSD11608,M1)  15  prev_calculated=15  begin=0  data=0.4171761516034985
2019.06.07 08:11:47.302 Custom Moving Average (EURUSD11608,M1)  15  prev_calculated=15  begin=0  data=0.4171775801749271
2019.06.07 08:11:47.335 Custom Moving Average (EURUSD11608,M1)  15  prev_calculated=15  begin=0  data=0.4171790087463557
2019.06.07 08:11:47.370 Custom Moving Average (EURUSD11608,M1)  15  prev_calculated=15  begin=0  data=0.4171761516034985
2019.06.07 08:11:47.398 Custom Moving Average (EURUSD11608,M1)  15  prev_calculated=15  begin=0  data=0.4171804373177843
2019.06.07 08:11:47.434 Custom Moving Average (EURUSD11608,M1)  15  prev_calculated=15  begin=0  data=0.4171790087463557
2019.06.07 08:11:47.466 Custom Moving Average (EURUSD11608,M1)  15  prev_calculated=15  begin=0  data=0.4171775801749271
2019.06.07 08:11:47.494 Custom Moving Average (EURUSD11608,M1)  15  prev_calculated=15  begin=0  data=0.4171775801749271
2019.06.07 08:11:47.528 Custom Moving Average (EURUSD11608,M1)  15  prev_calculated=15  begin=0  data=0.4171775801749271
2019.06.07 08:11:47.586 Custom Moving Average (EURUSD11608,M1)  15  prev_calculated=15  begin=0  data=0.4171775801749271
2019.06.07 08:11:47.617 Custom Moving Average (EURUSD11608,M1)  15  prev_calculated=15  begin=0  data=0.4171775801749271
2019.06.07 08:11:47.646 Custom Moving Average (EURUSD11608,M1)  15  prev_calculated=15  begin=0  data=0.41717472303207
2019.06.07 08:11:47.679 Custom Moving Average (EURUSD11608,M1)  15  prev_calculated=15  begin=0  data=0.4171775801749271
2019.06.07 08:11:47.716 Custom Moving Average (EURUSD11608,M1)  16  prev_calculated=15  begin=0  data=0.5185379258642233
2019.06.07 08:11:47.740 Custom Moving Average (EURUSD11608,M1)  16  prev_calculated=16  begin=0  data=0.5185364972927947

这意味着在正常情况下,一切都在正常工作(虱子是今天的,因为它们应该总是这样)。蜱虫被添加,指标被认为是稀疏的

 
Slava:

在任何情况下,当替换、更新、删除条形图时,所有指标将从头开始重新计算。这是不可能的。

添加蜱虫应该像往常一样工作,即蜱虫是新鲜的,今天的蜱虫,而不是昨天的--前天的。

错误11的描述 中运行你的专家顾问,然后运行指标,在每个OnCalculate上打印出

这里是日志。

这意味着一切都在正常情况下正常工作(虱子是今天的,因为它们应该总是这样)。蜱虫被添加,指标被认为是稀疏的

这种说法是否正确?

点击图片可以看到动画。


此外,如果是00:00:01,我们就不能用CustomTicksAdd来重塑一个两秒钟前才出现的柱子。

 
fxsaber:

这种说法是否正确?

对于一个测试者来说,前天的蜱虫是新鲜的,今天的蜱虫是前天的。

我明白你的意思。你在六个月前对自定义抽搐的练习具有明显的测试者性质。你的情况是不正常的(在正常做法的意义上)。