OrderSend() 질문 - 페이지 7

 

채워야 하는 필드가 서로 다른가요?

SYMBOL_TRADE_EXECUTION_EXCHANGE

거래소 실행

필드에서

SYMBOL_TRADE_EXECUTION_MARKET

시장 실행

???

도움말에는 시장에만 해당하는 예가 있습니다.

시장 실행

시장 실행 모드(시장에서 거래 주문 실행 모드)에서 포지션을 여는 거래 주문. 5개의 필드가 필요합니다.

  • 행동
  • 기호
  • 용량
  • 유형
  • type_filling

매직 및 댓글 필드를 설정할 수도 있습니다.

Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров - Документация по MQL5
 

나는 문서를 읽고 포럼을 검색했습니다 ... 완전히 혼란 스럽 습니다. 실례가 되지 않는다면 N+1번 설명해주세요.

1. OrderSend 를 사용하여 거래 요청을 보냅니다. 이 함수는 true를 반환합니다.

2. retcode( MqlTradeResult )를 분석합니다. 변수의 값은 TRADE_RETCODE_DONE입니다.

이 상황이 서버에서 주문의 실제 실행을 보장 합니까? 아니면 여전히 OnTrade, OnTradeTransaction에서 검사를 수행해야 합니까? 그렇다면 쓸모없는 retcode를 왜 분석합니까?

저것들. OrderSend Async ()를 사용할 때 OnTrade, OnTradeTransaction의 필요성은 분명합니다.

OrderSend() 함수를 사용할 때 필요합니까? 후속 EA 코드의 실행을 전달하기 전에 서버에서 주문이 실행/거부될 때까지 무조건 대기합니까?

 
voix_kas :

...

OrderSend()를 사용할 때 필요합니까? 후속 EA 코드의 실행을 전달하기 전에 서버에서 주문이 실행/거부될 때까지 무조건 대기합니까?

내가 틀리지 않았다면 OrderSend 는 주문 실행을 기다리지 않고 주문이 정확하고 서버의 대기열로 전송되었다는 보고만 합니다.

반환 값

구조의 기본 검사(포인터 검사)가 성공한 경우 true가 반환됩니다. 이는 거래 작업의 성공적인 실행을 나타내지 않습니다 . 함수 실행 결과에 대한 자세한 설명을 얻으려면 결과 구조의 필드를 분석해야 합니다.
 
voix_kas : 1. OrderSend 를 사용하여 거래 요청을 보냅니다. 이 함수는 true를 반환합니다.

2. retcode ( MqlTradeResult )를 분석 합니다. 변수의 값은 TRADE_RETCODE_DONE입니다.

이 상황이 서버에서 주문의 실제 실행을 보장합니까?

retcode는 RETCODE_DONE을 반환할 뿐만 아니라 :) 그러나 무역 서버가 정확히 TRADE_RETCODE_DONE( 요청 완료 )을 반환한다면 왜 다른 것을 확인해야 할까요? 내 겸손한 생각으로는 이 상황에서 OnTrade, OnTradeTransaction 기능은 단순히 retcode를 복제할 것입니다.
 
fyords :

내가 틀리지 않았다면 OrderSend는 주문 실행을 기다리지 않고 주문이 정확하고 서버의 대기열로 전송되었다는 보고만 합니다 .

이러한 경우 "true"만 있으면 충분합니다. 그러나 개발자는 계획에 따라 " 무역 서버 반환 코드 "를 포함해야 하는 retcode를 제공했습니다.

저것들. OrderSend() 함수가 완료된 후 EA 코드의 두 번째 줄에 TRADE_RETCODE_DONE이 표시되고 코드의 세 번째 줄에 예를 들어 새로 열린 위치(논리적으로 존재해야 함)를 변경하려고 합니다. 그러나 PositionSelect는 false를 반환합니다. 반복이 반복됩니다. 결과적으로 이중 볼륨의 위치가 잘못 열렸습니다.

그러한 상황에서 어떻게 자신을 보호할 수 있습니까?

1. OnTrade에서 retcode 및 "점수"로만 안내 하시겠습니까?

2. OnTrade 및 retcode의 "점수" 로만 안내됩니까?

 
Yedelkin :
retcode는 RETCODE_DONE을 반환할 뿐만 아니라 :) 그러나 무역 서버가 정확히 TRADE_RETCODE_DONE( 요청 완료 )을 반환한다면 왜 다른 것을 확인해야 할까요? 내 겸손한 생각으로는 이 상황에서 OnTrade, OnTradeTransaction 기능은 단순히 retcode를 복제할 것입니다.

" 거래 서버 반환 코드 " 목록으로 판단할 때 시장 쿼리 실행 모드에서는 TRADE_RETCODE_LOCKED 하나만 불확실성이 가능합니다. 그리고 여기에서는 아마도 OnTrade 없이는 할 수 없습니다.

개인적으로 어떤 링크를 사용하는지 묻겠습니다.

Документация по MQL5: Стандартные константы, перечисления и структуры / Коды ошибок и предупреждений / Коды возврата торгового сервера
Документация по MQL5: Стандартные константы, перечисления и структуры / Коды ошибок и предупреждений / Коды возврата торгового сервера
  • www.mql5.com
Стандартные константы, перечисления и структуры / Коды ошибок и предупреждений / Коды возврата торгового сервера - Документация по MQL5
 
voix_kas : " 거래 서버 반환 코드 " 목록으로 판단하면 시장 쿼리 실행 모드에서 하나의 불확실성만 가능합니다: TRADE_RETCODE_LOCKED. 그리고 여기에서는 아마도 OnTrade 없이는 할 수 없습니다.

개인적으로 어떤 링크를 사용하는지 묻겠습니다.

배치도 있습니다. 내가 요청 전송의 성공 여부를 확인하는 것은 (배치/완료)입니다.
 
특정 코드를 제공할 수 있습니까?
 
voix_kas : 특정 코드를 제공할 수 있습니까?
아니요, 특정 코드를 제공할 수 없습니다. 첫째, 1년 전 교실에서 인봉되었고, 둘째, 찾아야 합니다. ..당신은 물었습니다 - 어떤 번들을 사용합니까? - 진심으로 대답했다.
 
voix_kas :

그러한 상황에서 어떻게 자신을 보호할 수 있습니까?

1. OnTrade에서 retcode 및 "점수"로만 안내 됩니까?

2. OnTrade 및 retcode의 "점수" 로만 안내됩니까?

OnTrade가 안내하는 것이 가장 신뢰할 수 있지만, OnTrade 없이도 할 수 있습니다. 완료된 거래를 분석합니다(ResultDeal()).

이 주제에 대한 기사가 곧 있을 것입니다.