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

 

MT4에서 엑셀과 같은 구조로 테이블을 만들 수 있나요(+,- 데이터 접기 및 확장)? 그렇다면 어디에서 읽을까요?


 

안녕하세요! 코드만 배운다. 오류가 있습니다. 수정 방법을 입력할 수 없습니다.


int CountTrades(int 유형, int 마술)

{

정수 수 = 0;

for(int i=OrdersTotal()-1;i>=0; i-)

{

if( 주문 선택 ( 나는 ,SELECT_BY_POS, MODE_TRADES ))

{

if(OrderSymbol()==Symbol() && (OrderType()==유형||유형==-1) &&

(OrderMagicNumber()==매직||매직==-1))

카운트++;

}

}

리턴(카운트);


그가 맹세한 것을 빨간색으로 강조 표시했습니다.


오류는 다음과 같습니다.

"-" 피연산자가 필요함

")" - 예기치 않은 토큰

"i" - 선언되지 않은 식별자


첫 번째 실수에서 내가 뒤에 마이너스를 붙인 것을 그가 좋아하지 않는 것 같습니다. 어떻게 든 하이픈을 넣어야합니까?

나는 교과서와 함께 모든 글자를 글자로 만들었지 만 코드는 컴파일되지 않습니다.

당신의 도움이 필요합니다.

 
Falx :

안녕하세요! 코드만 배운다. 오류가 있습니다. 수정 방법을 입력할 수 없습니다.

두 개의 빼기 및 함수를 닫는 괄호 없음.
 
Aleksey Vyazmikin :
두 개의 빼기 및 함수를 닫는 괄호 없음.

정말 감사합니다! 모든 것을 고쳤습니다! 공장!

 

두 날짜 시간을 시간별로 비교해야했는데 다음과 같이 했습니다.

 string TimeCompare = StringSubstr ( TimeToString (MyLastNewsTime[i], TIME_DATE | TIME_MINUTES ), 0 , 13 );
string TimeCompare1 = StringSubstr ( TimeToString (MyLastNewsTime1[i], TIME_DATE | TIME_MINUTES ), 0 , 13 );
if (TimeCompare != TimeCompare1)
...

모든 것이 해결되었지만 아마도이 방법이 가장 정확하지 않습니까? 프로그래머는 뭐라고 할까요?

 
Nauris Zukas :

두 날짜 시간을 시간별로 비교해야했는데 다음과 같이 했습니다.

모든 것이 해결되었지만 아마도 이 방법이 가장 정확하지 않습니까? 프로그래머는 뭐라고 할까요?


 if ( TimeHour (MyLastNewsTime[i])!= TimeHour (MyLastNewsTime1[i]))
 {
 }
 
Nikolay Ivanov :

내가 그것을 아주 정확하게 설명하지 않았을 수도 있지만, 최대 한 시간까지 두 개의 날짜를 찾아야 합니다(분과 초는 중요하지 않습니다). 시간으로만 비교합니다.

 
Nauris Zukas :

내가 그것을 아주 정확하게 설명하지 않았을 수도 있지만, 최대 한 시간까지 두 개의 날짜를 찾아야 합니다(분과 초는 중요하지 않습니다).


날짜를 찾거나 두 날짜의 시간을 비교해야 합니까?

 
Nikolay Ivanov :

날짜를 찾거나 두 날짜의 시간을 비교해야 합니까?

시간까지의 날짜를 찾아야 합니다(분과 초는 중요하지 않습니다).

 
Nikolay Ivanov :

날짜를 찾거나 두 날짜의 시간을 비교해야 합니까?

CopyTime이 더 적합할까요?

이 옵션

 int    CopyTime (
   string            symbol_name,     // имя символа
   ENUM_TIMEFRAMES   timeframe,       // период PERIOD_H1
   datetime          start_time,       // с какой даты
   int               count,           // сколько копируем 1
   datetime          time_array[]     // массив для копирования времени открытия
   );

시간을 문자열로 변환하고 비교하는 것은 최선의 선택이 아닙니다.

CopyTime - Доступ к таймсериям и индикаторам - Справочник MQL4
CopyTime - Доступ к таймсериям и индикаторам - Справочник MQL4
  • docs.mql4.com
Функция получает в массив time_array исторические данные времени открытия баров для указанной пары символ-период в указанном количестве. Необходимо отметить, что отсчет элементов от стартовой позиции ведется от настоящего к прошлому, то есть стартовая позиция, равная 0, означает текущий бар. При копировании заранее неизвестного количества...