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

 
John Smith :

여러분, 2008년 1월 29일과 같은 날짜를 1201564800과 같은 형식으로 변환하는 방법을 알려주세요. 어떤 기능을 하나요?

TimeCurrent()를 주어진 역사적 날짜와 비교해야 합니다...

괜찮아?

 datetime Начало = D'2015.01.01 00:00' ;  // Дата задана датой
string    Конец  = "2035.01.01 00:00" ;   // Дата задана строкой, потом переведем в дату

void start() 
{
  datetime End= StringToTime (Конец);

  if ( TimeCurrent ()>Начало)   Alert ( " Начинаем" );
  if ( TimeCurrent ()>End)     Alert ( " Заканчиваем" );
                       else    Alert ( " Продолжаем" );
}
 
John Smith :

여러분, 2008년 1월 29일과 같은 날짜를 1201564800과 같은 형식으로 변환하는 방법을 알려주세요. 어떤 기능을 하나요?

TimeCurrent()를 주어진 역사적 날짜와 비교해야 합니다...


iTime을 사용하여현재 시간 을 두 번째 형식으로 변환하면 다음과 같습니다. int iTime = TimeCurrent();

그런 다음 2008년 1월 29일 형식으로 작성된 다른 날짜와 비교하는 방법 ???


글쎄, 아니면 어떻게 든 초로 변환하지 않고 가능한 한 즉시 비교하십시오 ...

유형

TimeCurrent() > 01/29/2008이면 a = 123456

하지만 이렇게 작동하지 않습니다 ...

날짜 시간이 깁니다

즉, 날짜를 long으로 나타내려면 다음을 명시적으로 변환해야 합니다.

 long time_current=( long ) TimeCurrent ();
 

안녕하세요.

전략 테스터 질문

640px 창 내의 레코드에 맞게 글꼴 또는 열 크기를 줄일 수 없습니다.

그것을하는 방법?

창 크기는 줄어들지만 정보는 구겨집니다.

파일:
 
Sergey Musin :

안녕하세요.

전략 테스터 질문

640px 창 내의 레코드에 맞게 글꼴 또는 열 크기를 줄일 수 없습니다.

그것을하는 방법?

창 크기는 줄어들지만 정보는 구겨집니다.

Windows 설정에서 시스템 글꼴을 축소해 보십시오.
 

안녕하세요!

알려주십시오. 코드 조각이 있습니다.

 void watch_breakout() {
   if (active != true ) return ;
     int ticket = get_ticket();
   if ( Ask >= NormalizeDouble (channel_top, Digits )) {
    ticket   = OrderSend ( Symbol (), OP_BUY , Lots, Ask , SLIPPAGE, NormalizeDouble ( Ask -Stoploss* Point , Digits ), 0 , "LONG" , MAGIC, clrNONE ); 
       }
   if ( Bid <= NormalizeDouble (channel_bottom, Digits )) {
    ticket   = OrderSend ( Symbol (), OP_SELL , Lots, Bid , SLIPPAGE, NormalizeDouble ( Bid +Stoploss* Point , Digits ), 0 , "SHORT" , MAGIC, clrNONE );
       } 
    }

가격 채널에서 브레이크 아웃을 찾는 작업이 있습니다. 브레이크 아웃이 양초가 아니라 핀바에서만 발생하는지 확인하고 핀바가 형성된 후 주문을 여십시오.

이것이 어떻게 구현될 수 있는지 알려주세요. 3일째 되는 날 싸우고 있지만 여전히 해결책이 보이지 않습니다.

 
Snower : 코드가 있습니다.

가격 채널에서 브레이크 아웃을 찾는 작업이 있습니다. 브레이크 아웃이 양초가 아니라 핀바에서만 발생하는지 확인하고 핀바가 형성된 후 주문을 여십시오. 이것이 어떻게 구현될 수 있는지 알려주세요. 3일째 되는 날 싸우고 있지만 여전히 해결책이 보이지 않습니다.

이제 한 달 만에 테스터에서 3배가 되는 Expert Advisor를 디버깅하고 있습니다. 그리고 데모는 괜찮습니다. 산만, 여기를 보았다. 당신은 그림이 있습니까?

 
STARIJ :

이제 한 달 만에 테스터에서 3배가 되는 Expert Advisor를 디버깅하고 있습니다. 그리고 데모는 괜찮습니다. 산만, 여기를 보았다. 당신은 그림이 있습니까?


예를 들어 이런 식으로. 노란색 선은 가격이 돌파해야 하는 가격 채널이며 주문이 스마일리 캔들과 함께 시작되고 이전의 모든 것을 무시하도록 합니다.

 
Snower :


예를 들어 이런 식으로. 노란색 선은 가격이 돌파해야 하는 가격 채널이며 주문이 스마일리 캔들과 함께 시작되고 이전의 모든 것을 무시하도록 합니다.

작동 안 할 것이다.
 
Artyom Trishkin :
작동 안 할 것이다.

회신하다

Artyom, 당신은 자세히 읽지 않았습니다. TS는 각각 핀 막대로 부러 졌을 때만 열어야합니다. 핀 막대 (작은 몸체와 큰 그림자)를 쓰면 조건이 충족됩니다.

 

iCustom 기능은 MT4에서 어떻게 처리됩니까? 해당되는 분들의 답변 부탁드립니다!


예를 들어, 전략 테스터에서 어드바이저는 각 틱의 지표에 액세스합니다.

함수가 호출되면 표시기가 메모리에 로드되고 0 막대에서 막대까지 모든 값을 다시 계산한 다음 필요한 오프셋이 있는 값을 반환합니다.

첫 번째 눈금에 1개의 막대 값을 요청하고 두 번째 눈금에 두 번째 막대 값을 요청하면 EA가 전체 기록에서 지표를 두 번 계산합니까?


EA가 Indicator1 에 액세스하고 Indicator 2에 대해 iCustom이 있는 경우 indicator1의 값을 요청할 때 indicator2 가 몇 번이나 다시 계산됩니까?


어쩌면 전략 테스터와 MT4 터미널이 각 막대에 표시기의 값을 저장하여 다시 요청할 때 다시 계산하지 않도록 할 수 있습니까?