본문 바로가기
트레이딩/메타트레이더 코딩

메타트레이더 . VSCode 에서 MQL Tools 기반 쾌적 코딩 환경 구축

by i.got.it 2024. 5. 27.

 

 

개요 

- VSCode 에서 extension  MQL Tools 설치하여, 메타트레이더( MT4 , MT5 )에서 기본 제공되는 코드 작업툴인 메타에디터 보다 훨씬 쾌적, 효율적  코딩 환경 구축 가능.

 

 

사전준비 

1. 메타트레이더 설치되어있어야 함.  

- 본 예에서는 메타트레이더 포터블 설치 된 상황. 개발용 메타트레이더는 포터블 설치 강력 추천. 

- 메타트레이더 포터블 설치 방법 보기 :  https://igotit.tistory.com/3861 

 

2. VSCode 포터블 설치되어 있어야 함. 

  - VSCode 포터블 설치 방법 보기 : https://igotit.tistory.com/4313 

 

 

VSCode 에 MQL Tools 설치 

VSCode 실행하여 Extensions (아래 그림의 왼쪽 메뉴의 번호1 Extensions 아이콘 클릭)

- 혹은 메뉴의 File -> Preferences -> Extensions 클릭 

- 번호 2 검색에서 MQL , 번호 3 MQL Tools 클릭, 번호 4 Install 클릭하여 VSCode 에 MQL Tools 확장 추가. 

 

 

 

MQL Tools 설정 

- MQL Tools 설치 후 아래 화면의 기어 클릭 -> Extension Setting 클릭 

 

아래 화면처럼 여러 셋팅이 보이는데 필수 셋팅할 곳은 MQL4, MQL5 의 metaeditor.exe 경로 기록한다. (본인이 설치한 메타트레이더 경로 기록해야 함) . 바이비트 MT4 의 메타에디터를 연결 시키고 싶다면 경로 문자중 MT4_fxtm 대신  MT4_bybit 을 기록한다. 이 경로 부분은 언제든지 변경해도 되므로 필요에 따라 다른 경로를 설정해주면 된다.  

 

 

 

메타트레이더를 포터블 설치 한 경우 설정에서 아래 처럼 체크함.

 

 

VSCode 에서 MQL4/5 폴더 오픈하기 

VSCode 메뉴 : File -> Open Folder... 클릭하여 본인 설치한 MT4 의  MQL4 폴더,  MT5 의 MQL5 폴더를 지정한다. 

아래 화면은 MQL5 폴더 선택하여 예제 ea 중 ExpertMACD 오픈한 모습.  

 

참고 : 본 설명에서는 메타트레이더 설치한 하위 폴더에 기본 만들어져 있는 폴더인 MQL4, MQL5 폴더만 지정하는 것을 설명하였지만 메타트레이더 설치한 곳이 아닌 사용자가 임의로 만든 위치에 폴더이름이  MQL4 ,  MQL5 이기만 하면 MQL Tools 에서 오픈가능하며 코드 작성 가능하다. 아래 별도 정리. 

 

 

위 화면의 우 상단 아이콘 2개를 가장 많이 사용하게 된다. 체크표시는 문법 점검이고, 플레이 아이콘 처럼 생긴 것이 컴파일 버튼. 

 

 

위 처리 과정 전체 영상

 

 

 

VSCode 에서 메타에디터, 메트트레이더 실행하기 

- VSCode 메뉴의 아래 붉은 박스에서 Open 'MetaEditor' 클릭하면 메타 에디터 실행되며, Open trading terminal 클릭하면 메타트레이더 실행된다. 

 

 

MQL4, MQL5 동시 오픈하여 작업 하려는 경우 

VSCode 에서의  웍스페이스 이용한 멀티루트(여러 개의 폴더를 VSCode 에서 동시 오픈하는 것) 설정으로는 완전한 동작 하지 않기 때문에 VSCode Portable 폴더를  2개로 하여 MQL4 , MQL5 전용으로 각각  실행시킨다.  

 

 

 

 

 

사용자가 지정한 임의 경로에 MQL 소스 파일들 몰기  

- 앞의 설명에서는 메타트레이더 설치시 기본 생성된  MQL4 나 MQL5 폴더를 VSCode 에서 오픈하고 코드 작성하는 것을 설명하였으나, 메타트레이더 설치 하지 않은 경로여도 폴더 이름이 MQL4, MQL5 이면 VSCode 에서 오픈가능하다.  예시 : 아래 폴더 구조는 임의로 WORK_MQL 하위에 MQL4 , MQL5 이름으로 만들어 둔 것.  

VSCode 에서 폴더 오픈 시 아래 경로의  MQL4, MQL5 오픈하여 소스 코드 작업 가능하다. 

 

메타트레이더 설치된 하위에 있는 폴더에 내 소스들이 있는 것보다 아래 같은 구조로 해두면 내가 작업한 소스들이 한곳에 집중되어 있어 심플한 관리 달성됨. 

 

 

 

 

VSCode 로 메타트레이더 코딩 위한 최적화된 폴더 구성

- 메타트레이더 MQL 소스 코드는 WORK_MQL 폴더 내에 집중하여 몰아둠. 

- 특히 중요한 것은 CySDK_MQL 폴더 들이다. 코딩하면서 범용적 기능들에 해당하는 것들을 클래스 화 하여 정리하는 핵심 가치가 누적 저장되는 곳. 

- 이런 관리 방식이 코딩 과정에서 벌어지는 오만 잡다한 처참한 수준의 개노가다  투입한 작업 결과물들이  쓰레기화 되지 않도록 해주고, 지속 발전 가능한 "가치 누적 저장" 형식.   

 

 

 

 

 

 

