무엇이 틀릴 수 있습니다. Expert Advisor를 작성할 때 변경 사항을 추적하기 위해 여러 번 테스트해야 합니다. 임의의 수의 테스트 후에 전략 테스터는 코드의 변경 사항을 감지하지 않습니다. 때론 터무니 없는 상황에까지 이르게 된다. 코드 조각을 가져 와서 삭제할 수 있으며 올빼미는 이전에 작성된 알고리즘에 따라 테스터에서 작동합니다. CSV의 구문 분석 계산에서도 동일한 일이 발생합니다. CSV에서 특정 수의 테스트를 수행한 후 일종의 임의의 넌센스가 구문 분석되기 시작합니다.
Expert Advisor가 테스터에서 작업할 때 문제가 발생했습니다. 몇 분 안에 테스트 중입니다. 분 데이터를 사용하여 이전 시간대에 대한 확률을 직접 계산합니다.
분의 기록은 2001년부터 업로드되었습니다. <차트> 설정 탭에서는 이력과 표시되는 막대의 최대 개수를 설정합니다.
차트의 전체 기록이 스크롤됩니다.
문제는 디버그 인쇄의 도움으로 밝혀진 것처럼 테스터를 실행한 날짜에 관계없이 최대 막대 수가
테스트의 첫 번째 막대(시작 시)에 있는 Bars 변수에서는 항상 1001 또는 1002입니다. 다음 막대마다 Bars 값이 1씩 증가합니다.
따라서 처음에는 시니어 TF를 계산할 수 없습니다.
한 가지 해결책이 있습니다. Bars가 원하는 값에 도달하기 전에 거래 금지를 추가하십시오.
이 문제를 다른 방법으로 해결할 수 있습니까? 이 Bars의 시작 값이 테스터기에 어떻게 든 증가했습니까?
Expert Advisor가 테스터에서 작업할 때 문제가 발생했습니다. 몇 분 안에 테스트 중입니다. 분 데이터를 사용하여 이전 시간대에 대한 확률을 직접 계산합니다.
분의 기록은 2001년부터 업로드되었습니다. <차트> 설정 탭에서 이력과 표시되는 막대의 최대 개수를 설정합니다.
차트의 전체 기록이 스크롤됩니다.
문제는 디버그 인쇄의 도움으로 밝혀진 것처럼 테스터를 실행한 날짜에 관계없이 최대 막대 수가
테스트의 첫 번째 막대(시작 시)에 있는 Bars 변수에서는 항상 1001 또는 1002입니다. 다음 막대마다 Bars 값이 1씩 증가합니다.
따라서 처음에는 시니어 TF를 계산할 수 없습니다.
한 가지 해결책이 있습니다. Bars가 원하는 값에 도달하기 전에 거래 금지를 추가하십시오.
이 문제를 다른 방법으로 해결할 수 있습니까? 이 Bars의 시작 값이 테스터기에 어떻게 든 증가 했습니까?
추신 나는 컴파일 버튼을 눌렀습니다.
평활 이동 평균을 계산하는 알고리즘을 이해하는 것은 매우 필요합니다. 여러 가지 이유로 iMA 함수를 호출하는 것은 적절하지 않습니다.
https://www.metatrader5.com/en/terminal/help/indicators/trend_indicators/ma#smma 의 정보를 이해했습니다.
첫 번째 요소는 종가 합계를 기간으로 나눈 값입니다.
다음은 SMMA (i) = (SMMA (i - 1) * (N - 1) + CLOSE (i)) / N 공식을 사용하여 계산됩니다.
2017년 2월 24일 19:00부터 2017년 2월 24일 23:00(GMT+2)까지의 기간 동안 5와 종가 EUR/USD H1인 기간을 가정해 보겠습니다. 마지막 5개의 촛불
종가 - 1.05681; 1.05702; 1.05639; 1.05612; 1.05592.
따라서 1 요소는 1.056452입니다. 두 번째 요소 - 1.056852 세 번째 요소 - 1.05676 네 번째 요소 - 1.056632 다섯 번째 요소 - 1.056489
그리고 SMMA 5 차트에서 종가는 1.05706 과 같습니다. 차이는 이미 세 번째 기호에 있습니다.
나는 무엇을 잘못 생각합니까?
1.05706을 얻기 위해 올바르게 계산하는 방법은 무엇입니까?
평활 이동 평균을 계산하는 알고리즘을 이해하는 것은 매우 필요합니다. 여러 가지 이유로 iMA 함수를 호출하는 것은 적절하지 않습니다.
https://www.metatrader5.com/en/terminal/help/indicators/trend_indicators/ma#smma 의 정보를 이해했습니다.
첫 번째 요소는 종가 합계를 기간으로 나눈 값입니다.
다음은 SMMA (i) = (SMMA (i - 1) * (N - 1) + CLOSE (i)) / N 공식을 사용하여 계산됩니다.
2017년 2월 24일 19:00부터 2017년 2월 24일 23:00(GMT+2)까지의 기간 동안 5와 종가 EUR/USD H1인 기간을 가정해 보겠습니다. 마지막 5개의 촛불
종가 - 1.05681; 1.05702; 1.05639; 1.05612; 1.05592.
따라서 1 요소는 1.056452입니다. 두 번째 요소 - 1.056852 세 번째 요소 - 1.05676 네 번째 요소 - 1.056632 다섯 번째 요소 - 1.056489
그리고 SMMA 5 차트에서 종가는 1.05706 과 같습니다. 차이는 이미 세 번째 기호에 있습니다.
나는 무엇을 잘못 생각합니까?
1.05706을 얻기 위해 올바르게 계산하는 방법은 무엇입니까?
여러분, 발전했습니다! 모두에게 좋은 하루. 전문가 템플릿(스크립트)을 만들 때 만드는 질문에 관심이 있습니다. 이것은 어딘가에서 편집할 수 있으며 어떻게 수행됩니까?
지표 자체를 보면 더 명확해집니다.
이중 SMMA(int 마침표)
{
// 종가로 배열 채우기
정수 k=마침표;
for(int i=1; i<=마침표; i++)
{
H1_닫기[i]=닫기[k];
// Print("H1_Close[",i,"] ",H1_Close[i]," Close[",k,"] ",Close[k]);
케이--;
}
// 첫 번째 요소를 종가의 평균으로 계산합니다.
이중 합=0;
for (int i=1; i<=period;i++)
합계=합+H1_닫기[i]; //SUM1 = SUM(닫기, N)
이중 TmpSMMA=합계/마침표; //SMMA1 = SUM1/N
// i번째 요소를 SMMA(i) = (SMMA(i - 1) * (N - 1) + CLOSE(i)) / N으로 계산
for(int i=2;i<=period;i++)
TmpSMMA=(TmpSMMA*(마침표-1)+H1_닫기[i])/마침표;
}
그러나 결과는 여전히 터미널의 지표 데이터와 매우 다릅니다. 왜요 ?
평활 이동 평균을 계산하는 알고리즘을 이해하는 것은 매우 필요합니다. 여러 가지 이유로 iMA 함수를 호출하는 것은 적절하지 않습니다.
https://www.metatrader5.com/en/terminal/help/indicators/trend_indicators/ma#smma 의 정보를 이해했습니다.
첫 번째 요소는 종가 합계를 기간으로 나눈 값입니다.
다음은 SMMA (i) = (SMMA (i - 1) * (N - 1) + CLOSE (i)) / N 공식을 사용하여 계산됩니다.
2017년 2월 24일 19:00부터 2017년 2월 24일 23:00(GMT+2)까지의 기간 동안 5와 종가 EUR/USD H1인 기간을 가정해 보겠습니다. 마지막 5개의 촛불
종가 - 1.05681; 1.05702; 1.05639; 1.05612; 1.05592.
따라서 1 요소는 1.056452입니다. 두 번째 요소 - 1.056852 세 번째 요소 - 1.05676 네 번째 요소 - 1.056632 다섯 번째 요소 - 1.056489
그리고 SMMA 5 차트에서 종가는 1.05706 과 같습니다. 차이는 이미 세 번째 기호에 있습니다.
나는 무엇을 잘못 생각합니까?
1.05706을 얻기 위해 올바르게 계산하는 방법은 무엇입니까?
따라서 klyudnik에는 계산 알고리즘이 있습니다.
Vitaly Muzichenko 의 답변에 내가 받은 기능 코드를 작성했지만 오류가 무엇인지 알 수 없습니다
그래서 나는 계산에서 모든 것을 하고 결과가 작동하지 않습니다. 4일째 앉아 있는데 도저히 알 수가 없다.
Vitaly Muzichenko 의 답변에 내가 받은 기능 코드를 작성했지만 오류가 무엇인지 알 수 없습니다