[ARCHIVE!] 포럼을 어지럽히 지 않도록 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 4. - 페이지 89

 
keep87 :
그것은 금지되어있다

할 수 있다))

예를 들어, EA가 배열을 터미널의 전역 변수에 로드한 다음 거기에서 읽도록 제공합니다.

 
alsu :
출력으로 얻고자 하는 것을 결정하십시오. 이동 값이 5 bar 전이면

또는 동일

그렇다면,

이것은 항상 EMPTY_VALUE입니다. 왜냐하면 이 막대에는 이동된 눈금이 존재하지 않습니다.

이해했습니다 감사합니다!
 
alsu :
그리고 무엇보다도, EA의 교대에 대해 걱정하지 말고 교대 0과 필요한 막대 수를 취하십시오.
테스터에서 지금 확인하면 이동 평균을 넘은 후 거래가 5 개의 양초를 여는 것으로 나타났습니다. 이것은 동일하지 않습니다 ... 나는 그것을 수행하는 방법을 알아 내고 다른 MA 5 양초를 앞으로 이동 한 다음 올바른 신호를 얻습니다 ...)
 
ierehon :
테스터에서 지금 확인하면 이동 평균을 넘은 후 거래가 5 개의 양초를 여는 것으로 나타났습니다. 이것은 동일하지 않습니다 ... 나는 그것을 수행하는 방법을 알아 내고 다른 MA 5 양초를 앞으로 이동 한 다음 올바른 신호를 얻습니다 ...)

이것은 동일합니다))

ma의 0 막대, 오른쪽으로 5개의 막대 이동 = 이동되지 않은 ma의 5번째 막대

 
keep87 :
그것은 금지되어 있습니다. 테스트 기간 동안 최적화에서 최적화로 변경되지 않는 경우 어레이의 데이터를 Expert Advisor 내부의 어레이에 수동으로 입력할 수 있습니다.
그러나 이 경우에도 MT는 매번 파일(?)에서 배열을 읽어야 하지만 별도의 배열이 아니라 코드에서 읽어야 합니다.
- 이 경우 승자가 될까요?
 
alsu :

할 수 있다))

예를 들어, EA가 배열을 터미널의 전역 변수에 로드한 다음 거기에서 읽도록 제공합니다.

배열 요소는 수십 개에서 수백 개에 이를 수 있으며 각각에 대해 미리 변수를 선언해야 합니다 .
구현하기 어려울 것입니다(물론 작업도 사소한 것은 아닙니다).
 
chief2000 :
배열 요소는 수십 개에서 수백 개에 이를 수 있으며 각각에 대해 미리 변수를 선언해야 합니다.
구현하기 어려울 것입니다(물론 작업도 사소한 것은 아닙니다).

그래서 뭐? 배열의 요소 와 동일한 방식으로 루프에서 변수로 작업합니다. 사용 예:

 double a[];
int n;

...
ArrayResize (a,n);
...

//запись массива в глобальные переменные

string name;
for (i= 0 ;i<n;i++)
{
   name = StringConcatenate ( "__ARRAY_" ,i);
   GlobalVariableSet (name,a[i]);
}

//чтение в массив из глобальных

int gv = GlobalVariablesTotal ();
int index;

for (i= 0 ;i<gv;i++)
{
   name = GlobalVariableName (i);
   if ( StringFind (name, "__ARRAY_" )== 0 )
   {
      index = StrToInteger ( StringSubstr (name, 8 ));
       if (index>= 0 &&index<n) a[index]= GlobalVariableGet (name);
      
       //опционально - если хотим очистить список
       //GlobalVariableDel(name);
   }
}


모든 것이 가능한 한 간단합니다))

 
alsu :

그래서 뭐? 배열 요소와 동일한 방식으로 루프에서 변수로 작업합니다. 사용 예:

모든 것이 가능한 한 간단합니다))

내 기억으로는 브레이크를 표시하지 않으면서 수천 개의 변수로 이런 식으로 작업했습니다. 더 많은 양(수십만 개의 요소 이상)의 경우 원칙적으로 MySQL과의 링크를 사용하려고 합니다.
 
alsu :
내 기억으로는 브레이크를 표시하지 않으면서 수천 개의 변수로 이런 식으로 작업했습니다. 더 많은 양(수십만 개의 요소 이상)의 경우 원칙적으로 MySQL과의 링크를 사용하려고 합니다.
매우 감사합니다!
 

이 형식 1.33027의 데이터에 csv 파일이 있습니까? 1.33023 등이 있습니다.

그런 다음이 파일을 읽었지만 어떤 이유로 데이터는 4 자리 정확도로 읽지 만 5가 필요합니다.

다양한 방법으로 읽고

 FileReadString и FileReadDouble и FileReadInteger

도움이 되지 않는다