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

 
Falx :

모두 좋은 하루!

로봇이 1개의 캔들에 대해 1개 이상의 주문을 열지 않도록 로봇에 대한 명령을 알려주십시오.

그가 이 양초를 선택하더라도 같은 양초에서 다음 주문을 열지 마십시오.

이제 지표의 조건이 충족되면 거래를 시작하는 것으로 나타났습니다.

테이크 트레이드가 종료된 후 그는 즉시 같은 캔들에 대해 새로운 트레이드를 열었고 이제는 더 이상 필요하지 않고 문제가 발생합니다.

글쎄, 아니면 당신이 스스로 알아낼 수 있도록 그것에 대해 읽을 수 있는 곳을 알려줄 수 있습니까?

1 촛불 - 1 거래가 엄격히 필요합니다.

미리 감사드립니다!

포지션 개장 시간, 포지션 종료 시간 - 이 시간과 이 양초의 개장 시간이 있는 양초.
 
Falx :

모두 좋은 하루!

로봇이 1개의 캔들에 대해 1개 이상의 주문을 열지 않도록 로봇에 대한 명령을 알려주십시오.

그가 이 양초를 선택하더라도 같은 양초에서 다음 주문을 열지 마십시오.

이제 지표의 조건이 충족되면 거래를 시작하는 것으로 나타났습니다.

테이크 트레이드가 종료된 후 그는 즉시 같은 캔들에 대해 새로운 트레이드를 열었고 이제는 더 이상 필요하지 않고 문제가 발생합니다.

글쎄, 아니면 당신이 스스로 알아낼 수 있도록 그것에 대해 읽을 수 있는 곳을 알려줄 수 있습니까?

1 촛불 - 1 거래가 엄격히 필요합니다.

미리 감사드립니다!

플래그를 사용할 수도 있습니다.

정적 bool 변수 또는 전역 수준 변수를 선언하고 플래그로 설정합니다. 주문이 열렸습니다 - 플래그 = true, 새 양초 가 열렸습니다 - 플래그 = false 및 이 플래그를 주문 시작 조건에 추가합니다.

 
Alexey Viktorov :

플래그를 사용할 수도 있습니다.

정적 bool 변수 또는 전역 수준 변수를 선언하고 플래그로 설정합니다. 주문이 열렸습니다 - 플래그 = true, 새 양초 가 열렸습니다 - 플래그 = false 및 이 플래그를 주문 시작 조건에 추가합니다.

플래그는 글로벌 터미널에 저장하고 다시 시작할 때 복원해야 합니다.
 
Artyom Trishkin :
플래그는 글로벌 터미널에 저장하고 다시 시작할 때 복원해야 합니다.

거래 기간과 한 막대 내에서 터미널을 다시 시작하여 주문을 열고 터미널을 다시 시작할 수 있는지 여부에 따라 다릅니다.

나는 GV를 좋아하지 않고 그들 없이 하려고 합니다. Expert Advisor를 실행할 때 여전히 미결 주문에 대한 모든 정보를 수집해야 하므로 시작 시 플래그 값을 복원하지 않겠습니까? 이것은 하나의 옵션입니다. 두 번째 옵션인 플래그의 초기 값은 주문을 여는 것을 금지하고 다음 막대에서만 권한을 엽니다. 현재 막대가 열리고 고문을 다시 시작한 경우에도 플래그가 다음 막대까지 주문을 여는 것을 금지합니다.

그런 미묘함으로 조언을 해준다면 자신은 아무 것도 생각할 필요가 없을 뿐입니다. 따라서 질문 수의 증가는 배제되지 않습니다 ... 스스로 결정하는 이유는 ... 포럼에 질문하면 작동하는 버전을 제공합니다. 그리고 남은 것은 제품을 시장에 출시하는 것뿐입니다...

 
Alexey Viktorov :

거래 기간과 한 막대 내에서 터미널을 다시 시작하여 주문을 열고 터미널을 다시 시작할 수 있는지 여부에 따라 다릅니다.

나는 GV를 좋아하지 않고 그들 없이 하려고 합니다. Expert Advisor를 실행할 때 여전히 미결 주문에 대한 모든 정보를 수집해야 하므로 시작 시 플래그 값을 복원하지 않겠습니까? 이것은 하나의 옵션입니다. 두 번째 옵션인 플래그의 초기 값은 주문을 여는 것을 금지하고 다음 막대에서만 권한을 엽니다. 현재 막대가 열리고 고문을 다시 시작한 경우에도 플래그가 다음 막대까지 주문을 여는 것을 금지합니다.

