CSymbolList slMain;
intOnInit ()
{
if(!slMain.SetSymbols(inWorkSymbols)) return(-1);
for ( int i = 0 ; i < slMain.GetSymbolCount(); i++)
Print (slMain.GetSymbolName(i));
//--- ok
return(0);
}
둘째, 더 중요한 것은 테스트의 처음 며칠의 기록이 손실된다는 것입니다. 따라서 위의 예에서 테스트는 날짜 2011.01.03(처음 두 줄에서 볼 수 있음)부터 설정되었지만 코드를 처리한 후(이 경우 줄 2-3) 테스터는 즉시 점프합니다. 앞으로 17일, 그 다음에는 이 17일을 고려하지 않고 테스트가 계속됩니다.
Renat : 당신은 산술 오버플로를 발견했습니다. 결과적으로 그들은 17.5일 동안 기다리기로 했습니다.
네, 저는 "caught overflow"에 대해 논쟁하는 것이 아닙니다. 왜냐하면 저는 잘 모르기 때문입니다. :) 문제는 컴파일러나 테스터 가 치명적인 오류를 발행하여 그러한 상황을 중지하는 것이 바람직하다는 것입니다. 또는 다른 방식으로). 모든 사람이 터미널의 경고가 없을 때 프로그램이 어떻게 작동하는지 세심하게 이해하지는 못할 것입니다.
나는 또한 코드가 첫 번째 줄의 OnInit()에 설정되어 있다는 문제를 봅니다(즉, 과거 데이터가 업로드되기 전). 하지만 어떤 이유로 처음 17.5일의 데이터가 손실됩니다.
그가 망친 것 같습니다. 비판은 환영합니다.
분명히 우리는 전문가에 대해 이야기 할 것이므로 다음과 같습니다.
그리고:
보장합니다. 적어도 나는 끊임없이 그것에 의존하고 있으며 문제는 결코 발생하지 않았습니다.
알았습니다. 어쨌든 미묘한 순간입니다.
삼촌
그래서 그렇습니다. 그러나 제 경우에는 이것이 중복됩니다.
보시다시피 마지막 주기의 도구에 오류가 있으면 OnTik에서 반복이 없습니다.
알았습니다. 어쨌든 미묘한 순간입니다.
삼촌
그래서 그렇습니다. 그러나 제 경우에는 이것이 중복됩니다.
보시다시피 마지막 주기의 도구에 오류가 있으면 OnTik에서 반복이 없습니다.
예, 나는 주장하지 않습니다. 실행 결과를 확인하는 것만으로도 정확합니다.
예, 나는 주장하지 않습니다. 실행 결과를 확인하는 것만으로도 정확합니다.
이 트릭을 찾았습니다. 여기에서 이 스크립트를 실행하면 "중단"됩니다.
그러나 동일한 세 줄(코드)이 Expert Advisor의 OnInit() 함수에 먼저 삽입되고 이러한 Expert Advisor가 테스트 모드 에서 시작되면 다음과 같은 결과가 나타납니다.
첫째, 코드는 테스트 모드에서 어떻게든 작동합니다.
둘째, 더 중요한 것은 테스트의 처음 며칠의 기록이 손실된다는 것입니다. 따라서 위의 예에서 테스트는 날짜 2011.01.03(처음 두 줄에서 볼 수 있음)부터 설정되었지만 코드를 처리한 후(이 경우 줄 2-3) 테스터는 즉시 점프합니다. 앞으로 17일, 그 다음에는 이 17일을 고려하지 않고 테스트가 계속됩니다.
결과적으로 그들은 17.5일 동안 기다리기로 했습니다.
당신은 산술 오버플로를 발견했습니다.
결과적으로 그들은 17.5일 동안 기다리기로 했습니다.
당신은 산술 오버플로를 발견했습니다.
결과적으로 그들은 17.5일 동안 기다리기로 했습니다.
네, 저는 "caught overflow"에 대해 논쟁하는 것이 아닙니다. 왜냐하면 저는 잘 모르기 때문입니다. :) 문제는 컴파일러나 테스터 가 치명적인 오류를 발행하여 그러한 상황을 중지하는 것이 바람직하다는 것입니다. 또는 다른 방식으로). 모든 사람이 터미널의 경고가 없을 때 프로그램이 어떻게 작동하는지 세심하게 이해하지는 못할 것입니다.
나는 또한 코드가 첫 번째 줄의 OnInit()에 설정되어 있다는 문제를 봅니다(즉, 과거 데이터가 업로드되기 전). 하지만 어떤 이유로 처음 17.5일의 데이터가 손실됩니다.
네, 하지만 테스터에서 작동합니다. 왜냐하면 Sleep은 무시되기 때문입니다.
Sleep()이 무시되고 있다고 확신합니까? - 2호선과 3호선의 종점시간 차이를 보세요.