코드 작업 플로우 상세 

 

VSCode 에서 바이비트 MT4 에서 구동시킬 메타트레이더 신규 EA 를 만들기로 했다 치자. 아래 상세 작업 플로우로 진행예를 보인다. 

 

 

작업할 컴터( 노트북, PC 등 ) 에 USB 스토리지 연결 하고, 

 

스토리지 루트에 있는 VSCode_MQL4_M 더블클릭하여 VSCode 실행. 

 

 

 

VSCode_MQL4_M 실행모습. 

 

폴더 Experts_Test 우클릭 메뉴에서 "New Folder..."  클릭하여 ea 이름 기록. 즉 ea 마다 폴더 1개 할당 규칙 적용한다. 

처음 작업 개시할때는 폴더 Experts_Test 에 생성시켜두고, 이후 완성도 높게 구현된 경우에만 폴더 Experts 로 이동시킨다. 

 

 

본 예에서는 이름을 CyEA240530_SM 으로 ea 전용 폴더 1개 만들었다. 이 폴더 마우스 우클릭 메뉴에서 "New File..." 클릭하여 확장 mq4 인 파일 생성. 이름은 폴더명과 동일하게 함. 

 

위 화면 오른쪽 코드 편집창에서 ea 작동위한 필수 이벤트 핸들러인 void OnTick() 코드 작성. 시험용으로 Ask, Bid 가격 출력되게 했음. 

 

컴파일 하기 : 위 화면의 우상단 붉은 동그라미 버튼 클릭하면 컴파일되고 ea 실행파일인 CyEA240530_SM.exe4 가 동일폴더에 만들어진다. 

 

해당 폴더 빨리 가기 . 위 화면의 파란색 줄 우마우스 클릭하여 "Reveal in File Explorer" 클릭하면 탐색기 열리면서 해당 폴더 보여준다. ex4 파일 만들어져 있다.  

 

 

위 파일을 메타트레이더 설치된 경로중 MQL4/Experts 하위에 복사하면 ea 를 챠트에 배치하고 실행가능하다. 

아래 화면은 ex4 파일을 바이비트 MT4 하위 폴더에 복사한것. 

 

VSCode 메뉴에서 "Open Trading terminal " 클릭하면 메타트레이더 실행되고 , 왼쪽 Expert Advisors 에 내가 추가한 ea 실행파일 보이고 이를 챠트에 배치하면 ea 실행되어 시험용으로 추가한 코드가 실행되어 하단 탭 Experts 에 출력된다. 

 

 

백테스팅 하기 위해서는 메타트레이더 메뉴 View -> Strategy Tester 클릭하여 ,내가 만든 ea 선택하고 대상 종목 선택하고 백테스팅 진행한다. 

 

필수 : 백테스팅 할 때 통화단위 UST로 기록해줘야함.  

상세보기 : https://igotit.tistory.com/3760

 

bybit . MetaTrader 4 . Strategy Tester 오류해결 tester cannot calculate prices

개요 바이비트에서 배포된 메타트레이더4 의 전략백테스트 도구인 Strategy Tester 에 오류 있으며 오류증상 및 해결책 정리. 오류증상. 메타트레이더로 작성된 EA 를 Strategy Tester 에서 실행할 때 아

igotit.tistory.com

 

 

 

 

연관

 

 

 

 

메타 트레이더 . 외장하드 설치 . 사용자 데이터도 외장하드에서 집중관리.

개요 - 외장하드에 메타 트레이더 설치. 문제점. 여러 PC 에서 메타 트레이더 코딩 작업시 소스 파일 관리 어려움. 메타트레이더 매매전략 개발 작업을 1개의 컴퓨터에서만 하지 않고 , 노트북에

igotit.tistory.com

 

 

Visual Studio Code . 포터블 (무설치) 활용

Visual Studio Code 무설치 - 외장하드에 설치해두고 아무 PC에 연결하여 실행 하기 위함. Visual Studio Code 무설치 활용 방법 단계1. VS Code zip 파일 다운로드. - VS Code 다운로드 페이지 에서 zip 파일 다운로

igotit.tistory.com

 

 

 

상위 정리

 

 

메타트레이더 5. 체계정리. 활용법/지식

MetaTrader 5 메타트레이더 5 , 메타에디터, MQL5 활용정보 체계정리. 본 글에서 주요 정리대상 정보 1. 메타트레이더 5 사용법. 2. MQL5 언어 기반 "직접 코딩"하여 메타프레이더5에서 자동매매 달성하기

igotit.tistory.com

 

 

 

메타트레이더 4. 체계정리. 활용법/지식.

MetaTrader 4 메타트레이더 4 활용정보 체계정리. - 글로벌 트레이딩 소프트웨어. - 지속 발전 가능한 안정된 시스템. - 직접 코딩 가능한 MQL4 언어. C 언어 유사 - - MQL4 에서도 클래스 사용가능하므로

igotit.tistory.com

 

 


첫 등록 : 2024.02.24

최종 수정 : 2024.05.27

단축 주소 : https://igotit.tistory.com/5126


 

댓글



 

비트코인




암호화폐       외환/나스닥/골드       암호화폐/외환/나스닥/골드 암호화폐/외환/나스닥/골드   암호화폐/외환/나스닥/골드
     
현물 |선물 인버스 |선물 USDT       전략매니저(카피트레이딩)     롤오버 이자 없는 스왑프리계좌
( 스왑프리 암호화폐도 거래 가능 )    
MT4, MT5 , cTrader 모두 지원     FTMO 계좌 매매운용. MT4,MT5