[SERVICE DESK] 타이머에서 시니어 TF의 시간을 가져오는 동안 오류가 발생했습니다! - 페이지 14

 
지금은 몇 번 운전했지만. 재미있지만 항상 작동하지는 않습니다. 연결이 설정되지 않는 경우가 있습니다.
나는 좋은 관계를 가지고 있습니다. 아마도 이것이 이유일 것입니다.
 
하지만 이 테스트를 통해 나는 다른 것을 발견했습니다. 패스를 카운팅하면서 지금 실행해도 OnCalculate 를 통해 오늘도 10 패스를 받습니다. 표시기 시작 시 약간의 지연을 두는 것이 가장 좋은 옵션인 것으로 나타났습니다.
 
Konstantin Nikitin :
하지만 이 테스트를 통해 나는 다른 것을 발견했습니다. 지금 카운팅 패스로 실행해도 OnCalculate를 통해 10을 얻습니다. 표시기 시작 시 약간의 지연을 두는 것이 가장 좋은 옵션인 것으로 나타났습니다.

목발 솔루션은 필요하지 않습니다. 다시 한 번 반복합니다. 현재 동작이 나에게 적합하지 않으며 개발자 자신이 제공한 조언이 작동하지 않습니다. 그러한 순간을 운에 맡기면 좋은 일은 없을 것입니다. 문제가 발생했습니다. 개발자가 해결해야 합니다.

 
Alexey Kozitsyn :

목발 솔루션이 필요하지 않습니다. 다시 한 번 반복합니다. 현재 동작이 나에게 적합하지 않으며 개발자 자신이 제공한 조언이 작동하지 않습니다. 그러한 순간을 운에 맡기면 좋은 일은 없을 것입니다. 문제가 발생했습니다. 개발자가 해결해야 합니다.

나는 내가 본 것을 당신에게 설명했습니다. 그리고 그것에 대해 어떻게 생각해야 합니다. 즉, 누구에게나 적합하지 않으며 첫 번째 패스 등을 추적합니다.

 
Konstantin Nikitin :

나는 내가 본 것을 당신에게 설명했습니다. 그리고 그것에 대해 어떻게 생각해야 합니다. 즉, 누구에게나 적합하지 않으며 첫 번째 패스를 추적하는 등이 나타납니다.

나는 우리가 오류 번호(각 요청에 대한 콕킹) 또는 어떤 종류의 추가로 올바르게 작동하는 "얇은" 장소에서 테스트된 메커니즘이 필요하다고 생각합니다. 기록 액세스 기능을 확인하십시오 (몇 시간 동안 이러한 문제를 찾지 않도록 정확하게 내장되어 있음). 그리고 이 메커니즘은 문서에서 자세히 설명해야 합니다. 그러면 개발자에게 질문이 없을 것입니다. 지금은 어때? 이전 TF의 데이터 액세스에 대한 문서에는 아무 것도 없으므로 개발자 자신은 데이터를 얻는 방법을 모릅니다. 동일한 추론이 있는 수염 난 년의 포럼에 대한 일부 링크만 있습니다.

 
몇 시간 안에 서버와의 차이점을 알고 있다면. 현재 현지 시간과 마지막 시간별 막대 의 여는 시간을 비교할 수 있습니다. TimeCurrent는 작동하지 않습니다. 시간이 업데이트되지 않을 수 있습니다.
이 같은
     MqlDateTime mqlDateTime;
     TimeToStruct ( (TimeLocal ()-60*3), mqlDateTime );
     mqlDateTime.min = 0 ;
     mqlDateTime.sec = 0 ;
     
     if ( IsConnected () )
           Comment ( TimeToString ( iTime ( Symbol (), PERIOD_H1 , 0 ) ), "\n" , TimeToString ( StructToTime (mqlDateTime) ) );
 
Alexey Kozitsyn :

그건 그렇고, 당신은 터미널 버전에 대한 질문에 대답하지 않았습니다.

터미널 1121 및 1090

알렉세이 코지친 :

서버에 대한 연결이 설정되었습니다. 시니어 TF에서 데이터를 요청할 때 데이터가 준비되지 않은 경우 오류 또는 0을 반환합니다. 데이터가 준비된 경우 실제 데이터만 반환합니다. 모두. 데이터가 오랫동안 준비되지 않은 경우 오류 또는 0을 반환합니다.

여기에는 오류가 없습니다. 연결이 있고 이력 데이터가 있습니다.
터미널에 이미 있는 데이터가 즉시 표시됩니다.
브로커에 요청을 보내고 누락된 항목이 있는 경우 업로드해야 하기 때문에 새 데이터가 늦게 도착합니다.

새로운 데이터가 나타나면 즉시 틱이 생성됩니다(지금도 시장이 닫혀도).
업데이트를 확인하기만 하면 됩니다. 새 막대 의 모양과 변수를 직접 변경하는 것입니다.

추신. MT4에는 데이터 관련성 플래그가 없습니다.

 
Taras Slobodyanik :

터미널 1121 및 1090

여기에는 오류가 없습니다. 연결이 있고 이력 데이터가 있습니다.
터미널에 이미 있는 데이터가 즉시 표시됩니다.
브로커에 요청을 보내고 누락된 항목이 있는 경우 업로드해야 하기 때문에 새 데이터가 늦게 도착합니다.

새로운 데이터가 나타나면 즉시 틱이 생성됩니다(지금도 시장이 닫혀도).
업데이트를 확인하기만 하면 됩니다. 새 막대 의 모양과 변수를 직접 변경하는 것입니다.

추신. MT4에는 데이터 관련성 플래그가 없습니다.

내가 말했듯이 업데이트 된 터미널에서 다시 시도해야합니다.

통제할 수 없는 행동에 대해 강하게 동의하지 않습니다. 오류가 없는 함수는 잘못된 데이터를 반환합니다. 이것은 잘못된 것입니다. 그러면 당신 자신이 그러한 상황에 처하게 될 것이고 문제가 무엇인지 궁금해 할 것입니다.

함수가 먼저 오류를 반환했다고 가정해 보겠습니다. 그들은 왼쪽으로. 다음 요청에서 함수는 오류를 반환하지 않고 일부 "왼쪽" 데이터를 반환했습니다. 이건 괜찮아?

 

잘못된 데이터는 무엇을 의미합니까?

아무것도 없거나 연결이 없거나 다른 경우 - 예, 오류가 발생합니다.
그리고 계산할 것도 없습니다.

모든 데이터가 정확하면 모든 것이 정상이고 모든 것이 시작됩니다.

지표는 데이터 업데이트를 추적하지 않습니다.
새 막대 는 브로커에서 제공되지만 확인하지 않습니다.
체크했을 때 모든 것이 올바르게 표시된다는 것을 보여주기 위해 몇 줄을 추가했습니다.

새 막대를 확인하는 작업 상황입니다.

 
Taras Slobodyanik :

잘못된 데이터는 무엇을 의미합니까?

그리고 제 첫 포스팅을 봐주세요. 거기에 오류 4066이 표시됩니까? 그런 다음 오류 0 및 잘못된 데이터 반환. 함수(이 경우 SeriesInfoInteger() )가 데이터를 보내기 전에 유효성을 확인하지 않는 이유는 무엇입니까? 왜 그녀는 오류 플래그를 올리지 않습니까? 나중에 오류를 찾는 것보다 내부 검사가 통과할 때까지 조금 더 기다리는 것이 좋습니다.

하지만 그 후 조언을 많이 해주었지만 결과는 얻지 못했다. 그리고 그것은 타이머에서도 밝혀지지 않았습니다.