본문 바로가기

EA 교육자료

(31)
for구문 [기본문법] 4-1. for구문 int i; //정수 i를 정의하고for(i=0 ; i
2-2추세패턴기법 [전략 코딩] 2-2. 추세 패턴기법 캔들이 한 방향으로 추세를 형성하는 시점에 진입을 잡는 방법입니다. 역추세 및 변곡점 매매전략에서도 동일하게 활용될 수 있습니다. 추세장과 횡보장을 구분하는 기준에는 주관적인 판단이 많이 개입됩니다. 예를 들어, 5분챠트에서 매매를 하는 트레이더가 현재 시장 상황이 추세장이라고 판단하더라도, 일일챠트로 보면 대부분이 횡보장에 머물고 있는 경우가 많습니다. 그러므로, 본인의 판단하에 추세장의 기준을 명확히 정한 후, 추세장과 횡보장을 구분해야 합니다. 2-2-1. 실전예제1 15분 챠트에서 현재봉이 30핍 이상 상승시 if(iClose(NULL,15,0)-iOpen(NULL,15,0) > 30*Point*10) 2-2-2. 실전예제2 봉 세개가 연속하여 양봉이 나올 때 If(Clos..
전략코팅 매매관리 1. Robust한 전략 및 코딩법 1-1. 전략 수립/코딩 시 꼭 알아야 할 사항 a. 스캘핑 전략 스캘핑이라 불리는 초단타 매매는 거래환경에 따라 수익/손실금액이 크게 변합니다. 과거백테스트 상에서는 우수한 성적을 보이더라도, 실계좌 전진테스트에서는 백테스트와 다른 결과가 자주 나오게 됩니다. 그 이유로는 실제 거래환경에서의 슬리피지, 호가부족, 주문지연, 주문거부, 스프레드확대, 서버breakdown과 같은 예상치 못한 문제점들이 발생할 소지가 다분하기 때문입니다. 포지션 진입 후 수초 안에 청산하는 스캘핑 매매전략은, 거래환경(선물사환경/서버환경/EA코딩 등)을 충분히 고려하여 EA가 최적의 성능을 낼 수 있도록 환경을 만들어야 합니다. b. ‘틱’을 사용한 전략 호가, 즉 ‘틱’의 움직임을 분석..
백테스트신뢰성 매매관리 1-2. 백테스트의 신뢰도 향상 (전략시뮬레이션) 메타플랫폼에서는 '전략과거(백)테스트'기능을 제공합니다. 타 tool들을 통해서도 시스템 트레이딩 매매전략 과거테스트가 가능하지만, 메타플랫폼만큼이나 대중적이며 광범위하며 정확도 있고 경제적이며 확장성 있는 매매전략테스터기는 거의 존재하지 않습니다. 매매전략 과거시뮬레이션 테스트의 장단점과, 특히 외환마진상품을 거래하는 메타플랫폼에서의 과거테스트의 특징에 대해 알아보겠습니다. 우선, 백테스트를 하기 전에 백테스트를 하는 금융상품자체의 특성에 대해 알아야 합니다. [외환마진상품 특징], 1. 물량한도가 없으므로 포지션보유에 제한이 없음. 단, 슬리피지 발생 가능성이 존재하며 거래선물사 정책에 따라 진입 랏 사이즈와 개수에 제한이 있을 수 있음.2. 장외상품..
캔들활용기본이론 매매코딩 2-1. 캔들 활용 기본이론 캔들활용을 위해 꼭 필요한 함수는 아래와 같이 6개가 있습니다. Time[]Open[]Close[]High[]Low[]Volume[] (1). Time[] :Time[]함수는 현재챠트 캔들의 시작시간 값을 불러오며, 1970년1월1일0시부터 현재까지 경과된 시간을 초단위로 표현합니다. 아래 예시와 같이 대괄호 안 숫자를 사용하여 현재 캔들의 오픈 시간 혹은 이전 캔들의 오픈 시간을 가져올 수 있습니다. Time[0] – 현재봉의 시작시간Time[1] – 전봉Time[2] - 전전봉 Time[3] - 전전전봉 ….. (2). Open[] :현재챠트 캔들의 시작가 (3). Close[] :현재챠트 캔들의 종가Close[0]은 현재시장가격을 불러옴 (4). High[] :현재챠트 ..
RSI상대강도지수 소스 매매코딩 1-3-6. RSI상대강도지수 mql4소스코딩(1-3-2.RSI상대강도지수를 활용한 매매전략) ※검정색글자: 소스코딩붉은색글자: 해설 //------------------------------------------------------------------------------------------------------------ extern int MagicNo = 1234; //외부변수 값 설정extern double Lots = 1.0; //랏사이즈 설정extern int RSIperiod = 14; //RSI기간extern int Top = 70; //RSI윗선 extern int Bottom = 30; //RSI아래선 int start() { double preRSI,curRSI; //doubl..
RSI상대강도지수 매매코딩 1-3. RSI상대강도지수 앞서 살펴본 이동평균선과 볼린져밴드는 OrderModify()함수를 활용하여 청산로직이 코딩되었으며, 이번 RSI상대강도지수를 활용한 mql4소스 코딩에서는 OrderClose()함수를 활용하여 청산로직을 코딩하는 법을 보겠습니다. 1-3-1. RSI상대강도지수 설명 RSI(Relative Strength Index)는 상대강도지수라고도 불리며, 일정기간 동안의 가격 상승과 하락 중에서 상승폭과 하락폭을 비교 함으로서 시장변동성의 강도를 측정하는 보조지표입니다. 또한 상승과 하락의 한계를 정해 움직임의 범위를 설정하여, 순간적인 시장변동성 때문에 가격이 갑자기 급등락하는 경우에 나타나는 시장가격의 왜곡을 방지합니다. 1-3-2. RSI상대강도지수를 활용한 매매전략 [진입]RSI..
볼린져밴드 매매코딩 1-2. 볼린져밴드 1-2-1. 볼린져밴드 설명 볼린져밴드는 가격변동성분석과 추세분석을 동시에 수행하며, 추세가 시작되는 가격돌파 시점을 잡는데 보편적으로 사용되는 보조지표입니다. 볼린져밴드는 추세중심선, 상단선, 하단선으로 구성되며, 상단선과 하단선의 폭이 좁은 가격대를 형성했을 때, 가격이 볼린져밴드 상단선을 뚫고 상승할 때가 매수신호입니다. 반대로 하단선을 뚫고 하락할 때는 매도신호입니다. 사용자의 해석에 따라 횡보매매를 위한 보조지표로 활용되기도 합니다. 1-2-2. 볼린져밴드를 활용한 매매전략 [진입]가격이 볼린져밴드의 상단선을 상승돌파 할 때 매수진입가격이 볼린져밴드의 하단선을 하락돌파 할 때 매도진입 [청산]진입과 동시에 이익실현 핍과 손절매 핍 설정 1-2-3. iBands()볼린져밴드 함..