오류, 버그, 질문 - 페이지 733

 
이제 확인해보니 다른 사운드 이벤트가 작동하지 않습니다.
 

나는 CTrade 클래스(PositionOpen,Buy,Sell)에서 포지션을 여는 메소드 작업에서 이상한 그림을 관찰합니다. 어드바이저는 실제로 포지션을 열고(터미널에서 볼 수 있음) 이 메소드는 false를 반환합니다. _LastError=4756 (거래 요청을 보내지 못했습니다). 이 경우 CTrade.ResultRetcode()=10008(주문이 완료됨)입니다.

요즘 Alpari 서버에서 누락된 것이 있습니까? 아니면 버그입니까?

 
blef :

이제 확인해보니 다른 사운드 이벤트가 작동하지 않습니다.

단말기의 소리가 켜져 있습니까?

 
yes-enabled, ROBOFOREX 서버에서도 동일한 일이 발생합니다.
 
이제 모든 사운드 이벤트가 MQ 및 ROBOFOREX 터미널에서 ==> 작동합니다.
 

무슨 일이 일어나고 있는지 누가 이해하는지 설명하십시오. 조언자 생성:

 void OnTrade ()
  {
//---
   if ( OrdersTotal ()!= 0 )
     {
       OrderSelect ( OrderGetTicket ( 0 ));
       Print ( "Есть ордера OrdersTotal()=" , OrdersTotal (), " " ,
             EnumToString (( ENUM_ORDER_STATE ) OrderGetInteger ( ORDER_STATE ))
            );
     }
   else
     {
       OrderSelect ( OrderGetTicket ( 0 ));
       Print ( "Нет ордеров OrdersTotal()=" , OrdersTotal (), " " ,
             EnumToString (( ENUM_ORDER_STATE ) OrderGetInteger ( ORDER_STATE ))
            );
     }
  }

차트에서 고문을 시작하고 수동으로 위치를 열고 인쇄물을 얻습니다.

 2012.05 . 02 16 : 27 : 10      Template Trades (EURUSD,M15)    Нет ордеров OrdersTotal ()= 0 ORDER_STATE_STARTED
2012.05 . 02 16 : 27 : 10      Template Trades (EURUSD,M15)    Нет ордеров OrdersTotal ()= 0 ORDER_STATE_STARTED
2012.05 . 02 16 : 27 : 10      Template Trades (EURUSD,M15)    Нет ордеров OrdersTotal ()= 0 ORDER_STATE_STARTED

거래 이벤트가 발생하고 주문이 없는데 어떻게 이러한 "주문이 없는" 유형이 시작되고 항상 있을 수 있습니까?

이 모든 쓰레기가 작동하지 않는다고 생각합니다.

 
그리고 당신은 결과를 확인합니다
 OrderSelect ( OrderGetTicket ( 0 ));

존재하지 않는 주문의 상태를 요청하는 의미는 무엇입니까? 이 경우 두 번째 형식은 무엇을 반환합니까?

 bool    OrderGetInteger (
   ENUM_ORDER_PROPERTY_INTEGER   property_id, // идентификатор свойства
   long &                long_var           // сюда примем значение свойства
   );
 
Rosh :

그리고 당신은 결과를 확인합니다

존재하지 않는 주문의 상태를 요청하는 의미는 무엇입니까? 이 경우 두 번째 형식은 무엇을 반환합니까?

나는 당신이 코드를 파싱하는 이 길을 갈 것이라는 것을 알고 있었습니다.

그리고 주문이 있다는 질문에 신경 쓰지 않는 이유는 거래 이벤트가 트리거되었고(그러면 그 중 적어도 하나는 주문을 위한 것이어야 함) OrdersTotal() 에 주문이 없다고 나와 있기 때문입니다.

 
Urain :

나는 당신이 코드를 파싱하는 이 길을 갈 것이라는 것을 알고 있었습니다.

그리고 주문이 있다는 질문에 신경 쓰지 않는 이유는 거래 이벤트가 트리거되었고(그러면 그 중 적어도 하나는 주문을 위한 것이어야 함) OrdersTotal()에 주문이 없다고 나와 있기 때문입니다.

PositionTotal()이 필요할 수 있습니까?
 

이것은 클래스를 추가할 때 발생한 오류입니다.

은은 정상적으로 닫혔지만 금은 닫지 않았습니다.

Если проблема в проскальзывании, то не подскажите как его задавать?
if (myposition.Select( _Symbol ))
{
 // закрыть открытую позицию по этому символу
 // величина проскальзывания была установлена ранее 
 mytrade.PositionClose( _Symbol );
}