콘텐츠로 이동

MT5 브로커 및 데이터 피드

Mt5Broker와 Mt5DataFeed는 로컬 AQE MT5 브리지를 통해 AQE를 실행 중인 MetaTrader 5 터미널에 연결하는 실시간 전용 연동입니다.

다음 용도로 설계되었습니다.

  • 실시간 계좌 스냅샷
  • 최신 호가 및 봉 업데이트
  • 주문 제출 및 취소
  • 포지션 청산 요청
  • AQE로의 거래 이벤트 전달

MT5 브리지를 사용하려면 AQE 브리지 서비스가 로컬에서 실행 중이어야 하며, 일치하는 세션 및 토큰 설정으로 MT5 Expert Advisor를 터미널 차트에 연결해야 합니다.

MT5 연동은 두 부분으로 구성됩니다.

  • AQE 측: Mt5Broker와 Mt5DataFeed가 구성된 브리지 토큰 및 바인드 주소를 사용해 로컬 MT5 브리지와 통신합니다.
  • MT5 터미널 측: AQE Expert Advisor가 MetaTrader 5 안에서 실행되며, 시장 데이터 및 브로커 RPC 요청을 가져오기 위해 로컬 AQE 브리지를 폴링합니다.

다음 순서로 설정하세요.

  1. AQE 저장소에서 AQE MT5 Expert Advisor를 설치하거나 업데이트합니다.
  2. MetaTrader 5를 시작하고 AQE에서 사용할 계좌에 로그인합니다.
  3. 브로커가 제공하는 심볼의 차트에 AQE Expert Advisor를 연결합니다.
  4. AQE 런타임 환경과 Expert Advisor에 동일한 AQE_MT5_BRIDGE_TOKEN을 설정합니다.
  5. AQE와 Expert Advisor의 브리지 바인드 주소를 일치시킵니다. 기본 로컬 주소는 127.0.0.1:18080입니다.
  6. AQE 런타임을 시작하고 Expert Advisor가 브리지를 폴링하는지 확인합니다.

Expert Advisor 파일, 설치 참고 사항, 브리지 README는 GitHub의 AQE MT5 연동 디렉터리를 참조하세요. algoquantstudio/aq-engine의 integrations/mt5.

MT5를 실시간 주문 실행에 사용할 때는 MT5 터미널에서 체결, 스톱 주문, 계좌 상태, 미청산 포지션을 확인하세요. AQE는 브리지에서 브로커 업데이트를 받지만, 실시간 실행의 최종 기준은 MT5 계좌입니다.

MT5 심볼 메타데이터에서 스왑은 터미널의 심볼 정보에서 가져옵니다. AQE Expert Advisor는 SYMBOL_SWAP_MODE, SYMBOL_SWAP_LONG, SYMBOL_SWAP_SHORT를 Asset.fees.swap.long 및 Asset.fees.swap.short에 매핑합니다.

MT5 통화 스왑 모드는 AssetFee::PerContractFee에 매핑됩니다. MT5 이자, 현재가, 시가 기준 백분율 스왑 모드는 일별 소수 비율인 AssetFee::PercentagePerContractFee에 매핑되므로 0.0001은 하루 0.01%를 의미합니다. MT5 재개설 포인트 스왑 모드는 AssetFee::Points에 매핑됩니다.

거래 수수료는 스왑과 처리 방식이 다릅니다. 브로커 수수료는 거래가 체결된 뒤에야 정확히 알 수 있으므로 심볼 메타데이터를 최종 기준으로 삼지 않습니다. AQE는 체결된 MT5 거래의 수수료 값을 최종 기준으로 삼으며, 거래 이벤트나 포지션 청산 응답의 DEAL_COMMISSION과 DEAL_FEE를 사용합니다. 브로커가 수수료를 0으로 보고하면 AQE는 0을 기록합니다.

백테스트는 MT5 체결 수수료 자동 조회를 사용하지 않습니다. 과거 데이터 실행에서는 PaperBroker 자산 수수료 모델을 명시적으로 구성하세요.

  • aq-engine/src/core/broker/mt5_broker.rs
  • aq-engine/integrations/mt5