MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 1541

 
SanAlex :

마치 차를 타고 세 방향으로 운전하는 것과 같습니다.

\\\\\\\\\\\\\\\\\\\\\\\\\\

다중 통화 Expert Advisor를 사용할 수는 있지만 각각에 대해 별도의 기능을 작성하십시오.

MT4의 다중 통화는 테스트할 수 없습니다.

 
MakarFX :

MT4의 다중 통화는 테스트할 수 없습니다.

예 ! 지금은 방법이 아니라 노력하고 있습니다. - MT5에서와 같이 어떤 이유로 작동하지 않습니다.

 
좋은 오후입니다. 도움이 필요합니다. 구조체 배열을 복사하려면 어떻게 해야 합니까? 구조 배열에 대해 ArrayCopy 의 유사체가 필요합니다. 미리 감사드립니다.
 

알려주십시오. MT4 전략 테스터 에서 올빼미를 테스트할 때 보증금의 크기(100,1000 등)를 설정할 수 있습니다. 제가 이해한 대로 테스터는 이렇게 합니다.

예를 들어 $100와 같이 저장소가 비었을 때 테스터가 $100를 다시 "보충"하고 테스트가 지정된 날짜까지 계속되도록 설정할 수 있습니까?

 
законопослушный гражданин :

알려주십시오. MT4 전략 테스터 에서 올빼미를 테스트할 때 보증금의 크기(100,1000 등)를 설정할 수 있습니다. 제가 이해한 대로 테스터는 이렇게 합니다.

예를 들어 $100와 같이 저장소가 비었을 때 테스터가 $100를 다시 "보충"하고 테스트가 지정된 날짜까지 계속되도록 설정할 수 있습니까?

아니요

그리고 무엇을 위해?

 
MakarFX :

아니요

그리고 무엇을 위해?

올빼미 설정을 조정하려면

 
законопослушный гражданин :

올빼미 설정을 조정하려면

준법 시민 :

알려주십시오. MT4 전략 테스터 에서 올빼미를 테스트할 때 보증금의 크기(100,1000 등)를 설정할 수 있습니다. 제가 이해한 대로 테스터는 이렇게 합니다.

예를 들어 $100와 같이 저장소가 비었을 때 테스터가 $100를 다시 "보충"하고 테스트가 지정된 날짜까지 계속되도록 설정할 수 있습니까?

"얼마나 많은 돈을 버는 데 필요한지"를 실험적으로 선택하고 싶습니까?

테스터의 경우 - 상당한 보증금과 아주, 아주, 최소한의 제비를 받습니다.

 
законопослушный гражданин :

알려주십시오. MT4 전략 테스터 에서 올빼미를 테스트할 때 보증금의 크기(100,1000 등)를 설정할 수 있습니다. 제가 이해한 대로 테스터는 이렇게 합니다.

예를 들어 $100와 같이 저장소가 비었을 때 테스터가 $100를 다시 "보충"하고 테스트가 지정된 날짜까지 계속되도록 설정할 수 있습니까?

MT4에는 이 기능이 없습니다.

하지만 MT5에는 모든 것이 있습니다.

"이러한 기능이 MT4에 계획되어 있습니까?"라는 질문에 개발자는 MT4 터미널의 개발이 중단되었음을 분명히 씁니다.


아아, 좋은 고품질 테스터를 원한다면 MT5로 이동해야합니다.

 
законопослушный гражданин :

올빼미 설정을 조정하려면

최대 예치금과 최소 로트를 취한 다음 테스트 종료 시의 인출액을 확인합니다.
 

안녕하세요. 알아낼 수 있도록 도와주세요.

배열은 표시기 속성에서 선언됩니다.

 double     ZigZagBuffer[];     
double     HighMapBuffer[];    
double     LowMapBuffer[];     

그런 다음 우리는 그것들을 무엇에 사용할 것인지 묻습니다.

 void OnInit ()
  {
//--- indicator buffers mapping
   SetIndexBuffer ( 0 ,ZigZagBuffer, INDICATOR_DATA );
   SetIndexBuffer ( 1 ,HighMapBuffer, INDICATOR_CALCULATIONS );
   SetIndexBuffer ( 2 ,LowMapBuffer, INDICATOR_CALCULATIONS );
....

  }

다음으로 int OnCalculate 에서 0.0 값을 씁니다.

 int OnCalculate ( const ...

                        )
  {
  ...

   if (prev_calculated== 0 )
     {
       ArrayInitialize (ZigZagBuffer, 0.0 );
       ArrayInitialize (HighMapBuffer, 0.0 );
       ArrayInitialize (LowMapBuffer, 0.0 );
     } 
  ...
  

그런 다음 마지막 100개의 막대에 대한 조건이 충족되면 버퍼 값 ZigZagBuffer[i]를 res에 씁니다.


 ...
while (extreme_counter<ExtRecalc && i>rates_total- 100 )
        {
         res=ZigZagBuffer[i];
         if (res!= 0.0 )
            extreme_counter++;
         i--;
        }
      i++;
      start=i;
 ...


문제는 ZigZagBuffer[i]의 다른 값은 0.0이 아닌 다른 값은 어디에서 왔습니까?

마지막 100개 막대에 대해 디버거에서 루프가 실행되면 0.0을 제외한 다른 값이 빠져나가므로 Extreme_counter가 증가합니다 ???