실수로 고통받는 거래가 없습니다. - 페이지 19

 

그래서 나는 내 돈으로 1달러를 샀고 그가 자라기를 기다리고 있습니다.

나는 그것을 좋아했다, 나는 대출로 1 달러를 샀다. 나는 그것이 떨어지기를 기다리고있다.

모든 사람이 이것을 이해하는 것은 아니라는 인상을 받았습니다.

 
나는 주제에 대해 대답합니다. 거래 작업 없음 . 글쎄, 아니, 전혀.
 
Алексей Тарабанов :
나는 주제에 대해 대답합니다. 거래 작업 없음 . 글쎄, 아니, 전혀.

매수와 매도 사이에 델타가 있습니다

그것은 가격을 움직입니다. 본질적으로 시장의 것입니다. 미결제약정이 되게 하십시오.

우리는 나머지를 기초 자산이라고 부를 것입니다. 그것은 잠금 상태에 있고 또한 시장 밖에 있으며 청산 절차에 의해 형성됩니다.

 
Алексей Тарабанов :

이것은 희망을 불러일으킵니다.

스스로 문제에 직면할 때까지 당신은 너무 똑똑합니다...

 

유효성 검사기는 이 코드에 대해 불평합니다.

   if (aTicket > 0 )
       if ( OrderSelect (aTicket, SELECT_BY_TICKET, MODE_TRADES))
         if (!OrderClose(aTicket, NormalizeDouble (OrderLots(), 2 ), NormalizeDouble (OrderType() == 0 ? Bid : Ask, Digits ()), 30 ))
             return ( false );

유효성 검사기는 올바른 볼륨이 아닌 131개의 오류를 기록합니다...

 

좋은 오후, 포럼 사용자. 말해주세요, 저는 MT5에 대한 유효성 검사로 두 번째 주에 싸우고 있습니다. 오류 메시지를 제공합니다

EURUSD,H1(헤징)에 대한 테스트 2019.04.16 22:00:00 주문 취소 실패 #73 매도 정지 0.6 EURUSD at 1.12685 sl: 1.12851 tp: 1.11503 [잘못된 정지]

2019.05.02 12:00:00 주문 취소 실패 #136 매도 스톱 0.55 EURUSD at 1.11636 sl: 1.11814 tp: 1.10367 [잘못된 스톱]

2019.05.06 03:00:00 주문 취소 실패 #147 판매 중지 0.45 EURUSD at 1.11359 sl: 1.11578 tp: 1.09797 [잘못된 중지]

2019.05.06 08:00:00 주문 취소 실패 #148 판매 중지 0.5 EURUSD at 1.11447 sl: 1.11645 tp: 1.10036 [잘못된 중지]

2019.05.06 18:00:00 주문 취소 실패 #151 판매 중지 0.5 EURUSD at 1.11585 sl: 1.11783 tp: 1.10175 [잘못된 중지]

2019.05.08 14:00:00 주문 취소 실패 #167 매도 스톱 0.6 EURUSD at 1.11772 sl: 1.11938 tp: 1.10593 [잘못된 스톱]

2019.05.09 21:00:00 주문 취소 실패 #175 매도 스톱 0.45 EURUSD at 1.11921 sl: 1.12138 tp: 1.10377 [잘못된 스톱]

2019.05.13 16:00:00 주문 취소 실패 #181 매도 정지 0.6 EURUSD at 1.12225 sl: 1.12390 tp: 1.11054 [Invalid stop] 전략 테스터 보고서 총 5건의 거래


모든 검사를 하고 있습니다. 그리고 가장 이상한 점은 Sell Stop 주문 의 제거에만 해당된다는 것입니다. 코드에서 Sell Stop 주문을 제거합니다.

