任何菜鸟问题,为了不给论坛添乱。专业人士,不要路过。没有你就无处可去 - 6. - 页 67

 
alexey1979621:

在日记中测试专家顾问时,弹出了一个错误

2013.08.07 12:35:41 2012.06.06 05:29 Puria - 1.452 - SQ EURUSD,M30: Error 4002 (array index - out of range)

2013.08.07 12:35:41 2012.06.06 05:29 Puria - 1.452 - SQ EURUSD,M30: 试图打开一个买入指令。等待答案。

因此,这些订单没有被打开。如何消除这个错误?原因何在?

我很高兴能提供帮助。

在没有代码的情况下,我只能建议指向数组中某一单元格的索引是指向数组 之外。如果一个数组的大小为10,而索引的大小为10,那么索引就指向数组中不存在的第11个单元,因为数组的索引从0开始。对于这个例子:一个大小为10的数组被索引为从0到9--总共10个。

 
Mepkypuu:
仅仅从终端信息中看不出什么,如果你不公布EA代码,就没有什么帮助。在你的数组的某个地方,你正在写一批不存在的数据,作为假设之一,但猜测不是我的资料。
我从一个朋友那里得到这个EA。我已经看到它在Skype上亲自工作而没有错误。我得到了错误4002。还能是什么呢?
 
alexey1979621:
我从一个朋友那里得到这个顾问。它的工作没有任何错误,我在Skype上亲自看到了它。我得到了错误4002。还能是什么呢?

我已经给了你一个毫不含糊的答案。没有代码,你就无法修复它。
 
r772ra:
你可以。

谢谢你!也许你已经看到了公共领域的情况?
 
001:
谢谢你!也许在公共领域看到过?

这里
 
alexey1979621:
我从一个朋友那里得到这个顾问。它的工作没有任何错误,我在Skype上亲自看到了它。我得到了错误4002。还能是什么呢?
再次强调,猜测并不是我的专业领域。看一下代码,在你写数组的地方,在你的头脑中研究一下所有可能的收集数据的方式,其中有一个是不存在的。它应该以某种方式被排除在外。而在一般情况下,请你的朋友来处理错误?他是专家顾问的作者,不是吗?他的权限是确保代码排除可能的执行错误。
 

你能告诉我这样的条目有多正确吗,拜托?

for(int i=ObjectsTotal(OBJ_HLINE)-1; i>=0; i--) 

不会变成当我有比如说3个水平的物体,而总共有10个物体,这些水平的物体分散在10个物体中,那么搜索3个顶部会被分析出来,但接下来的7个,将是所有(或部分)的水平线,它不会来?还是会自动按水平线排序?

而且,如果后者是真的,是否有可能做出这样的记录。

for(int i=ObjectsTotal(OBJ_HLINE && OBJ_TREND)-1; i>=0; i--) 
 
Chiripaha:

请你告诉我这样的条目是否正确。

不会当我有比如说3个水平的物体,而总共有10个物体,这些水平的物体分散在10个物体中,那么搜索3个顶部会被分析出来,但接下来的7个,将是所有(或部分)的水平线, 它就不会来? 还是会自动按水平线排序?

而且,如果后者是真的,是否有可能做出这样的记录。

for(int i=ObjectsTotal(OBJ_HLINE && OBJ_TREND)-1; i>=0; i--) 

1.这是不可能的。它 将按水平方向排序。

2.应该吗?

 
按先来后到排序,而不是按水平....
 
artmedia70:

1.这是不可能的。它 将按水平方向排序。

2.应该吗?

2.我必须这样做。我需要查看2种类型的对象:水平线和趋势线。其余的对象在这次搜索中并不相关。

常见问题解答
,按先来后到排序,而不是按横向....。
如果我理解正确的话,是意见分歧吗?还是关于 "第一 "的答案与前面的说法不矛盾?