오류, 버그, 질문 - 페이지 846

 
, ulong 거래로 추가 작업(수정)을 위해 위치를 열 수 있는 기능이 있는지 알려주십시오. // 딜 티켓, 이전에 기억한 딜 티켓에 따라 생성된 경우? 아마도 그러한 선택을 위해서는 복잡한 알고리즘이 필요할 것입니다. 왼손으로 오른쪽 귀를 읽는 방법은 무엇입니까?
 
Dimka-novitsek :
, ulong 거래로 추가 작업(수정)을 위해 위치를 열 수 있는 기능이 있는지 알려주십시오. // 딜 티켓, 이전에 기억한 딜 티켓에 따라 생성된 경우? 아마도 그러한 선택을 위해서는 복잡한 알고리즘이 필요할 것입니다. 왼손으로 오른쪽 귀를 읽는 방법은 무엇입니까?
각 거래에는 포지션 ID가 있습니다. 이 식별자로 위치 자체를 검색하십시오.
 

모두 좋은 저녁! 나는 이 지점에서 사람들이 관심을 갖는 것을 봅니다. 챔피언으로...

지금까지 내가 보낸 챔피언십 기밀정보는 검증이 안됐지만 전문가는 검증됐어!

그들은 언제 확인됩니까?

 
Leo :

모두 좋은 저녁! 나는 이 지점에서 사람들이 관심을 갖는 것을 봅니다. 챔피언으로...

지금까지 내가 보낸 챔피언십 기밀정보는 검증이 안됐지만 전문가는 검증됐어!

그들은 언제 확인됩니까?

로봇이 오류 없이 검사되면 걱정하지 마십시오. 내가 아는 한 전문가는 자동으로 확인하고 개인 데이터는 수동으로 확인합니다.
 
Leo :

모두 좋은 저녁! 나는 이 지점에서 사람들이 관심을 갖는 것을 봅니다. 챔피언으로...

지금까지 내가 보낸 챔피언십 기밀정보는 검증이 안됐지만 전문가는 검증됐어!

그들은 언제 확인됩니까?

이미 조언을 받은 곳: 질문이 발생하면 등록된 참가자는 챔피언십 페이지의 "토론" 섹션에서 문제에 대해 안전하게 쓸 수 있습니다. 메시지는 포럼을 통해 전달하는 것보다 훨씬 빠르게 수신자에게 도달합니다.
 

질문이 있습니다.

새 막대의 시작을 결정하는 기사의 코드가 있습니다.

   static datetime Old_Time;
   datetime New_Time[ 1 ];
   bool IsNewBar= false ;

// копируем время текущего бара в элемент New_Time[0]
   int copied= CopyTime ( _Symbol , _Period , 0 , 1 ,New_Time);
   if (copied> 0 ) // ok, успешно скопировано
     {
       if (Old_Time!=New_Time[ 0 ]) // если старое время не равно
        {
         IsNewBar= true ;   // новый бар
         if ( MQL5InfoInteger ( MQL5_DEBUGGING )) 
             Print ( "Новый бар" ,New_Time[ 0 ], "старый бар" ,Old_Time);
            Old_Time=New_Time[ 0 ];   // сохраняем время бара
        }
     }
   else
     {
       Alert ( "Ошибка копирования времени, номер ошибки =" , GetLastError ());
       ResetLastError ();
       return ;
     }

//--- советник должен проверять условия совершения новой торговой операции только при новом баре
   if (IsNewBar== false )
     {
       return ;
     }

모든 것이 잘 작동합니다. 그러나 나는 마지막 if에 다양한 무거운 통계의 계산을 삽입하고 싶습니다. 따라서 새로운 막대가 시작될 때 최소한의 계산이 있어야 합니다.

사실 질문입니다. 통계가 비교적 오랜 시간(2초로 가정) 계산되고 이전 막대와 새 막대의 눈금 간격이 최소인 경우 이 코드는 어떻게 작동할까요?

내가 이해하는 한 OnTick() 함수가 계산되는 동안 틱은 건너뛰지만 막대의 첫 번째 틱은 아니지만 다음 틱은 EA에 대해 새 틱이 됩니다.

수동 검사는 아직 이해하지 못했습니다.

Документация по MQL5: Основы языка / Функции / Функции обработки событий
Документация по MQL5: Основы языка / Функции / Функции обработки событий
  • www.mql5.com
Основы языка / Функции / Функции обработки событий - Документация по MQL5
 
St.Vitaliy : 통계가 비교적 오랜 시간(예: 2초) 동안 계산되는 경우 이 코드는 어떻게 작동합니까?
OnTick() 함수가 2초 동안 실행되면 이 기간 동안 수신된 모든 견적은 EA에서 무시됩니다. 이 점을 명확히 하시겠습니까? Expert Advisor에 대한 "새" 견적은 이 견적이 "바의 첫 번째 눈금"이 아니더라도 OnTick() 함수의 다음 실행 완료 직후에 나온 견적입니다.
 
Yedelkin :
OnTick() 함수가 2초 동안 실행되면 이 기간 동안 수신된 모든 견적은 EA에서 무시됩니다. 이 점을 명확히 하시겠습니까?

따라서 이 2초는 무시되지만(이 시간 동안 틱), 예를 들어 세 번째에는 또 다른 틱이 올 것이고 코드는 이를 막대에서 새로운 것으로 인식할 것입니다.

이것은 내가 어드바이저를 시작할 때 다음 틱이 항상 첫 번째 틱이라는 사실에 의해 간접적으로 확인됩니다.

통계가 90초로 계산되면 M1의 새 틱에 대한 조건이 충족됩니까?

 
Yedelkin :
각 거래에는 포지션 ID가 있습니다. 이 식별자로 위치 자체를 검색하십시오.
감사해요!!
 
St.Vitaliy : 음, 이 2초는 무시되지만(이 시간 동안 틱), 예를 들어 세 번째에 또 다른 틱이 올 것이고 코드는 이를 막대에서 새 것으로 인식할 것입니다. 이것은 내가 어드바이저를 시작할 때 다음 틱이 항상 첫 번째 틱이라는 사실에 의해 간접적으로 확인됩니다. 통계가 90초로 계산되면 M1의 새 틱에 대한 조건이 충족됩니까?

글쎄, 나는 이미 위에 추가했다. 반복합니다: Expert Advisor에 대한 "새" 인용문은 이 인용문이 "막대의 첫 번째 눈금"이 아니더라도 다음 OnTick() 함수 실행이 완료된 직후에 나온 인용문입니다. 당신은 새로운 막대의 발생에 대한 조건이 있습니다

 if (Old_Time!=New_Time[ 0 ])

전문가가 "이전" 표시줄에 있는 견적 처리를 완료한 후에만 확인됩니다. ..OnTick() 함수가 90초 동안 실행되고 00.00.00에서 시작되면 "M1의 새 틱에 대한 조건이 적어도 언젠가는 충족될 것입니다", 즉: 00.01.30 이후