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

 
Izdesbyll :

도와주세요, 제발! 쓰기:

오류 0 및 주문이 마감되지 않습니다! 뭐가 문제 야?

가격을 2로 정규화하는 이유는 무엇입니까? Digits 가 필요하기 전에. 그리고 Bid 대신 OrderClosePrice()를 작성하는 것이 더 쉽습니다.
 

아니면 주문의 일부를 닫았습니까???

그렇다면 그가 쓰는 것을 시도해보십시오.

 double bylo = OrderLots();
if (OrderClose( OrderTicket(), 0.1 , NormalizeDouble (Bid, 2 ), 1 ))     Alert ( "  Закрито частину лоту в розмірі 0.1 від " ,bylo);
else Alert ( "Маємо помилку " , GetLastError ());
 

artmedia70 :
А почему нормализуете цену до двух? До Digits нужно. А проще писать OrderClosePrice() вместо Bid


 OrderClose( OrderTicket(), 0.1 , OrderClosePrice(), 1 );  
       Alert ( "Маємо помилку " , GetLastError ());

이제 오류 4051을 제공합니다.

 
ALXIMIKS :

아니면 주문의 일부를 닫았습니까???

그렇다면 그가 쓰는 것을 시도해보십시오.



bylo = 0.1이고 내 주문을 더 이상 닫지 마십시오. 경고 예 0
 
이제 결함입니다. 다음과 같이 씁니다.
 double p[100];
 p[i+1] = OrderProfit();
 if (p[i+ 1 ]> 0 ) 
    {
       Alert ( "Є прибуток ордер " ,i+ 1 );
       OrderSelect (i+ 1 ,SELECT_BY_POS,MODE_TRADES); 
       Alert ( "Маємо помилку " , GetLastError ());
       Alert ( "Вибрали ордер " ,i+ 1 );
      OrderClose( OrderTicket(), 0.1 ,   NormalizeDouble (Bid, Digits ), 1 );  
       Alert ( "Маємо помилку " , GetLastError ());
       Alert ( "Закрили ордер " ,i+ 1 ); 

i+1 = 2 및 모든 곳에서 3차 시작을 닫습니다.

 
Izdesbyll :

도와주세요, 제발! 쓰기:

오류 0 및 주문이 마감되지 않습니다! 뭐가 문제 야?

그리고 다음과 같이 시도하면:

     double ld_Price;
     if (OrderType() == 0 ) ld_Price = NormalizeDouble (Bid, Digits );
     else ld_Price = NormalizeDouble (Ask, Digits );
    OrderClose (OrderTicket(), OrderLots(), ld_Price, 2 );

그리고 제거 절차 전에 해당 순서를 선택하는 것을 잊지 마십시오!!!

 
Izdesbyll :
이제 결함입니다. 다음과 같이 씁니다.

i+1 = 2 및 모든 곳에서 3차 시작을 닫습니다.

배열로 티켓을 수집하는 경우 자신의 목록(주문) 중 일부가 아니라 TICKETS에 따라 주문을 선택해야 합니다.
 
TarasBY :

그리고 다음과 같이 시도하면:

그리고 제거 절차 전에 해당 순서를 선택하는 것을 잊지 마십시오!!!


 if (p[i+ 1 ]> 0 ) 
    {
       Alert ( "Є прибуток ордер " ,i+ 1 );
       OrderSelect (i+ 1 ,SELECT_BY_POS,MODE_TRADES); 
       Alert ( "Маємо помилку " , GetLastError ());
       Alert ( "Вибрали ордер " ,i+ 1 );
       double ld_Price;
       if (OrderType() == 0 ) ld_Price = NormalizeDouble (Bid, Digits );
       else ld_Price = NormalizeDouble (Ask, Digits );
      OrderClose (OrderTicket(), OrderLots(), ld_Price, 2 );  
       Alert ( "Маємо помилку " , GetLastError ());
       Alert ( "Закрили ордер " ,i+ 1 ); 

THIRD 주문은 GetLastError = 0, i+1=2를 닫고 OrderProfit()은 SECOND 주문을 못 박았을 때 응답합니다. help.... (OrderTicket()-1)을 작성하고 싶지만 도움이 되지 않을 것 같습니다.

 
Izdesbyll :

THIRD 주문은 GetLastError = 0, i+1=2를 닫고 OrderProfit()은 SECOND 주문을 못 박았을 때 응답합니다. help.... (OrderTicket()-1) 을 쓰고 싶지만 도움이 되지 않을 것 같습니다.

읽을 수 없습니다(물론 p[] 배열에 티켓 번호가 없는 한)!

     OrderSelect (p[i+ 1 ], SELECT_BY_TICKET, MODE_TRADES); 

... 일반적으로 코드 조각으로 "바보"를 잡는 것은 매우 어렵습니다... :)

 
안녕하세요! 누군가에게 말해 주세요. 모든 주문이 1-60 범위에서 서로 다른 마법 번호를 가지고 있는 경우 모든 주문을 마감하는 블록이 있습니다(대기 중인 주문 삭제 포함). 있다면 적어주세요. 삽입 위치에 대한 지침이 어렵지 않은 경우(그렇지 않으면 mql에서 완전히 녹색임). 미리 감사드립니다.

나는 말을 잊었다, 나는 창고에서 이익의 비율에 따라 수행되고 싶습니다.