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

 
artmedia70 :
대답 자체가 제안합니다. 오픈 시간을 기준으로 오픈 포지션을 정렬합니다. 그런 다음 정렬된 배열의 목록에 따라 닫습니다.

나에게는 어려울 것입니다.) 열린 순서대로 주문을 마감하는 코드가 있습니다.

 //+------------------------------------------------------------------+
//|                 Закрыть все ордера                               |
//+------------------------------------------------------------------+


double ClossAllOrders ()

{
   for ( int i= 0 ; i< OrdersTotal (); )
  {
     if ( ! OrderSelect (i, SELECT_BY_POS) )
       break ;
    
     int type   = OrderType();

     bool result = false ;
    
     switch (type)
    {
       //Close opened long positions
       case OP_BUY       : result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 3 , Lime );
                           break ;
      
       //Close opened short positions
       case OP_SELL      : result = OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 3 , Lime );
                           break ;

       //Close pending orders
       case OP_BUYLIMIT  :
       case OP_BUYSTOP   :
       case OP_SELLLIMIT :
       case OP_SELLSTOP  : result = OrderDelete( OrderTicket() );
    }
    
     if (result == false )
    {
       Print ( "Order " , OrderTicket() , " failed to close. Error:" , GetLastError () );
      i++;
       Sleep ( 500 );
    }  
  }
}

// End

여기에서 내가 이해하는 것처럼 정렬은 OrderTicket 으로 인한 것입니다.

해당 코드에 넣는 방법)

 
_new-rena :

138 - "요청한 가격이 오래되었거나 입찰가와 매수가가 뒤섞여 있습니다."

시가/마가를 다시 계산할 수 없습니다. 거기에 있지만 여기에는 재앙 이 있습니다( 가격을 요청하고 MarketInfo를 사용하여 값을 할당하고 값을 다른 변수로 이름을 변경해야 함).

조언 감사합니다) 그런데 알고보니 이 기능이 아니라 어드바이저 자체에 문제가 있었습니다.
 
특정 수준을 기억하는 방법. 그것이 촛불의 하이였다고 가정해 봅시다. 그러나 이 값을 변수에 할당하는 것은 if를 통해 이루어졌습니다. 그리고 다른 상황에서 이 변수는 0과 같습니다. 즉, 특정 가격을 어떻게든 기억해야 합니다.
 
305 :
특정 수준을 기억하는 방법. 그것이 촛불의 최고였다고 가정해 봅시다. 그러나 이 값을 변수에 할당하는 것은 if를 통해 이루어졌습니다. 그리고 다른 상황에서 이 변수는 0과 같습니다. 즉, 특정 가격을 어떻게든 기억해야 합니다.
도움이 될 수 있습니다 https://book.mql4.com/en/variables/arrays 아래에 필요한 것 같습니다

시계열 배열

 
그런 식으로 작동하지 않습니다. 이제 수평선 을 통해 시도 할 것입니다
 
305 :
그런 식으로 작동하지 않습니다. 이제 수평선을 통해 시도 할 것입니다

Kim은 무언가를 암기하기 위한 다양한 기능을 가지고 있습니다. 여기에서 3분 동안 이름으로 목록을 실행할 수 있습니다. https://www.mql5.com/ru/forum/131859 를 찾을 수 있습니다.

 
7Konstantin7 :

나에게는 어려울 것입니다.) 열린 순서대로 주문을 마감하는 코드가 있습니다.

여기에서 내가 이해하는 것처럼 정렬은 OrderTicket 으로 인한 것입니다.

해당 코드에 넣는 방법)

말해봐, 연속이 아닌 특정 순서로 주문을 마감해야 하는 비결은 무엇인가요? 몇 초가 계정의 수명을 어떻게 바꿀까요?

고맙습니다.

 
Roger :

말해봐, 연속이 아닌 특정 순서로 주문을 마감해야 하는 비결은 무엇인가요? 몇 초가 계정의 수명을 어떻게 바꿀까요?

