백테스트 중 발견된 문제점과 근본 원인을 찾지 못함! - 페이지 2

 

그게 다야,

표시기 다시 그리기, 그것은 피셔의 많은 버전 중 하나입니다.

=> Macd_sample EA를 실행하고 EA가 실행되는 동안 화면에 표시기를 추가합니다.

EA를 일시 중지하고 표시기를 두 번 클릭하면 동일하지 않고 다시 칠해집니다.

당신이 얻는 것은 화면에 보이는 것이 아닙니다

작동하지만 표시기를 보는 것만으로는 작동하는지 확인할 수 없습니다.

 

편집 : 외부 "마침표"가 누락되었습니다.

   Joy1= iCustom ( Symbol (), 0 , "Solar Joy" , period , SolarIndex, 1 );
   Joy2= iCustom ( Symbol (), 0 , "Solar Joy" ,SolarIndex, 2 );
 

mladen은 피셔의 전문가입니다.

https://www.forex-tsd.com/metatrader-4/474-fisher-12.html

"Solar Joy"와 거의 동일한 이 표시기를 테스트할 수 있습니다. 저는 라인 제한 = 2 및 -2를 추가했습니다.


이 부분을 추가하십시오:

 extern int      RangePeriods= 35 ;
extern double   PriceSmoothing= 0.3 ;     // =0.67 bei Fisher_m10 
extern double   IndexSmoothing= 0.3 ;     // =0.50 bei Fisher_m10
extern double SolarLimit= 1 ;

void SolarJoy()
  {
   // HideTestIndicators(false);
   Joy1 = iCustom ( NULL , 0 , "Fisher_m11" ,RangePeriods,PriceSmoothing,IndexSmoothing, 4 , 1 );
   Joy2 = iCustom ( NULL , 0 , "Fisher_m11" ,RangePeriods,PriceSmoothing,IndexSmoothing, 4 , 2 );
   //Joy1=iCustom(Symbol(),0,"Solar Joy",SolarIndex,1);
   //Joy2=iCustom(Symbol(),0,"Solar Joy",SolarIndex,2);
  }

파일:
 
ffoorr :

그게 다야,

표시기 다시 그리기, 그것은 피셔의 많은 버전 중 하나입니다.

=> Macd_sample EA를 실행하고 EA가 실행되는 동안 화면에 표시기를 추가합니다.

EA를 일시 중지하고 표시기를 두 번 클릭하면 동일하지 않고 다시 칠해집니다.

당신이 얻는 것은 화면에 보이는 것이 아닙니다

작동하지만 표시기를 보는 것만으로는 작동하는지 확인할 수 없습니다.

친애하는 foorr, 나는 그것을 따라했지만 표시기 변경이나 어떤 차이도 보지 못했습니다.
 
ffoorr :

편집 : 외부 "마침표"가 누락되었습니다.

친애하는 ffoorr, 당신은 iCustom()의 지시를 참조할 수 있습니다:

[ in ]  Custom indicator input-parameters, separated by commas.

The passed parameters and their order must correspond with the declaration order and the type of extern variables of the custom indicator. If the values of input parameters  is not specified, the default values will be used.

게다가, 나는 또한 extern 매개변수를 추가하려고 시도했지만 테스트 결과 는 동일합니다.

 
ffoorr :

mladen은 피셔의 전문가입니다.

https://www.forex-tsd.com/metatrader-4/474-fisher-12.html

"Solar Joy"와 거의 동일한 이 표시기를 테스트할 수 있습니다. 저는 라인 제한 = 2 및 -2를 추가했습니다.


이 부분을 추가하십시오:


친애하는 푸에르,

예, 그들은 동일합니다. 그러나 우리는 여전히 문제가 어디에 있는지 찾을 수 없습니다, 그렇죠?

피셔 표시기가 아닌 코드를 확인할 수 있습니다. 현재 막대의 평활화는 이전 막대를 기준으로 합니다. 모든 이전 막대의 지표 데이터는 이미 고정되어 있습니다.

 
ffoorr :

친애하는 졸리드래곤,

예, 피셔 표시기입니다. 코드를 확인하십시오. 문제를 찾지 못하면 도울 수 없습니다.

친애하는 fforr , 다른 친구,

피셔 인디케이터란?

과거 막대가 현재 막대로 변경되는 표시기의 종류는 무엇입니까? 그런 종류의 표시기는 속임수이며 내가 사용할 수 없습니다. 내 말은 "Solar Joy"는 이런 종류의 지표가 아닙니다. 동의하지 않으면 이런 트릭의 문장을 보여주세요.

코드를 수정해 주셔서 감사합니다. 하지만 이 주제에 그다지 가깝지 않은 것 같습니다.

다른 사용자 지정 지표 에 대한 백 테스트에서도 동일한 문제를 발견했기 때문에 근본 원인을 찾아야 합니다.

