포럼을 어지럽히 지 않도록 모든 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 6. - 페이지 635

 
Top2n :

이 함수는 채워진 셀이 아닌 배열 셀의 수를 반환합니다.

사이클만이 당신을 도울 것입니다. 스윕 및 카운트
 

초보자에게 알려주세요!

내 작업은 다음과 같습니다. 첨부된 차트 창에서 전문가로부터 하위 창(하위 창)을 만듭니다.

여기저기 찾아본 것 같은데 방법이 없네요. 개체를 생성/편집할 수 있습니다.

다른 표시기에 의해 이미 생성된 하위 창에 있지만 필요한 것이 없습니다...

상황에서 벗어나는 방법?

 
boroda4 :

초보자에게 알려주세요!

내 작업은 다음과 같습니다. 첨부된 차트 창에서 전문가로부터 하위 창(하위 창)을 만듭니다.

여기저기 찾아본 것 같은데 방법이 없네요. 개체를 생성/편집할 수 있습니다.

다른 표시기에 의해 이미 생성된 하위 창에 있지만 필요한 것이 없습니다...

상황에서 벗어나는 방법?


기사 를 봐, 아마 당신은 뭔가를 찾을 수 있습니다
 
Vinin :

사이클만이 당신을 도울 것입니다. 스윕 및 카운트

배열의 채워진 셀 수를 계산하는 방법을 알려주실 수 있습니까?

배열에는 현재 막대를 기준으로 한 추세선 의 가격이 포함됩니다.

 sch= ObjectsTotal ( OBJ_TREND ); //количество трендовы линий
for ( int s= 0 ;s<sch;s++) 
 {
 
// ArraySort(masS,WHOLE_ARRAY,0,MODE_DESCEND);
// ArraySort(masB,WHOLE_ARRAY,0,MODE_DESCEND);
  
   DWnem= ObjectName (s); //Текущее имя объекта
   DW= "downtrendline" + IntegerToString (s); //Для фильтрации запроса
   DW2= "uptrendline" + IntegerToString (s); //
   if (DWnem= "" ) //если объекта уже нет, то обнуляем ячейку массива
   {
   masS[s]= 0 ;
   masB[s]= 0 ;
   }
 if (DWnem=DW) //если имя совпадает с фильтром, то запоминаем в массив
{
   if (ObjectGet(DWnem, OBJPROP_COLOR )==Goldenrod) { 
   masS[s]=ObjectGetValueByShift(DWnem, 1 );}
   if (ObjectGet(DWnem, OBJPROP_COLOR )==Gainsboro) { 
   masS[s]=ObjectGetValueByShift(DWnem, 1 );}
   if (ObjectGet(DWnem, OBJPROP_COLOR )==White) { 
   masS[s]=ObjectGetValueByShift(DWnem, 1 );}
}   
for ( int a= 0 ;a< 20 ;a++)// ну а тут счетчик, чтоб посчитать сколько ячеек записано в масив { if (mas[a]> 0 ) sch++; } Как остановить счетчик?

그리고 그는 계속해서 계속해서 계속합니다.

평생 알 수 없으니 도와주세요!

 

터미널 테스터의 작업 종료에 대해 터미널에서 신호를 받는 방법을 알려주시겠습니까?

 int start()
   {
     //---------------------------------- Из Терминала запустим ТерминалТестер -------------------------
    Start   = ShellExecuteW( 0 , "Open" , "terminal.exe" , "D:\\Alpari_Terminal_Tester\\tester\\optimise.ini" , "D:\\Alpari_Terminal_Tester" , 3 );
     while (STOP)
        {
         //------ Функция запроса проверки состояния ТерминалТестера ------
         // STOP=?????????????????????????????????????????????????;
         Sleep ( 1000 );
        }
     return ( 0 );
   }
 
Top2n :

배열의 채워진 셀 수를 계산하는 방법을 알려주실 수 있습니까?

배열에는 현재 막대를 기준으로 한 추세선의 가격이 포함됩니다.

그리고 그는 계속해서 계속해서 계속합니다.

평생 알 수 없으니 도와주세요!

다음과 같이 시도하십시오.

 int limit = ...; //до какого числа нужно
MathMin (sch++,limit); //если это будет работать, не пробовал

아마도 그럴 것이다. 행운을 빕니다!

 
Top2n :

배열의 채워진 셀 수를 계산하는 방법을 알려주실 수 있습니까?

배열에는 현재 막대를 기준으로 한 추세선의 가격이 포함됩니다.

그리고 그는 계속해서 계속해서 계속합니다.

평생 알 수 없으니 도와주세요!


아마도 카운터를 제 시간에 재설정해야 더 많이 감기지 않고 처음부터 다시 계산됩니까?

킬로미터 함수는 좋지 않습니다. 일부 작업이 한 번만 호출되더라도 완료된 작업 부분을 별도의 함수로 이동하는 것이 좋습니다. 그리고 메인 함수에서 이들을 별도로 호출합니다.

그런 계산이 통할까요?

 #property strict

/******************************************************************************/
uint getFilledCellsNumber( double &array[]) { // Массив принимается по ссылке, то есть, НЕ копируется
   uint cnt = 0 ;

   for ( int i = 0 , limit = ArraySize (array); i < limit; i++) {
     if (array[i] > 0 ) {
      cnt++;
    }
  }

   return cnt;
}

/******************************************************************************/
void OnStart () {
   double a[] = { 0 , 1.2 , 1.3 , 0 , 1.1 };
   uint filledCellsNumber = getFilledCellsNumber(a); // Массив передаётся по ссылке, то есть, НЕ копируется

   Print ( "Number of filled cells: " , filledCellsNumber);
}

실행하면 다음과 같이 됩니다.

 00 : 24 : 46 Script 1 EURUSDm,H1: loaded successfully
00 : 24 : 46 1 EURUSDm,H1: initialized
00 : 24 : 46 1 EURUSDm,H1: Number of filled cells: 3
00 : 24 : 46 1 EURUSDm,H1: uninit reason 0
00 : 24 : 46 Script 1 EURUSDm,H1: removed

맞는 것 같습니다.

 

안녕하세요.

2012년에 작성된 프로그램을 컴파일할 때 경고가 나타납니다.

유형 변환으로 인한 데이터 손실 가능성 FinBuy1531.mq4 144 7

그것은 무엇을 의미하며 그 발생을 피하는 방법은 무엇입니까?

추신: 프로그램은 테스터에서 정상적으로 실행됩니다.

 
simpleton :

아마도 카운터를 제 시간에 재설정해야 더 많이 감기지 않고 처음부터 다시 계산됩니까?

킬로미터 함수는 좋지 않습니다. 일부 작업이 한 번만 호출되더라도 완료된 작업 부분을 별도의 함수로 이동하는 것이 좋습니다. 그리고 주요 기능에서 이러한 개인을 호출합니다.

그런 계산이 통할까요?

실행하면 다음과 같이 됩니다.

맞는 것 같습니다.


OOO 대단히 감사합니다!!!))) 일반적으로 잘 작동합니다.

도움을 주셔서 감사합니다!

 
Shurkin :

안녕하세요.

2012년에 작성된 프로그램을 컴파일할 때 경고가 나타납니다.

유형 변환으로 인한 데이터 손실 가능성 FinBuy1531.mq4 144 7

그것은 무엇을 의미하며 그 모양을 피하는 방법은 무엇입니까?

추신: 프로그램은 테스터에서 정상적으로 실행됩니다.

코드에서 형식 캐스팅 을 올바르게 수행해야 합니다.