그래서 나는 0 분할을 일으키는 문제를 발견했습니다. 지금까지 이것을 본 적이 없습니다. 나는 이것이 나타날 때까지 내 코드가 끝났다고 생각했습니다! 내 EA에는 3가지 변형이 있습니다. 1은 완벽하게 작동하고 다른 두 가지는 이 부서에서 유사합니다(아래 코드). 이것이 왜 0 분할을 일으키는지 이해할 수 없습니까?
문제를 일으키는 줄을 나타내는 화살표가 있는 줄을 찾으십시오... 여기에서 이 문제로 분리했습니다. 또는 AUDUSD 백테스트에서 이상 현상이 발생합니다(Forex Tester 2에서 내 과거 데이터를 다운로드합니다... 내 EA의 벌금 중 하나에서 작동하는 것 같습니다.)
문제를 찾았는지 확실하지 않습니다. . . 가지고 있는지 어떻게 압니까?
나는 당신이 화살표로 표시한 코드가 0으로 나누기 오류를 일으킬 것이라고 생각하지 않습니다. . .
if (ema21 - H1_low > Point / 2 ) // << These parts here?
이것으로 . . .
double HalfAPoint = Point / 2.0 ; if (ema21 - H1_low > HalfAPoint)
그리고 다시 시도하십시오.
나는 당신 의 오류 가 다른 곳에 있기 때문에 남아 있을 것이라고 생각 합니다 . . .
문제를 찾았는지 확실하지 않습니다. . . 가지고 있는지 어떻게 압니까?
나는 당신이 화살표로 표시한 코드가 0으로 나누기 오류를 일으킬 것이라고 생각하지 않습니다. . .
이것으로 . . .
그리고 다시 시도하십시오.
나는 당신 의 오류 가 다른 곳에 있기 때문에 남아 있을 것이라고 생각 합니다 . . .
내 EA의 "V1-V2-V3"이 있습니다.
나는 본질적으로 V1을 새로운 빈 템플릿에 복사하고 위에서 설명한 부분을 (아래 코드)로 변경했으며 AUDUSD에 대한 백 테스트 중에 0 분할 오류가 발생했습니다. 데이터가 0분할과 관련이 있습니까? 2001년부터 2013년까지 EURUSD에서 내 EA의 모든 버전에 대한 백 테스트를 실행할 때(Forex Tester가 데이터를 다운로드하고 ST로 가져옴), 내 EA 중 하나에서 오류가 발생하지 않습니까?
PullBack_Bar = Time[ 1 ]; // << These parts here? } if (PullBack_Bar > triggerBarTime) // << These parts here? { H1_Buy_Touch = "H1 Buy Touch" ; OrderEntry( 0 ); // Pending order Buy Stop function is called. }
다른 쌍을 통해 실행 중이고 V2 및 V3이 있는 AUDUSD에 있지 않는 한 이 0분할 문제가 표시되지 않는 것 같습니까? 데이터와 관련이 없는 경우 수정하시겠습니까?
내 EA의 "V1-V2-V3"이 있습니다.
나는 본질적으로 V1을 새로운 빈 템플릿에 복사하고 위에서 설명한 부분을 (아래 코드)로 변경했으며 AUDUSD에 대한 백 테스트 중에 0 분할 오류가 발생했습니다. 데이터가 0분할과 관련이 있습니까? 2001년부터 2013년까지 EURUSD에서 내 EA의 모든 버전에 대한 백 테스트를 실행할 때(Forex Tester가 데이터를 다운로드하고 ST로 가져옴), 내 EA 중 하나에서 오류가 발생하지 않습니까?
여기에는 마음의 독자가 없습니다. 나누기가 있는 코드를 표시하지 않았으므로 여기에서 아무도 도와줄 수 없습니다.
내가 던진 것은 간단한 질문이었습니다. 데이터가 그것과 관련이 있습니까? 그렇지 않다면 나는 그것을 경험 한 사람들로부터 제로 디바이드 에 대해 더 많이 이해합니다 ... 여기에 마인드 리더가 있다고 생각하지 않았습니다 ...
여기에 모든 작은 구분을 게시하기에는 너무 많은 코드가 있습니다. 내가 우려하는 한 나는 위에서 설명한 것과 문제를 분리했다고 생각했지만 분명히 그렇지는 않았습니다. 작은 것 하나를 변경한 다음 0으로 나누기 때문에 작동하지 않는 것이 조금 이상합니다(제가 변경한 작은 것은 첫 번째 게시물에서 설명한 것입니다).
@RaptorUK 따라서 본질적으로 AUDUSD에서 백 테스트하는 동안 데이터 가격이 비정상적일 수 있습니다. V2와 V3가 완벽하게 1/4 정도 실행되다가 갑자기 0 분할에 도달하여 EA가 함께 작동하지 못하게 하는 것이 조금 이상합니다.
@RaptorUK 따라서 본질적으로 AUDUSD에서 백 테스트하는 동안 데이터 가격이 비정상적일 수 있습니다. V2와 V3이 완벽하게 1/4 정도 실행되다가 갑자기 0분할에 도달하여 EA가 함께 작동하지 못하게 하는 것이 조금 이상합니다.
이 간단한 문제를 분류하는 데 며칠을 보내고 싶다면 언제든지 부담 없이 지내십시오. . . . 나는하지 않을 것이다.
백 테스트 중에 언제 발생하는지 안다면 쉽게 찾을 수 있습니다. . . 백 테스트가 발생한 날짜 하루 전에 백 테스트를 시작합니다. . . 언제 일어날지 정확히 알아내십시오. . . 코드의 모든 구분에 대해 . . . 예, 모두, 제수를 인쇄하는 나눗셈이 포함된 줄 앞에 Print()를 추가하고 해당 코드 줄에 대한 참조를 추가합니다. . .
예를 들어:
if (d == 0.0 ) Print ( "a = c / d - divisor d is " + d ); a = c / d;
코드가 0으로 나누기 오류로 종료되면 로그 파일을 확인 하고 마지막 몇 인쇄에서 오류를 생성한 코드 행과 0으로 설정된 변수를 보여주는 인쇄가 표시됩니다. . .
. . . 더 똑똑하게 일하는 법을 배우고 문제를 논리적이고 효율적으로 찾아내십시오.
이봐, 당신 말이 맞아, 모호해서 미안해!
그리고 당신은 배우지 않습니다 - 당신은 모든 (관련) 코드와 변수 값을 반복적으로 요청 받았습니다. 왜 우리는 21개의 게시물을 나중에 요청해야 합니까? 코드에 인쇄 문을 넣고 what 및 was와 같은 정보를 얻으십시오.
그런 다음 여전히 문제를 해결할 수 없으면 질문하십시오.
그래서 나는 0 분할 을 일으키는 문제를 발견했습니다. 지금까지 이것을 본 적이 없습니다. 나는 이것이 나타날 때까지 내 코드가 끝났다고 생각했습니다! 내 EA에는 3가지 변형이 있습니다. 1은 완벽하게 작동하고 다른 두 가지는 이 부서에서 유사합니다(아래 코드). 이것이 왜 0 분할을 일으키는지 이해할 수 없습니까?
문제를 일으키는 줄을 나타내는 화살표가 있는 줄을 찾으십시오... 여기에서 이 문제로 분리했습니다. 또는 AUDUSD 백테스트에서 이상 현상이 발생합니다(Forex Tester 2에서 내 과거 데이터를 다운로드합니다... 내 EA의 벌금 중 하나에서 작동하는 것 같습니다.)