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

 
좋은 저녁이에요 .
 if (count== 0 )comment+="No symbols for trading!";
       Comment (comment);
       MqlTick tick;
      tick.ask= SymbolInfoDouble (structPairs.name, SYMBOL_ASK );
      tick.bid= SymbolInfoDouble (structPairs.name, SYMBOL_BID );
      tick.time= TimeCurrent ();
      Trade( false ,structPairs, tick, Orders, inputs);
이 코드 조각은 무엇을 말합니까? 어떤 경우에 나타납니까? 모든 커플이 목록에 있고 모든 기록이 로드됩니다.
 
Darirunu :
좋은 저녁입니다. 이 코드는 무엇을 말합니까? 어떤 경우에 나타납니까? 모든 커플이 목록에 있고 모든 기록이 로드됩니다.

투자자 비밀번호?

 
Darirunu :
좋은 저녁입니다. 이 코드는 무엇을 말합니까? 어떤 경우에 나타납니까? 모든 커플이 목록에 있고 모든 기록이 로드됩니다.
특정 카운터가 0이면(이전 항목의 결과에 따라 무엇을 해야 하는지 알고 있음) 주석에 줄이 추가됩니다.
No symbols for trading!

그럼 모든게 평소대로..

 
Taras Slobodyanik :

감사해요

두 번째 막대에 개체가 없는지 확인합니다.

         for ( int jj=i;jj<obj_total;jj++)
           {
            nameARs= ObjectName (jj);
             if ( ObjectType (nameARs)!= OBJ_RECTANGLE ) continue ;
             if ( StringFind (nameARs, "QUADRO" , 0 )!=- 1 )
              {

               time_ars= ObjectGetInteger ( 0 ,nameARs, OBJPROP_TIME ); //break;

              }
           }
         //===---===
         if (time_ars!= Time [i+ 2 ])
           {
           //....
           }
열 개의 막대에 개체가 없는지 확인하는 방법은 무엇입니까?
 

지시자.

각 막대에 대해 해당 기간 의 강세 막대 크기와 약세 막대 크기 합계를 계산해야 합니다.

버퍼에 수신된 양의 차이를 기록합니다.

여기서 무슨 문제가 있습니까?

 int counted_bars= IndicatorCounted (),
       limit;
 
   if (counted_bars> 0 )
      counted_bars--;
   
   limit= Bars -counted_bars;
   
   double up_sum= 0 , down_sum= 0 ;
   for ( int i= 0 ;i<limit;i++)
   {
       for ( int f = 0 ; f < Period ; f++){
         if (close[f] - open[f] > 0 ) up_sum += close[f] - open[f];
         if (close[f] - open[f] < 0 ) down_sum += MathAbs (close[f] - open[f]);
      }
      PVTBuffer[i]=up_sum-down_sum;
   }
 
Roman Sharanov :

지시자.

각 막대에 대해 해당 기간 의 강세 막대 크기와 약세 막대 크기 합계를 계산해야 합니다.

버퍼에 수신된 양의 차이를 기록합니다.

여기서 무슨 문제가 있습니까?

옮기다

 double up_sum= 0 , down_sum= 0 ;

첫 번째 사이클 내부 - 두 번째 선언 전.

 
Roman Sharanov :

지시자.

각 막대에 대해 해당 기간 의 강세 막대 크기와 약세 막대 크기 합계를 계산해야 합니다.

버퍼에 수신된 양의 차이를 기록합니다.

여기서 무슨 문제가 있습니까?

변수 up_sum= 0 , down_sum= 0 을 재설정해 보십시오 .

두 번째 내부 루프 전에.

 int counted_bars= IndicatorCounted (),
       limit;
 
   if (counted_bars> 0 )
      counted_bars--;
   
   limit= Bars -counted_bars;
   
   double up_sum, down_sum;
   for ( int i= 0 ;i<limit;i++)
   {
    up_sum= 0 ; 
    down_sum= 0 ;
       for ( int f = 0 ; f < Period ; f++){
         if (close[f] - open[f] > 0 ) up_sum += close[f] - open[f];
         if (close[f] - open[f] < 0 ) down_sum += MathAbs (close[f] - open[f]);
      }
      PVTBuffer[i]=up_sum-down_sum;
   }

이 같은

 
Alekseu Fedotov :

변수 up_sum= 0 , down_sum= 0 을 재설정해 보십시오 .

두 번째 내부 루프 전에.

이 같은

나는 그렇게했고 네, 논리적이지만 이제는 더 이상 표시되지 않습니다.

 
Ghabo :

감사해요

두 번째 막대에 개체가 없는지 확인합니다.

열 개의 막대에 개체가 없는지 확인하는 방법은 무엇입니까?

개체의 정확한 이름을 만드는 방법을 알고 있다면 차트의 모든 개체를 반복하는 것은 의미가 없습니다.
이 (가정) 이름을 반복하는 것으로 충분합니다.

 for ( int i= 0 ;i< 10 ;i++)
   {
   if ( ObjectFind ( 0 , "QUADRO" + Time [i])< 0 )
       Print ( "Нет объекта на баре № " , IntegerToString (i));
   else
       Print ( "Найден oбъект на баре № " , IntegerToString (i));
   }
 
Roman Sharanov :

나는 그렇게했고 네, 논리적이지만 이제는 더 이상 표시되지 않습니다.

네, 고쳐주세요.

내부 루프에서

 for ( int f = 0 +i; f < Period +i; f++)