고맙습니다.

함수를 다시 만들 수 없었던 흔적을 가져 가자 (열린 순서대로 주문을 닫으려면 : reshuffle

이 기능에서 모든 수익성 있는 항목이 먼저 닫히고 그 다음에는 수익성이 없는 항목이 마감되어 주에서 추악한 균형 차트가 생성되고 잘못된 데이터(최대 인출, 최대 일련의 무익한 주문, 최대 이익, 최대 일련의 수익성 있는 주문)가 생성됩니다.

어리 석고 괜찮은 슬라이드로 판명되었습니다. 500 cu 급등했다가 400 떨어졌다고 가정 해 봅시다. 혼합으로 닫히면 그렇게 큰 값이 없을 것입니다.

열린 순서대로 마감 주문을 사용하면 대차 대조표가 더 고르게 되고 상태의 데이터 정보가 더 적절해집니다.

그리고 이것이 계정의 수명을 어떻게 바꿀 것인지에 대해, 우리가 많은 쌍을 거래한다고 가정해 봅시다. 우리가 모든 것을 커버한다면, 일부 쌍의 경우 우리가 도달할 때까지 가격이 적절하게 갈 수 있습니다.

그리고 여는 순서대로 덮으면 한 쌍에 닫히고 다른 한 쌍에 닫히는 등 혼합되어 더 다양한 것으로 판명됩니다.

지금은 MT4처럼 8개까지 주문을 동시에 보낼 수 있지만, 이 경우에는 더 빨리 마감할 수 있을지 잘 모르겠습니다.

 
7Konstantin7 :

함수를 다시 만들 수 없었던 흔적을 가져 가자 (열린 순서대로 주문을 닫으려면 : reshuffle

이 기능에서 모든 수익성 있는 항목이 먼저 닫히고 그 다음에는 수익성이 없는 항목이 마감되어 주에서 추악한 균형 차트가 생성되고 잘못된 데이터(최대 인출, 최대 일련의 무익한 주문, 최대 이익, 최대 일련의 수익성 있는 주문)가 생성됩니다.

그것은 어리석게도 괜찮은 슬라이드로 판명되었습니다. 500cu 이륙한 다음 400도로 떨어졌다고 가정해 보겠습니다. 혼합으로 닫히면 그렇게 큰 값이 없었습니다.

열린 순서대로 마감 주문을 사용하면 대차 대조표가 더 고르게 되고 상태의 데이터 정보가 더 적절해집니다.

그리고 이것이 계정의 수명을 어떻게 바꿀 것인지에 대해, 우리가 많은 쌍을 거래한다고 가정해 봅시다. 우리가 모든 것을 커버한다면, 일부 쌍의 경우 우리가 도달할 때까지 가격이 적절하게 갈 수 있습니다.

그리고 여는 순서대로 덮으면 한 쌍에 닫히고 다른 한 쌍에 닫히는 등 혼합되어 더 다양한 것으로 판명됩니다.

지금은 MT4처럼 8개까지 주문을 동시에 보낼 수 있지만, 이 경우에는 더 빨리 마감할 수 있을지 잘 모르겠습니다.

역주기. 가장 이른 열린 위치 를 찾고 닫고 사이클의 시작 부분으로 이동합니다. 따라서 마감해야 하는 모든 위치가 소진될 때까지.
 
artmedia70 :
역주기. 가장 이른 오픈 포지션을 찾아 닫고 사이클의 시작 부분으로 이동합니다. 따라서 마감해야 하는 모든 위치가 소진될 때까지.

고마워, 나는 그것을 압도 할 수 없다. 나는 누군가가 그 함수에서 몇 줄을 떨어 뜨리거나 최종 버전 인 올빼미를 버릴 수 있다고 생각했습니다. 어렵지 않은 것 같지만 그래도 도움을 줄 수 있는 사람은 거의 없습니다.

mql5 사이트에 4크레딧이 있습니다) 참가자간 양도가 가능한 경우 증정할 수 있습니다.