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

 
evillive :



그래서 정수가 필요합니다...
 

사람들은 도움이 필요합니다. 함수는 가장 오래된 주문부터 시작하여 주문의 절반을 마감해야 합니다. 첫 번째 경우에는 어떤 이유로 주문이 하나씩 닫히고 두 번째 경우에는 잘못된 순서로 닫기 시작합니다.

 void CloseHalfOrders ( int otype) // ф-ция закрытия половины ордеров сетки
{
   int count = 0 ; double CTbuy = CountTrades( OP_BUY ); double CTsell = CountTrades( OP_SELL ); 
   for ( int i = 0 ; i<= OrdersTotal ;i++)
  {
     if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES ))
    {
       if ( OrderSymbol ()== Symbol () && OrderMagicNumber ()==Magic && OrderType () == otype)
       {
         if (otype == OP_BUY )
         { 
           if (count<CTbuy/ 2 && CTbuy> 3 )
           
             OrderClose ( OrderTicket (), OrderLots (), Bid , 0 ,Black);
             count++;
             Sleep ( 1000 );
           
         }
       
       
         else if (otype == OP_SELL )
         {
           if (count<CTsell/ 2 && CTsell> 3 )
           
           OrderClose ( OrderTicket (), OrderLots (), Ask , 0 ,Black);
           count++;
           Sleep ( 1000 );
           
         }
       }
     }
   }
   
 }
 for ( int i = OrdersTotal ()- 1 ; i>= 0 ; i--)
 
vadynik :

그래서 정수가 필요합니다...
MathRound
 
evillive :
MathRound


그래서 이것은 반올림입니다. 숫자는 int가 되지 않고 double로 남습니다.
 
vadynik :

그래서 이것은 반올림입니다. 숫자는 int가 되지 않고 double로 남습니다.

그래서 무엇? 계산을 위해 1과 1.0 사이에 근본적인 차이가 있습니까? 형식은 물론 double이지만 값은 정수입니다.


특히 왜곡된 변형: DoubleToStr 및 StringToInteger

 
vadynik :

새 컴파일러에서 경고를 제거하는 방법을 알려주세요.

유형 변환으로 인한 데이터 손실 가능성

 int     SizeB      = MathAbs ( Open [ 1 ]- Close [ 1 ])/ Point ;

Так помогает 

int     SizeB      =( int ) ( MathAbs ( Open [ 1 ]- Close [ 1 ])/ Point ) ;

 
Zhunko :



고마워, 그래서 경고가 없어, 이미 내 눈을 아프게했다)
 

안녕하세요! Kim을 검색했지만 찾을 수 있는 항목이 없습니다. 어떤 주문(지연) 에서 포지션이 열렸 습니까? 지정가 또는 중지 주문에서?

마지막으로 열린 주문의 가격을 비교하려고 했습니다.

 if ( MathAbs (GetOrderOpenPrice()-LastPrice) <= slip)

그것에 대한 열린 입장과 어떻게 든 전체 논리가 위반됩니다. 어쩌면 더 적합한 것이 있습니까? 고맙습니다!

 
Trader7777 :

사람들은 도움이 필요합니다. 함수는 가장 오래된 주문부터 시작하여 주문의 절반을 마감해야 합니다. 첫 번째 경우에는 어떤 이유로 주문이 하나씩 닫히고 두 번째 경우에는 잘못된 순서로 닫기 시작합니다.


몇 페이지 후에 답변과 올바른 코드가 있는 가장 오래된 것부터 시작하여 주문을 마감하는 방법과 같은 질문이 있었습니다.


https://www.mql5.com/ru/forum/145455/page406

 
borilunad :

안녕하세요! Kim을 찾았지만 찾을 수 있는 항목을 찾을 수 없습니다. 어떤 주문(지연)에서 포지션이 열렸습니까? 지정가 또는 중지 주문에서?

마지막으로 열린 주문의 가격을 비교하려고 했습니다.

그것에 대한 열린 입장과 어떻게 든 전체 논리가 위반됩니다. 어쩌면 더 적합한 것이 있습니까? 고맙습니다!

보리스. 제한을 제한하고 주문을 중지하려면 지연에 대한 설명을 작성하십시오. 그런 다음 열린 위치에 대한 이러한 의견에서 다리가 성장한 것을 알 수 있습니다. 부분적인 닫기만 이 댓글을 지울 것입니다. 아마도 다른 것이 댓글을 남길 수 있습니다. 기록에서 삭제된 지연만 저장됩니다. 거기에는 노동자가 없습니다. 당신은 통과해야합니다 ... 당신이 무엇을 왜곡해야하는지 스스로 생각하십시오 ...