그래, 무슨 일이야??? - 페이지 6

 
Сергей Таболин :

최적화를 여러 번 수행하면 어드바이저의 동일한 매개변수로 다른 최적화의 결과가 동일합니까? 일치하면 문제는 최적화 프로그램의 작업과 단일 패스 간의 차이에 있습니다. 일치하지 않으면 문제는 분명히 어드바이저 코드에 있습니다.

 

나는 설명 할 것입니다-여기의 세련된 철자는 스타일입니다.

if (condition) {

} else if (!condition) {

}

코드에 대한 가독성과 이해도를 표면적으로 증가시키며, 실제로는 사악한 악

게다가, 당신은 이중으로 아주, 아주 조심스럽게 작업해야 합니다.

 
Andrey Dik :

Expert Advisor의 전역 변수는 이전 옵티마이저 실행 시 그 값을 유지하고 다음 옵티마이저로 이전된다고 생각하십니까? 다누나.

예, 그런 것입니다. 뛰어.

Ch만이 아니었다. 변수 또는 클래스의 정적 멤버 또는 Ch. 터미널 변수 또는 다른 것.


또한, 단말 시작 직후의 1회 테스트와 동일한 에이전트에 대한 반복 테스트는 다를 수 있습니다. 같은 이유로.

일반적으로 모든 것을 초기화하고 이를 주의 깊게 모니터링해야 합니다.


추신: 아니, 기억했습니다. 초기화로 모든 것이 정상이었습니다. 이것은 초기화된 버그가 있는 정적 중 하나입니다. 즉시 수정했습니다.

 
Andrey Dik :

한 실행에서 다른 실행으로 EA 변수의 내용을 전송하는 것은 터미널의 전역 변수와 관련이 있더라도 테스터의 버그로 간주되어야 합니다.

한 Expert Advisor의 여러 복사본이 차트에서 실시간으로 실행되는 경우 사용자는 마법 또는 기타 식별 방법을 사용하고 최적화 프로세스는 동일한 마법으로 하나의 Expert Advisor를 여러 번 독립적으로 실행하는 것을 의미합니다. 그렇지 않은 경우 , 그러면 최적화에 대한 이데올로기적 관점에서 볼 때 잘못된 것일 뿐만 아니라 최적화에 영향을 미치고 이를 시장 제품에 남용하여 구매자를 오도할 가능성이 있습니다.

그러나 우리는 인쇄된 거래에 대한 TS의 보고를 기다리고 있지만 음모입니다.

거룩한 도둑으로 설정되지 않았습니다.

의미는 항상 그렇듯이 간단합니다. 최적화가 더 빨리 진행되도록 어드바이저가 언로드되지 않습니다. EX 파일은 클 수 있습니다.

 

오늘에서야 본격적으로 문제를 다룰 시간이있었습니다. 작게 시작하기로 결정했습니다. 순서대로. 열린 파일 확인 포함. 코드는 다음과 같습니다.

       int       h     = FileOpen (filename, FILE_BIN | FILE_READ | FILE_COMMON );
       if (h == INVALID_HANDLE )
      {
         Print ( "Ошибка открытия файла обученной сети по индикатору >>> " ,name);
         writeErrorFile(program_name,program_version, "======= " + IntegerToString (bars_count- 1 )+ " === Ошибка открытия файла обученной сети по индикатору >>> " +name);
         writeOptTestFile(file_Opt_Tst, "======= " + IntegerToString (bars_count- 1 )+ " === Ошибка открытия файла обученной сети по индикатору >>> " +name+ "\n" );
         FileClose (h);
         return (TRADESIGNAL_NO);
      }

최적화를 실행한 다음 단일 테스트를 실행했습니다. 결과는 두 개의 파일입니다.

 1 _100_100_300_300_.opt
1 _100_100_300_300_.tst

WinMerge 프로그램에서 이 두 파일을 열었습니다. 그리고 그것이 내가 그곳에서 본 것입니다.

옵티마이 저가 여는 데 문제가 있습니다. 테스터에는 그러한 오류가 하나도 없다는 점에 유의하십시오!

 
Сергей Таболин :

옵티마이 저가 여는 데 문제가 있습니다. 테스터에는 이러한 오류가 하나도 없다는 점에 유의하십시오!

여러 코어가 동시에 파일을 엽니다. 하나는 열리고 나머지는 분리됩니다.
코드가 필요하거나 최소한 FILE_SHARE_READ 플래그가 필요합니다.

 

만약 너라면:

  • 전문가의 공통 영역에서 동일한 파일에 액세스
  • 액세스 오류 가져오기
  • 여러 병렬 프로세스와의 공유로부터 자신을 보호하지 마십시오. 시간 초과로 반복하지 마십시오.
물론 옵티마이저와 단일 패스에서 차이를 얻을 수 있습니다. 이것은 논리적 오류입니다.
 
Andrey Khatimlianskii :

여러 코어가 동시에 파일을 엽니다. 하나는 열리고 나머지는 분리됩니다.
코드가 필요하거나 최소한 FILE_SHARE_READ 플래그가 필요합니다.

글쎄요, 저는 옵티마이저를 위해 특별히 코드를 작성하지 않았습니다. 옵티마이저는 이미 그러한 뉘앙스를 모니터링할 것으로 예상되었습니다. 나는 깃발을 추가하려고 노력할 것이다, 그것은 더 나빠지지 않을 것이다. )))

레나트 팻쿨린 :

만약 너라면:

  • 전문가의 공통 영역에서 동일한 파일에 액세스
  • 액세스 오류 가져오기
  • 여러 병렬 프로세스와의 공유로부터 자신을 보호하지 마십시오. 시간 초과로 반복하지 마십시오.
물론 옵티마이저와 단일 패스에서 차이를 얻을 수 있습니다. 이것은 논리적 오류입니다.

  1. 파일 찾기의 편의를 위해서만 공통 영역을 포함합니다.
  2. ....
  3. 공유 액세스 권한이 없습니다. 이러한 파일은 한 명의 Expert Advisor만 액세스할 수 있습니다.
 

아직 코드가 없기 때문에 테스트 조건은 어떤 식 으로든 설명되지 않고 분명히 잘못된 진술을 발행 한 다음 스스로 파악하십시오.

파일도 열 수 없다면 Expert Advisor에 문제가 많은 것입니다.

이 파일의 이름을 숨겼습니다.

 
Renat Fatkhullin :

아직 코드가 없기 때문에 테스트 조건은 어떤 식 으로든 설명되지 않고 분명히 잘못된 진술을 발행 한 다음 스스로 파악하십시오.

파일도 열 수 없다면 Expert Advisor에 문제가 많은 것입니다.

이 파일의 이름을 숨겼습니다.

공을 추가하면 실제로 문제가 해결되기 때문에 코드가 없습니다. 이제 최적화 결과 와 단일 실행이 완전히 일치합니다.

그냥 Expert Advisors에서 파일을 거의 사용한 적이 없어서(최소한 최적화/테스트 중에는 모든 쓰기/읽기가 비활성화됨) Expert Advisors 하나의 액세스 문제는 옵티마이저에서 해결되었다고 생각했습니다.

사유: