안녕하세요! 배열에 대해 질문이 있습니다. 슬픔을 반으로 하여 1차원 배열을 만들었습니다. 컴파일 단계에서 오류가 없기 때문에 모든 것이 괜찮을 것이지만 테스터에서 실행할 가치가 있으며 EURUSD,M1: array out of range in ,, (218,12) 오류가 나타나 내 위치를 정확히 나타냅니다. 불행한 배열. 그에게 무슨 문제가 있는지 말해주세요
int Totall= OrdersTotal ();
double Price; // Цена выбранного ордераdouble Mas[]; //массив для упорядочивания всех ордеровfor ( int i= 0 ; i< OrdersTotal (); i++) // Цикл перебора ордер
{
if ( OrderSelect (i, SELECT_BY_POS )) // Если есть следующий
{
Price= OrderOpenPrice ();
Mas [i] = Price; //Как раз перед квадратной скобкой и есть ошибка array out of range in ,, (218,12)
ArraySort (Mas, WHOLE_ARRAY , 0 , MODE_ASCEND ); // Теперь цены открытия упорядочены по убываниюint Blizko2= ArrayBsearch (Mas, Ask , WHOLE_ARRAY , 0 , MODE_DESCEND ); //Определен индекс ближайшего большего по значению елемента к текущей цене
PriceBlizko2 = Mas[Blizko2]; // Цена выбранного ордераArraySort (Mas, WHOLE_ARRAY , 0 , MODE_ASCEND ); // Теперь цены открытия упорядочены по убываниюint Blizko1= ArrayBsearch (Mas, Bid , WHOLE_ARRAY , 0 , MODE_ASCEND ); //Определен индекс ближайшего меньшего по значению елемента к текущей цене
PriceBlizko1=Mas[Blizko1];
}
}
안녕하세요! 배열에 대해 질문이 있습니다. 슬픔을 반으로 하여 1차원 배열을 만들었습니다. 컴파일 단계에서 오류가 없기 때문에 모든 것이 괜찮을 것이지만 테스터에서 실행할 가치가 있으며 EURUSD,M1: array out of range in ,, (218,12) 오류가 나타나 내 위치를 정확히 나타냅니다. 불행한 배열. 그에게 무슨 문제가 있는지 말해주세요
정말 감사합니다! 순서가 잘못된 경우 알려주십시오. 아이디어는 하단과 상단에서 가격에 가장 가까운 주문의 가격을 결정하는 것입니다. 당신의 관점을 말씀해 주십시오.
당신은 사이클에 많은 초과가 있습니다. 루프에서 배열을 가격으로 채우고 루프 외부에서 작업해야 합니다.
for ( int i= 0 ; i< OrdersTotal (); i++) // Цикл перебора ордер
{
if ( OrderSelect (i, SELECT_BY_POS )) // Если есть следующий
{
ArrayResize (Mas, i+ 1 );
Mas[i] = OrderOpenPrice (); //Как раз перед квадратной скобкой и есть ошибка array out of range in ,, (218,12)/*
ArraySort (Mas,WHOLE_ARRAY,0,MODE_ASCEND); // Теперь цены открытия упорядочены по убыванию
int Blizko2=ArrayBsearch(Mas,Ask,WHOLE_ARRAY,0,MODE_DESCEND); //Определен индекс ближайшего большего по значению елемента к текущей цене
PriceBlizko2 = Mas[Blizko2]; // Цена выбранного ордера
ArraySort (Mas,WHOLE_ARRAY,0,MODE_ASCEND); // Теперь цены открытия упорядочены по убыванию
int Blizko1=ArrayBsearch(Mas,Bid,WHOLE_ARRAY,0,MODE_ASCEND); //Определен индекс ближайшего меньшего по значению елемента к текущей цене
PriceBlizko1=Mas[Blizko1];
*/
}
}
안녕하세요! 배열에 대해 질문이 있습니다. 슬픔을 반으로 하여 1차원 배열을 만들었습니다. 컴파일 단계에서 오류가 없기 때문에 모든 것이 괜찮을 것이지만 테스터에서 실행할 가치가 있으며 EURUSD,M1: array out of range in ,, (218,12) 오류가 나타나 내 위치를 정확히 나타냅니다. 불행한 배열. 그에게 무슨 문제가 있는지 말해주세요
안녕하세요! 배열에 대해 질문이 있습니다. 슬픔을 반으로 하여 1차원 배열을 만들었습니다. 컴파일 단계에서 오류가 없기 때문에 모든 것이 괜찮을 것이지만 테스터에서 실행할 가치가 있으며 EURUSD,M1: array out of range in ,, (218,12) 오류가 나타나 내 위치를 정확히 나타냅니다. 불행한 배열. 그에게 무슨 문제가 있는지 말해주세요
근본적으로 잘못된 코드를 가지고 있지만 오류는 채우기 전에 배열의 크기가 설정되지 않았기 때문에 발생합니다.
근본적으로 잘못된 코드를 가지고 있지만 오류는 채우기 전에 배열의 크기가 설정되지 않았기 때문에 발생합니다.
정말 감사합니다! 순서가 잘못된 경우 알려주십시오. 아이디어는 하단과 상단에서 가격에 가장 가까운 주문의 가격을 결정하는 것입니다. 당신의 관점을 말씀해 주십시오.
정말 감사합니다! 순서가 잘못된 경우 알려주십시오. 아이디어는 하단과 상단에서 가격에 가장 가까운 주문의 가격을 결정하는 것입니다. 당신의 관점을 말씀해 주십시오.
당신은 사이클에 많은 초과가 있습니다. 루프에서 배열을 가격으로 채우고 루프 외부에서 작업해야 합니다.
당신은 사이클에 많은 초과가 있습니다. 루프에서 배열을 가격으로 채우고 루프 외부에서 작업해야 합니다.
알았습니다. 정말 감사합니다!! 당신의 생각을 올바르게 표현하였습니까?
알았습니다. 정말 감사합니다!! 당신의 생각을 올바르게 표현하였습니까?
아마도. 하나의 동일한 작업을 여러 가지 방법으로 구현할 수 있습니다.
비탈리 무지첸코 :
아마도. 하나의 동일한 작업을 여러 가지 방법으로 구현할 수 있습니다.
방금 가장 가까운 요소 인덱스의 정의를 루프 밖으로 옮겼고 테스터에서 Mas[Blizko2] 위치에 오류가 있음을 나타냅니다.아마도 EA가 시작될 때 아직 주문이 없기 때문일 수 있습니까?
말해주세요, 아마도 비슷한 것을 볼 수있는 곳을 알고 있습니까?!)방금 가장 가까운 요소 인덱스의 정의를 루프 밖으로 옮겼고 테스터에서 Mas[Blizko2] 위치에 오류가 있음을 나타냅니다.아마도 EA가 시작될 때 아직 주문이 없기 때문일 수 있습니까?
이렇게 시도
이렇게 시도
정말 감사합니다!! 다른 질문이 있습니다. MODE_DESCEND를 MODE_ASCEND로 변경하여 현재 가격에 가장 가까운 낮은 값 요소의 인덱스를 올바르게 결정합니까?
정말 감사합니다!! 다른 질문이 있습니다. MODE_DESCEND를 MODE_ASCEND로 변경하여 현재 가격에 가장 가까운 낮은 값 요소의 인덱스를 올바르게 결정합니까?
대답하지 않겠습니다. ArrayBsearch 를 사용한 적이 없습니다.