그런 미묘함으로 조언을 해준다면 자신은 아무 것도 생각할 필요가 없을 뿐입니다. 따라서 질문 수의 증가는 배제되지 않습니다 ... 스스로 결정하는 이유는 ... 포럼에 질문하면 작동하는 버전을 제공합니다. 그리고 남은 것은 제품을 시장에 출시하는 것뿐입니다...

:)
나는 미래를 똑바로 바라보는 습관이 있다.
저에게는 여전히 플래그를 복원해야 하기 때문에 위치를 여는 막대를 보고 춤을 추고 플래그와 보관함에 신경쓰지 않는 것이 좋습니다.
 
Artyom Trishkin :
:)
나는 미래를 똑바로 바라보는 습관이 있다.
저에게는 여전히 플래그를 복원해야 하기 때문에 위치를 여는 막대를 보고 춤을 추고 플래그와 보관함에 신경쓰지 않는 것이 좋습니다.

우리가 다른 여성을 좋아하는 것도 같은 이유입니다.

그리고 차이점은 무엇입니까, 플래그 또는 위치의 개방 시간은??? 아무리 얇게 썰어도 확인해야 할 부분...
 

안녕하세요! 수익성이 있는 주문 이후에 마지막으로 수익성이 없는 주문의 수를 반환하는 방법을 알려주십시오.

다음은 코드의 일부입니다. 무엇이 잘못되었나요?

int GetProfitLoss()// 마감된 주문 손실(마지막 손실 주문 수)

{

정수 손실 = 0;

날짜 시간 마지막 닫기 시간 = 0;

int cnt = OrdersHistoryTotal();

for(int i=0; i < cnt; i++)

{

if ( OrderSelect (i, SELECT_BY_POS, MODE_HISTORY))

{

if (OrderSymbol() == Symbol() && OrderMagicNumber() == OrderId && lastCloseTime < OrderCloseTime())

{

마지막 닫기 시간 = 주문 닫기 시간();

}

(주문이익()<0)인 경우

{

손실++;

}

if(OrderProfit()>0)

{

부서지다; // 수익성 있는 첫 번째 발견에서 사이클을 종료합니다. }

}

}

}

}

반환(손실);

}

 
Falx :

모두 좋은 하루!

로봇이 1개의 캔들에 대해 1개 이상의 주문을 열지 않도록 로봇에 대한 명령을 알려주십시오.

그가 이 양초를 선택하더라도 같은 양초에서 다음 주문을 열지 마십시오.

이제 지표의 조건이 충족되면 거래를 시작하는 것으로 나타났습니다.

테이크 트레이드가 종료된 후 그는 즉시 같은 캔들에 대해 새로운 트레이드를 열었고 이제는 더 이상 필요하지 않고 문제가 발생합니다.

글쎄, 아니면 당신이 스스로 알아낼 수 있도록 그것에 대해 읽을 수 있는 곳을 알려줄 수 있습니까?

1 촛불 - 1 거래가 엄격히 필요합니다.

미리 감사드립니다!

NumberOfBarCloseLastPos() 함수.

이 함수는 마지막 위치의 닫는 막대 번호 또는 -1 을 반환합니다. 고려할 위치 선택은 외부 매개변수에 의해 설정됩니다.

  • sy - 시장 상품의 이름. 이 매개변수를 설정하면 이 기능은 지정된 도구의 위치만 고려합니다. 기본값 - NULL 은 현재 시장 상품을 의미합니다.
  • tf - 기간. 기본값 - 0 은 현재 기간을 의미합니다.
  • op - 거래 작업 , 위치 유형. 유효한 값: OP_BUY , OP_SELL 또는 -1 . 기본값 -1 은 임의의 위치를 의미합니다.
  • mn - 위치 ID, MagicNumber. 기본값 -1 은 모든 식별자를 의미합니다.
 //+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 19.02.2008                                                     |
//|  Описание : Возвращает номер бара закрытия последней позиции или -1.       |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   ("" или NULL - текущий символ)          |
//|    tf - таймфрейм                  (    0       - текущий таймфрейм)       |
//|    op - операция                   (   -1       - любая позиция)           |
//|    mn - MagicNumber                (   -1       - любой магик)             |
//+----------------------------------------------------------------------------+
int NumberOfBarCloseLastPos( string sy= "0" , int tf= 0 , int op=- 1 , int mn=- 1 ) {
   datetime t=0;
   int       i, k= OrdersHistoryTotal ();

   if (sy== "" || sy== "0" ) sy= Symbol ();
   for (i= 0 ; i<k; i++) {
     if ( OrderSelect (i, SELECT_BY_POS , MODE_HISTORY )) {
       if ( OrderSymbol ()==sy) {
         if ( OrderType ()== OP_BUY || OrderType ()== OP_SELL ) {
           if (op< 0 || OrderType ()==op) {
             if (mn< 0 || OrderMagicNumber ()==mn) {
               if (t< OrderCloseTime ()) t= OrderCloseTime ();
            }
          }
        }
      }
    }
  }
   return ( iBarShift (sy, tf, t, True ));
}
 //+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 19.02.2008                                                     |
//|  Описание : Возвращает номер бара открытия последней позиции или -1.       |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   ("" или NULL - текущий символ)          |
//|    tf - таймфрейм                  (    0       - текущий таймфрейм)       |
//|    op - операция                   (   -1       - любая позиция)           |
//|    mn - MagicNumber                (   -1       - любой магик)             |
//+----------------------------------------------------------------------------+
int NumberOfBarOpenLastPos( string sy= "0" , int tf= 0 , int op=- 1 , int mn=- 1 ) {
   datetime t= 0 ;
   int       i, k= OrdersTotal ();

   if (sy== "" || sy== "0" ) sy= Symbol ();
   for (i= 0 ; i<k; i++) {
     if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES )) {
       if ( OrderSymbol ()==sy) {
         if ( OrderType ()== OP_BUY || OrderType ()== OP_SELL ) {
           if (op< 0 || OrderType ()==op) {
             if (mn< 0 || OrderMagicNumber ()==mn) {
               if (t< OrderOpenTime ()) t= OrderOpenTime ();
            }
          }
        }
      }
    }
  }
   return ( iBarShift (sy, tf, t, True ));
}

NumberOfBarOpenLastPos() 함수.

이 함수는 마지막 위치의 열림 막대 번호 또는 -1 을 반환합니다. 고려할 위치 선택은 외부 매개변수에 의해 설정됩니다.

  • sy - 시장 상품의 이름. 이 매개변수를 설정하면 이 기능은 지정된 도구의 위치만 고려합니다. 기본값 - NULL 은 현재 시장 상품을 의미합니다.
  • tf - 기간. 기본값 - 0 은 현재 기간을 의미합니다.
  • op - 거래 작업, 위치 유형. 유효한 값: OP_BUY , OP_SELL 또는 -1 . 기본값 -1 은 임의의 위치를 의미합니다.
  • mn - 위치 ID, MagicNumber. 기본값 -1 은 모든 식별자를 의미합니다.

그런 다음 이 기능을 사용하여 필요한 조건을 확인하십시오.

 

도와주세요.

로봇에 다음 기능을 연결해야 합니다.

거래를 연 후 40초 후 이익이 15포인트 이상이면 거래가 즉시 종료되고, 적으면 이익 실현 수준이 15포인트의 이익 수준으로 이동합니다.

미리 감사드립니다.

 
Vladimir Zubov :

NumberOfBarCloseLastPos() 함수.

이 함수는 마지막 위치의 닫는 막대 번호 또는 -1 을 반환합니다. 고려할 위치 선택은 외부 매개변수에 의해 설정됩니다.

  • sy - 시장 상품의 이름. 이 매개변수를 설정하면 이 기능은 지정된 도구의 위치만 고려합니다. 기본값 - NULL 은 현재 시장 상품을 의미합니다.
  • tf - 기간. 기본값 - 0 은 현재 기간을 의미합니다.
  • op - 거래 작업 , 위치 유형. 유효한 값: OP_BUY , OP_SELL 또는 -1 . 기본값 -1 은 임의의 위치를 의미합니다.
  • mn - 위치 ID, MagicNumber. 기본값 -1 은 모든 식별자를 의미합니다.

NumberOfBarOpenLastPos() 함수.

이 함수는 마지막 위치의 열림 막대 번호 또는 -1 을 반환합니다. 고려할 위치 선택은 외부 매개변수에 의해 설정됩니다.

  • sy - 시장 상품의 이름. 이 매개변수를 설정하면 이 기능은 지정된 도구의 위치만 고려합니다. 기본값 - NULL 은 현재 시장 상품을 의미합니다.
  • tf - 기간. 기본값 - 0 은 현재 기간을 의미합니다.
  • op - 거래 작업, 위치 유형. 유효한 값: OP_BUY , OP_SELL 또는 -1 . 기본값 -1 은 임의의 위치를 의미합니다.
  • mn - 위치 ID, MagicNumber. 기본값 -1 은 모든 식별자를 의미합니다.

그런 다음 이 기능을 사용하여 필요한 조건을 확인하십시오.


당신에게 큰 인간 Arigato!

들어갈게요!!