친애하는 ffoorr , "Solar Joy"와 "Trade Joy"를 테스트하셨습니까? 친절하게 테스트하고 동일한 문제가 발생하면 알려주시겠습니까? 매우 감사합니다!


구마이
 
jollydragon :

피셔 인디케이터란?

내 말은 "Solar Joy"는 이런 종류의 지표가 아닙니다.

  1. 피셔는 다시 칠하는 지표입니다. 즉, 시장이 신호를 보냈을 때 신호를 표시하지 않습니다. 이전에 많은 막대에 신호가 있어야 했던 위치를 보여줍니다. 보기에는 좋지만 거래에 사용할 수 없습니다.
  2. ffoorr : 표시기를 다시 그리며 많은 피셔 버전 중 하나입니다.
    ffoorr는 이미 그런 종류 의 지표라고 말했습니다.
  3. 무게 중심도 다시 칠하고 있습니다.
    신호( 수직선 을 배치한 곳)가 잘 보입니다.
    그러나 그 막대가 형성되었을 때 더 많이 보였습니다.
    나중에 많은 바


 

졸리드래곤

 

매주 어딘가에서 새로운 어부 표시 마녀 팝업이 나타날 수 있습니다. 누군가 고객을 유인하려는 것일 수 있습니다. 표시기의 이름은 변경되었지만 코드는 여전히 동일합니다.

피셔 인디케이터가 첫눈에 잘 보이기 때문입니다. 그러나 이미지에서 보는 것은 거래할 때 얻는 것이 아닙니다. 지표를 어디에서 찾을 수 있는지 알 수 있습니까?   ?

나는 두 가지를 테스트하지 않고 약간 수정하여 작업을 수행했습니다. 모든 시간 및 잔액 제한을 삭제하고 EA 거래를 1 및 2가 아닌 2 및 3 막대에서 만들었습니다.

시그널 매수 및 시그널 매도에 대한 EA 오픈 및 클로즈 주문, 이것은 이익에 대한 주문을 마감할 때를 제외하고는 어떤 오실레이터에서도 좋은 결과를 제공하지 않습니다. 그래서 나는 거기서 멈추고 더 이상 진행하지 않았습니다.

근본 원인은 코드 내부에 있습니다. 코드를 연구하십시오.

다음은 지표와 EA입니다.


추신: EA의 표시기 이름을 SOLAR_JOY에서 SOLAR_JOY_A로 변경합니다. SOLAR_JOY를 다운로드하지 않았으므로 이름을 변경해야 했습니다 ;-)

작동하지 않으면 다음 줄을 주석 처리하십시오.

// if((SignalAStartHour<SignalAEndHour && h>=SignalAStartHour && h<=SignalAEndHour) || (SignalAStartHour>SignalAEndHour && (( h<=SignalAEndHour && h>=0) || (h<=23 && A h>=Signal ))))


파일:
 
ffoorr :


표시기를 어디에서 찾을 수 있는지 알 수 있습니까?

근본 원인은 코드 안에 있습니다. 코드를 연구하십시오.


친애하는 푸에르,

google.com으로 검색하여 표시기를 얻었습니다.

표시기를 다시 그리는 것을 관찰하면서 코드에 문제가 있다는 것이 맞습니다. 아래 스크린샷을 참조하십시오.

여러분 모두에게,

막대, 버퍼 또는 표시기에 대해 약간의 오해가 있는 것 같습니다.

코드에 따르면 모든 막대는 항상 왼쪽의 이전 막대를 기반으로 그려지므로 다시 그리기가 발생하지 않아야 함을 이해합니다. 그러나 나는 이미 다시 그리기를 실제로 관찰했습니다.

아래 첨부된 지표 파일을 참조하시기 바랍니다. 여기에 붙여 넣은 주요 내용은 약 10 줄입니다.

아무리 분석하려고 애를 써도 지표선을 다시 그리는 문제 코드를 찾을 수 없었고 이미 제 능력 밖이었을 것 입니다.

문제가 어디에 있는지 제안해 달라고 부탁해도 될까요? 정말, 정말, ..., 정말 감사합니다 !

   for (i=limit- 1 ; i>= 0 ; i--)
     {
      MaxH = High[iHighest( NULL , 0 ,MODE_HIGH,period,i)];
      MinL = Low[iLowest( NULL , 0 ,MODE_LOW,period,i)];
      price = (High[i]+Low[i])/ 2 ;
      Value = 0.33 * 2 *((price-MinL)/(MaxH-MinL)- 0.5 ) + 0.67 *Value1;
      Value= MathMin ( MathMax (Value,- 0.999 ), 0.999 );
      ExtBuffer0[i]= 0.5 * MathLog (( 1 +Value)/( 1 -Value))+ 0.5 *Fish1;
      Value1=Value;
      Fish1=ExtBuffer0[i];
       if (ExtBuffer0[i]> 0 ) ExtBuffer1[i]= 10 ;
       else ExtBuffer1[i]=- 10 ;
     }
파일:
solarjoy.mq4  7 kb