본문 바로가기

메타트레이더   ( 52 )


메타트레이더 . VSCode 에서 MQL Tools 기반 쾌적 코딩 환경 구축 개요 - VSCode 에서 extension MQL Tools 설치하여, 메타트레이더( MT4 , MT5 )에서 기본 제공되는 코드 작업툴인 메타에디터 보다 훨씬 쾌적, 효율적 코딩 환경 구축 가능. 사전준비 1. 메타트레이더 설치되어있어야 함. - 본 예에서는 메타트레이더 포터블 설치 된 상황. ( 메타트레이더 포터블 설치 방법 보기 : https://igotit.tistory.com/3861) 2. VSCode 설치되어 있어야 함. - 본 예에서는 VSCode 포터블 설치 된 상황. ( VSCode 포터블 설치 방법 보기 : https://igotit.tistory.com/4313 ) VSCode 에 MQL Tools 설치 VSCode 실행하여 Extensions (아래 그림의 왼쪽 메뉴의 번호1 E.. 2024. 2. 24.
메타트레이더 5 . 롤오버 이자 없는 스왑프리 계좌 개설 가능 XM Ultra Low 계좌 - XM Ultra Low 계좌는 거래종목(외환 , 암호화폐 , 골드등) 1일 이상 보유해도 롤오버 이자 0 인 스왑프리 지원됨 . 롤오버 이자 란 메타트레이더 터미널 창에서 Swap 이라는 부분에 보이는 이자를 말하며 , 거래 종목 1일 이상 포지션 홀딩시 발생한다. 통상 스왑 이자는 내가 받는 경우보다 대부분이 지급해야 하므로 장기 홀딩시 심각한 수준으로 손실액 증가시키는 주범이다. 보통 스왑프리 계좌는 이슬람교 임을 증명하는 서류를 제출해야 스왑프리 계좌 개설 해주는데, 고맙게도 XM Ultra Low 계좌 는 누구나 스왑프리 계좌 개설 가능하여 롤오버 이자 발생하지 않는다. 매매전략 중 장기 포지션 홀딩이 발생하는 류의 매매 전략 실행시 롤오버 이자 손실없이 수익 증대.. 2023. 7. 9.
메타트레이더 . 코딩 . OnTimer . 시간격 이벤트 메타트레이더 EA 의 타이머 - 1개의 EA 당 1개의 타이머만 구동 가능. - 타이머 이벤트 핸들러 함수는 EA 파일의 void OnTimer() - 함수 EventSetTimer 호출하면 타이머 시작되어 지정한 시간격 되면 EA 의 void OnTimer() 실행 - 함수 EventKillTimer 호출하면 타이머 중지. 함수 EventSetTimer 인자 : 초단위의 시간 bool EventSetTimer( int seconds // number of seconds ); 상기 함수 호출한 시점 이후 인자에서 지정한 시간이 되면 ea 의 void OnTimer() 실행된다. 함수 EventKillTimer 이 함수 호출된 이후에는 OnTimer 이벤트 발생하지 않음. void EventKillTime.. 2023. 5. 4.
메타트레이더 . 코딩 . 시간 . MqlDateTime . 년 월 일 시 분 초 요일 메타트레이더 시간 관련 함수 함수 전체 : https://www.mql5.com/en/docs/dateandtime 함수 TimeCurrent - 2개 함수형태 제공된다. 반환값 자료형은 모두 datetime , 인자 있는 함수는 MqlDateTime 구조체 형식으로 데이터 받을 수 있어 편리. - 반환 받는 시간은 메타 트레이더 시간 datetime TimeCurrent( MqlDateTime& dt_struct // structure type variable ); datetime TimeCurrent(); 구조체 MqlDateTime - 년 월 일 시 분 초 요일 정보 각각 확보 편리. struct MqlDateTime { int year; // Year int mon; // Month int day.. 2023. 5. 4.
메타트레이더 . 롤오버 이자 . 스왑 포인트 . 정확한 적용 시각 메타트레이더에서 롤오버 이자 . 아래 그림의 붉은 색 박스 부분 ( 컬럼 이름 Swap ) 이 각각의 포지션 오픈된 것에 대한 이자 적용된 것을 보여주고 있다. - 이자는 1일 단위로 적용되기 때문에 포지션 진입한 직후에는 Swap 이자 적용되지 않는다. 위 화면에서는 포지션 오픈한 이후 1일 이후 부터 적용된 Swap 이자 를 보여준다. - 음수는 내가 이자 지급한 것, 양수는 이자 받은 것. - 금액 단위 : USD 거래 종목의 롤오버 이자 보는 방법. 메타트레이더에서 심볼의 Specification 의 SWAP LONG, SWAP SHORT 에 이자율을 확인 할 수 있다. 아래 화면은 FXTM 의 종목 USDCHF 의 specification 에서 보이는 Swap 관련 정보들이다(붉은색 박스). 항.. 2023. 5. 2.
메타트레이더 . 시간 . 메타 트레이더 의 시간 표현 기준 메타에서 보이는 시간들 , 예 . 메타에서 FXTM 으로 접속한 경우 보이는 챠트의 시간, Trade 탭에 보이는 Time 등, 메타트레이더 (4 / 5 모두) 에서 표현되는 모든 시간은 UTC 아닌 로컬시로 표현되며 FXTM 의 경우 UTC +2 로 표현된다. 심볼 specification 에 보이는 시간들. - 아래 심볼 스펙에 보이는 요일이나 시간들 위에 보이는 시간들은 서버 위치의 로컬시도 아니고 UTC 도 아님. FXTM 의 경우 거래 서버가 유럽, 아시아 등 여러 곳에 분산되어 운영 중이고 , 메타트레이더에서 이들 서버 선택하여 접속해보면 아시아 서버든 든 유럽서버든 시간은 항상 UTC + 2 가 적용된다. 즉, 정확한 의미로 표현하면 메타 트레이더에서 접속한.. 2023. 5. 2.
메타트레이더 . 코딩 . 터미널 전역변수 . 멀티스레드 EA 동기화 처리 터미널 전역 변수 . Global Variables of the Client Terminal - 메타트레이더 에서 실행 중인 2개 이상의 EA에서 동시 접근 가능한 전역변수 . 비교 : C/C++ 에서의 일반적인 "전역 변수"의 스코프는 1개의 EA 내부에서만 접근가능한 반면 터미널 전역 변수는 여러 EA 에서 접근 가능. - 터미널 전역변수는 스레드 세이프함. 메타트레이더의 EA 각각은 개별적으로 작동하는 비동기 스레드이며 여러 EA 에서 터미널 전역변수에 비동기 접근 하더래도 1번에 1개의 EA 만 전역변수 접근 된다. 즉 사용자가 별도의 동기화 코드 작성하지 않아도 메타트레이더에서 제공되는 터미널 전역변수는 스레드 세이프하다. - 터미널 전역변수 자료형은 double 만 가능. - 터미널 전역변수는.. 2023. 4. 30.
메타트레이더 . 코딩 . 여러 EA 구동시 가용마진 확인 방법 . 터미널 전역 변수 활용 개요 - 문제 상황 메타트레이더에서 여러 EA를 동시에 구동하면서 각 EA에서 주문하기 전에 주문 가능한 가용 마진(Free Margin) 확인하면서 주문 실행 해야 하는 경우가 있다. 1개의 EA 만 실행될 때는 코드에서 Free Margin 요청하여 현재 주문 하려는 수량이 주문 접수 가능한지 점검가능하면 된다. 그러나, 2개 이상의 EA 가 실행되는 경우에는 각각의 EA 에서 서버 측으로 Free Margin 정보 요청하는 방식으로는 필연 오류 발생한다. Free Margin 값은 주문이 완료되어 포지션 오픈 된 이후에 포지션 오픈 되고 남은 잔량이 표시되기 때문에, 아래와 같은 상황에서는 문제 발생함. 상황예. 2개의 EA 1, 2 에서 주문 송신 전 단계에서 아래처럼 Free Margin 확인하.. 2023. 4. 28.
메타트레이더 . VPS . 가장 빠른 ping 가능 메타트레이더 에서 VPS 활성화 하기 - 아래 그림은 MT5 에서 VPS 활성화 하기 위하여 왼쪽 Navigator 에서 VPS 클릭해보면 현재 MT5 에서 사용중인 계정(본 글에서는 FXTM Advantage MT5 계정임)에서 사용 가능한 VPS 중 가장 빠른 Ping 속도인 서버를 보여준다. - 아래 예에서는 Ping 시간이 0.83 msec 로 매우 양호한 속도의 VPS 를 보여준다. - 메타트레이더 전용서버는 여타 다른 클라우드 서버들(아마존 , MS , ..) 대비 매매서버 와의 통신속도에서 가장 빠른 수단이므로 매매전략이 통신 속도에 민감한 경우에는 VPS 활용 필수. 연관 메타트레이더 5. 체계정리. 활용법/지식 MetaTrader 5 메타트레이더 5 , 메타에디터, MQL5 활용정보 체계.. 2023. 4. 27.
메타트레이더 . 호가 스프레드 . 거래 비용 계산 방법 스프레드 메타트레이더에서 스프레드는 거래 종목의 Ask (매도1호가 ) - Bid (매수1호가) 를 포인트 단위로 표현 한다. 포인트는 종목 마다 다르며 USDJPY 는 0.001 이 1포인트, EURUSD 는 0.00001 이 1포인트. 스프레드는 Ask , Bid 가격에 따라 변동 되며 가격 변동이 큰 경우 통상 스프레드도 큰 값을 갖는다. 메타트레이더 실행화면 왼쪽 Market Watch 의 Spread 컬럼 (아래 그림 붉은 박스) 에 각 종목의 현재시점 스프레드 볼 수 있다. 위 그림에서, EURUSD 는 Ask 가격과 Bid 가격이 동일하여 스프레드 0을 보여주며, USDJPY 는 Ask = 133.767 , Bid = 133.761 이므로 Ask - Bid 는 0.006 이고 USDJPY 의.. 2023. 4. 16.
메타트레이더 . 용어 이해 . 마진 (증거금) 계산식. 레버리지 메타트레이더 - Reverage(레버리지) 개념 , 용어 정의 이해. - 용어 : Balance (잔고), Equity(평가금) , Margin(마진), Free Margin(가용마진), Margin Level(마진레벨) 메타트레이더 매매창의 Toolbox -> Trade 에서 아래 그림의 붉은 박스 부분에 보이는 항목이 실매매시 매우 중요한 정보이므로 완전한 이해 요구된다. 가장 중요한 것은 Margin (증거금) 류 들. - 각각의 용어 이해와 더불어 마지막으로 마진계산 하는 정의식 정리하고 예를 보임. Reverage .레버리지 - 본인 보유 계좌 잔고 보다 더 많은 자금으로 포지션 오픈 가능하게 해주는것. - 레버리지 는 1:100, 1:200, 1:500 등 사용자가 본인 계좌 설정에서 최대 레.. 2023. 4. 12.
메타트레이더 . exposure 메타트레이더 의 Exposure 탭에 보이는 것들 의미 위 매매 상태의 Exposure 부분을 보면 아래 처럼 보인다. Asset 통화 이름 Volume - 해당 통화의 알짜 보유 량 - 단위 : 해당 통화. 예 : CHF 의 볼륨 0.2CHF 인데, 이는 GBPCHF 매수 포지션과 GBPCHF 매도 포지션에 의한 알짜 CHF 보유 수량을 보여주는것이다. GBPCHF 0.1 랏(= 10,000 GBP) 를 환율 1.12609에서 매수 했기 때문에 CHF 매도량은 11260.9 CHF ( = 10,000 * 1.12609 ) GBPCHF 0.1 랏(= 10,000 GBP) 를 환율 1.12611 에서 매도 했기 때문에 CHF 매수량은 11261.1 ( = 10,000 * 1.12611) 알짜 CHF 보유량.. 2023. 4. 11.
메타트레이더 . 매매화면의 Profit 완전 이해 메타트레이더 매매화면에 보이는 Profit 완전한 이해. - 아래 그림의 번호 5 . Profit 항목은 보유한 포지션의 수익을 보이고 있는데, 이 수익액은 포지션 진입가격 청산가격 차이만으로 계산되는 것이 아니며, 거래 종목의 상대통화( 심볼 AB 중 B )가 달러가 아닌 모든 종목들은 최종적으로 달러 환전 계산이 이뤄진 수익액을 보여주고 있다. - 본 글에서는 Profit 에 대한 완전한 이해 및 아래 그림에서 번호 1, 2, 3, .. 들의 의미도 정리. Type (위 그림의 번호1) 포지션 진입 방향. sell = 매도, buy = 매수. Volume (위 그림의 번호 2) 포지션 진입 수량 . 통화쌍 AB 중 A 통화(기준 통화라고 함)의 수량. 수량 단위 : LOT . 1 LOT 은 Contr.. 2023. 4. 11.
메타트레이더 . 다 종목 매매 전략 백테스팅 MT5 만 가능 개요 메타 트레이더의 1개의 EA 에서 거래 하는 종목이 EA 가 실행되는 챠트의 종목 외에 다른 종목의 틱 데이터 활용하면서 동시 주문 하는 전략을 백테스팅 하려면 메타트레이더 5 에서만 가능하며, MT4 의 Strategy Tester 에서는 시험 불가함. ( MT4 Strategy Tester 가 다종목 지원하지 않는 것이며, MT4 실거래 모드에서는 다종목 매매 가능.) MT5 백테스팅 예 EA 의 틱데이터 처리부에 아래처럼 S&P500 , 나스닥 지수 종목의 틱 데이터를 활용하려고 한다. void OnTick() { MqlTick mql_tick_base; SymbolInfoTick("SPX500_m", mql_tick_base);// S&P500 MqlTick mql_tick_quote; Sy.. 2023. 4. 2.
메타트레이더 . 코딩 . 파일 . 클래스 CCy_File 개요 - 메타트레이더에서 파일 출력하기 읽기 - 클래스 CCy_File 구현예. 파일 관련 함수 MT4 의 파일관련 함수 전체 - https://docs.mql4.com/files/ 파일 기본 경로 FileOpen() 에서 인자 file_name 에 경로 설정하지 않은 겨우, \MQL4\Files 를 기본 경로로 함. 파일 출력하기 FileOpen() 호출하여 받은 핸들로 FileWrite() 호출. 클래스 CCy_File 구현예. - 사전 지식 : 클래스 만들기 방법 - 파일 출력 기능 구현. 실행결과 - 상기 코드 가장 아래 있는 EA 를 메타트레이더의 챠트에 배치하면 1분봉 캔들 이전 100개의 O,H,L,C 가격을 파일에 출력한다(아래그림. 나스닥 - FXTM 에서 심볼명 NQ100_m ). - .. 2023. 3. 31.
메타트레이더 . 코딩 . 거래 수수료 . 클래스 CCy_Commission 개요 메타트레이더에 연결된 계좌에 따라 수수료 계산 방식이 다르다. BYBIT 과 FXTM 의 거래 수수료 계산 방식 상세 . 에서 정리했듯이 BYBIT 의 경우 진입, 청산 각각 개별적으로 거래수수료가 계산되고 FXTM MT4 계좌에서는 진입시에 1회 거래수수료가 모두 부과되는 방식이다. EA 매매로직 코드 에서 거래 수수료 관련 정보를 이용하려는 경우 수수료 계산 방식이 다른 것을 고려하여 코드 작성해야 한다. 메타트레이더 코드 내에서 거래수수료 정보 고려한 로직을 만들려면 입력변수로 거래수수료 비율 등을 사용자가 입력 가능하게 해야 한다. (심볼의 Specification 으로 수수료 정보는 제공안됨.) 본 글에서는 메타트레이더 코드에서 거래수수료 활용하기 위한 코드 작성 예 정리한다. enum 정.. 2023. 3. 22.
메타트레이더 . 거래 수수료 . commission . BYBIT . FXTM 개요 메타트레이더로 거래 가능한 종목들 중에는 거래 수수료 없는 대신 스프레드가 큰 경우가 있고, 스프레드가 작은 대신 거래수수료가 부과되는 종목들도 있다. 또한, 메타트레이더에서 연결된 계좌 에 따라 수수료 계산방식이 동일하지 않고 다르게 적용된다. 예 : BYBIT MT4 의 거래수수료 책정방식과 FXTM Advantage MT4 의 거래수수료 계산방식이 다름. FXTM 의 경우엔 MT4 계좌와 MT5 계좌의 수수료 책정 방식이 다르다. 본 글에서는 수수료 계산 방식 이해 및 수수료 관련 계산식 정리. 거래 수수료 . BYBIT MT4 - 모든 종목의 거래수수료는 거래금액(USDT 단위)의 0.06%. - 진입시 거래수수료와 청산시 거래 수수료가 개별적으로 계산되어 부과됨. 수수료 계산 예 BTCUS.. 2023. 3. 22.
메타트레이더 . 주문 수량 단위 랏 이해. LOT , Contract Size 주문 수량 단위 LOT 이해 아래 화면은 FXTM 의 종목 EURUSD 의 수동 주문 창이며 주문창에 기록하는 수량 단위는 LOT 이다. 아래화면은 암호화폐 BYBIT 거래소의 종목 BTCUSDT 의 수동 주문 창이며 주문창에 기록하는 수량 단위 역시 LOT 이다. 메타트레이더의 주문 함수에 기록하는 주문 수량(아래 코드에서 인자 volume ) 단위 역시 LOT . int OrderSend( string symbol, // symbol int cmd, // operation double volume, // volume . unit : LOT double price, // price int slippage, // slippage double stoploss, // stop loss double takep.. 2023. 3. 22.


 

비트코인




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