FORTS: OnTradeTransaction() 반환 코드 - 페이지 7 1234567891011 새 코멘트 [삭제] 2015.11.26 13:46 #61 Михаил : 사실은 주문이 실행될 때 실행을 제어하지 않으므로 OnTick() 또는 OnBookEvent()를 차단하지 않는다는 것입니다. 실행된 주문 을 빠르게 제어하려면 OnTradeTransaction()에서 거래 이벤트를 처리해야 합니다. 코드는 곧 올리겠습니다... 음. 생각해봐야겠네요 감사합니다! Mikhail Filimonov 2015.11.26 13:46 #62 Alexey Kozitsyn : 음. 생각해봐야겠네요 감사합니다! #property copyright "Copyright 2015, Mikalas" #property link "https://www.mql5.com" #property version "1.00" // bool is_busy; // //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit () { is_busy = false ; return ( INIT_SUCCEEDED ); } //---------------------------- void OnBookEvent ( const string &a_symbol ) { if ( ( a_symbol == _Symbol ) && ( !is_busy ) ) { //Работаем дальше } } //------------ void OnTradeTransaction ( const MqlTradeTransaction &trans, const MqlTradeRequest &request, const MqlTradeResult &result ) { switch ( trans.type ) { case TRADE_TRANSACTION_DEAL_ADD : if ( trans.order_state == ORDER_STATE_STARTED ) { is_busy = true ; //Обнуляем билет этого ордера, если одер залился полностью is_busy = false ; } break ; } } Mikhail Filimonov 2015.11.26 13:49 #63 오히려 다음과 같이: #property copyright "Copyright 2015, Mikalas" #property link "https://www.mql5.com" #property version "1.00" // bool is_busy; ulong order_ticket; // //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit () { is_busy = false ; return ( INIT_SUCCEEDED ); } //---------------------------- void OnBookEvent ( const string &a_symbol ) { if ( ( a_symbol == _Symbol ) && ( !is_busy ) ) { //Работаем дальше } } //------------ void OnTradeTransaction ( const MqlTradeTransaction &trans, const MqlTradeRequest &request, const MqlTradeResult &result ) { switch ( trans.type ) { case TRADE_TRANSACTION_DEAL_ADD : if ( trans.order_state == ORDER_STATE_STARTED ) { if ( result.order == order_ticket ) { is_busy = true ; //Обнуляем билет этого ордера, если одер залился полностью is_busy = false ; } } break ; } } [삭제] 2015.11.26 13:52 #64 Михаил : 이 구성이 OnBookEvent()를 차단할 시간이 있다는 것은 분명합니다. DOM 변경 이벤트는 일괄 처리될 수 있습니다. 확인하겠습니다, 다시 한번 감사드립니다. Mikhail Filimonov 2015.11.26 13:55 #65 Alexey Kozitsyn : 이 구성이 OnBookEvent()를 차단할 시간이 있다는 것은 분명합니다. DOM 변경 이벤트는 일괄 처리될 수 있습니다. 확인하겠습니다, 다시 한번 감사드립니다. 의심의 여지가 있습니다. 조언을 사용하지 마십시오. 그러나 "백업"을 넣을 때까지 나는 당신과 같은 것을 가지고있었습니다. [삭제] 2015.11.26 13:58 #66 Михаил : 의심의 여지가 있습니다. 조언을 사용하지 마십시오. 그러나 "백업"을 넣을 때까지 나는 당신과 같은 것을 가지고있었습니다. 아니요, 아이디어는 흥미롭고 작업 품질이 높을수록 주문이 실행되는 시간이 길어집니다. 내가 구체적으로 언급한 경우 에는 주문 실행 과 삭제 모두 1ms가 걸렸습니다. 우리는 여전히 전문가의 논리를 확인해야 합니다. Mikhail Filimonov 2015.11.26 14:05 #67 Alexey Kozitsyn : 아니요, 아이디어는 흥미롭고 작업 품질이 높을수록 주문이 실행되는 시간이 길어집니다. 내가 구체적으로 언급한 경우 에는 주문 실행 과 삭제 모두 1ms가 걸렸습니다. 우리는 여전히 전문가의 논리를 확인해야 합니다. https://www.mql5.com/ru/forum/16832 ФОРТС Отмена ордера в момент его исполнения [что приходит раньше - BookEvent или TradeEvent] www.mql5.com OnBookEvent срабатывает раньше, чем OnTradeTransAction. - - Категория: автоматические торговые системы Mikhail Filimonov 2015.11.26 14:24 #68 Alexey Kozitsyn : 주문 보내기(). 이 경우의 차이점은 무엇입니까? "소품"의 구현에서 [삭제] 2015.11.26 14:33 #69 Михаил : 오히려 다음과 같이: 사실이 아니다. 마지막 두 매개변수 request 및 result 는 TRADE_TRANSACTION_REQUEST 유형의 트랜잭션에 대한 값으로만 채워지며 트랜잭션에 대한 정보 는 trans 변수 의 유형 매개변수에서 얻을 수 있습니다 . Mikhail Filimonov 2015.11.26 14:44 #70 Alexey Kozitsyn : 사실이 아니다. 설명은 물론 trans.order 1234567891011 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
사실은 주문이 실행될 때 실행을 제어하지 않으므로 OnTick() 또는 OnBookEvent()를 차단하지 않는다는 것입니다.
실행된 주문 을 빠르게 제어하려면 OnTradeTransaction()에서 거래 이벤트를 처리해야 합니다.
코드는 곧 올리겠습니다...
음. 생각해봐야겠네요 감사합니다!
오히려 다음과 같이:
이 구성이 OnBookEvent()를 차단할 시간이 있다는 것은 분명합니다. DOM 변경 이벤트는 일괄 처리될 수 있습니다. 확인하겠습니다, 다시 한번 감사드립니다.
의심의 여지가 있습니다. 조언을 사용하지 마십시오. 그러나 "백업"을 넣을 때까지 나는 당신과 같은 것을 가지고있었습니다.
아니요, 아이디어는 흥미롭고 작업 품질이 높을수록 주문이 실행되는 시간이 길어집니다. 내가 구체적으로 언급한 경우 에는 주문 실행 과 삭제 모두 1ms가 걸렸습니다. 우리는 여전히 전문가의 논리를 확인해야 합니다.
주문 보내기(). 이 경우의 차이점은 무엇입니까?
오히려 다음과 같이:
사실이 아니다.
마지막 두 매개변수 request 및 result 는 TRADE_TRANSACTION_REQUEST 유형의 트랜잭션에 대한 값으로만 채워지며 트랜잭션에 대한 정보 는 trans 변수 의 유형 매개변수에서 얻을 수 있습니다 .
사실이 아니다.