, 패스. 무엇이 문제가 될 수 있습니까?

 bool sqDeletePendingOrder( ulong ticket) {
   Verbose( " Deleting pending order, ticket: " + IntegerToString (ticket));
   
   if (! OrderSelect (ticket)) return false ;
   
   double order_price = OrderGetDouble ( ORDER_PRICE_OPEN );
   
   ENUM_ORDER_TYPE orderType = ( ENUM_ORDER_TYPE ) OrderGetInteger ( ORDER_TYPE );

   if (orderType == ORDER_TYPE_BUY || orderType == ORDER_TYPE_SELL ) {
      Verbose( "Trying to delete non-pending order" );
       return ( false );
   }

   MqlTick tick;

   GetLastError (); // clear the global variable.
   int error = 0 ;
   int retries = 0 ;
   bool result;
   
   double stops_level = ( double ) SymbolInfoInteger ( _Symbol , SYMBOL_TRADE_FREEZE_LEVEL );
   double freeze_level = ( double ) SymbolInfoInteger ( _Symbol , SYMBOL_TRADE_STOPS_LEVEL );  
   double level = MathMax (stops_level,freeze_level);
   
   while ( true ) {  
      
       if (! SymbolInfoTick ( _Symbol ,tick)) return ( false );
 
       double spread = ((tick.ask-tick.bid)/ _Point ); 
       if (level<= 0 ) level = spread* 3 ;

       bool del = true ;
     
       if (orderType == ORDER_TYPE_BUY_LIMIT ){ //Ask-Open  OrderGetDouble(ORDER_PRICE_CURRENT)
         if ((tick.ask-order_price)/ _Point <= level){
            VerboseLog( "Cannot delete of order with Ticket#:" , IntegerToString (ticket));            
            del = false ;
         } 
      }
       else if (orderType == ORDER_TYPE_SELL_LIMIT ){ //Open - Bid
         if ((order_price-tick.bid)/ _Point <= level) {
            VerboseLog( "Cannot delete of order with Ticket#:" , IntegerToString (ticket));           
            del = false ;
         } 
      }
       else if (orderType == ORDER_TYPE_BUY_STOP ){ //Open - Ask
         if ((order_price-tick.ask)/ _Point <= level) {
            VerboseLog( "Cannot delete of order with Ticket#:" , IntegerToString (ticket));           
            del = false ;
         }
      }
       else if (orderType == ORDER_TYPE_SELL_STOP ){ //Bid - Open
         //Print("SELLSTOP: ",(tick.bid-order_price)/_Point," ;  ",level);
         if ((tick.bid-order_price) <= level* _Point ) {        
            VerboseLog( "Cannot delete of order with Ticket#:" , IntegerToString (ticket));           
            del = false ;
         } 
      }
       if (IsTradeAllowed() && del == true ) {
         result = OrderDelete(ticket);     // Удаление отложки  Trade.Delete(ticket)                             
         if (result) {
            Verbose( "Order deleted successfuly" );
             return ( true );
         }
      }

      retries++;
       if (!sqProcessErrors(retries, GetLastError ())) {
         return ( false );
      }
   }
 return ( false );
}
 

문제가 해결되었지만 유효성 검사기 버그라고 생각합니다. 가격은 tick.bid에서 가져왔고 가격은 OrderGetDouble( ORDER_PRICE_CURRENT )입니다.

또한 이 오류는 SellStop 주문에만 적용됩니다.

 
Alexey Osipov :

문제가 해결되었지만 유효성 검사기 버그라고 생각합니다. 가격은 tick.bid에서 가져왔고 가격은 OrderGetDouble( ORDER_PRICE_CURRENT )입니다.

또한 이 오류는 SellStop 주문에만 적용됩니다.

나는 오랫동안 정지 레벨로 작업하지 않았지만 잘못된 정지 때문에 항상 1 포인트를 추가했던 것을 기억합니다. 정지 레벨을 1포인트 높이십시오.
 

새로운 난이도:


유틸리티를 게시할 때 테스터는

test on EURUSD,H1
strategy tester report not found

유틸리티에는거래 기능 이 없습니다.


이러한 유효성 검사를 통과하는 방법은 무엇입니까?

 
Sergey Likho :

새로운 난이도:

유틸리티를 게시할 때 테스터는

유틸리티에는 거래 기능 이 없습니다.

이러한 유효성 검사를 통과하는 방법은 무엇입니까?

이것은 유효성 검사기 버그입니다. 수정될 때까지 기다려 주십시오...

사유: