커뮤니티
1분봉 갭보정을 했을 경우
2013-03-25 12:23:04
268
글번호 61147
1. 갭보정 관련
1분봉 선물차트에서 차트의 기본차트 속성에 있는 갭보정기능을 이용하여 갭보정을 했을 경우 시스템식을 적용하려면 갭보정을 한 시스템식으로 변환해서 적용해야 하는지 궁금합니다.
틱차트에서는 그대로 할 수 있던데......
if (C > 5선) then
했을 경우 갭보정한 차트에서 제대로 반영되지 않습니다.
갭보정하지 않으면 신호가 안뜨고, 갭보정한 차트에서는 신호가 뜹니다.
원래 뜨지 말아야 하고 차트상에서 보여지는 것에서도 20선 밑에 있습니다.
이전 갭보정 관련글들을 대략 읽어보니 차트속성의 갭보정 기능보다는 수식으로 갭보정하여 반영하는 것이 좋다라고 제가 이해를 했는데, 선물의 경우 갭이 발생하면 이평선이 망가지는 것 때문에 갭보정을 해야 차트상 분석이 용이한데 수식과 더불어 차트속성에서 갭보정을 해줘야 하는 것인지....(만약 수식작업이 필요하다고 하면 아래 삼각가중이평선을 이용한 수식을 부탁드립니다.)
갭보정을 이용하는 것에 대해 바람직한 답변을 주시면 감사하겠습니다.
2. 삼각가중이평선
삼각가중이평선을 구하는 식을 아래와 같이 만들었습니다. 제대로 한것인지 검증부탁드리고 이를 사용자 함수로 만들어서 사용하는 방법좀 알려주시면 고맙겠습니다.
INPUT: MAvPeriod1(5), MAvPeriod2(10), MAvPeriod3(20), MAvPeriod4(60), MAvPeriod5(120), MAvPeriodTL(28), MAvPeriodTS(35);
VARS: MAv1(0), MAv2(0), MAv3(0), MAv4(0), MAv5(0), MAvTL(0), MAvTS(0);
VARS: Len1(0), Len2(0), Len3(0), Len4(0), Len5(0), LenTL(0), LenTS(0);
Len1 = Ceiling((MAvPeriod1 + 1) * 0.5);
Len2 = Ceiling((MAvPeriod2 + 1) * 0.5);
Len3 = Ceiling((MAvPeriod3 + 1) * 0.5);
Len4 = Ceiling((MAvPeriod4 + 1) * 0.5);
Len5 = Ceiling((MAvPeriod5 + 1) * 0.5);
LenTL = Ceiling((MAvPeriodTL + 1) * 0.5);
LenTS = Ceiling((MAvPeriodTS + 1) * 0.5);
MAv1 = MA(MA(CLOSE, Len1), Len1);
MAv2 = MA(MA(CLOSE, Len2), Len2);
MAv3 = MA(MA(CLOSE, Len3), Len3);
MAv4 = MA(MA(CLOSE, Len4), Len4);
MAv5 = MA(MA(CLOSE, Len5), Len5);
MAvTL = MA(MA(CLOSE, LenTL), LenTL);
MAvTS = MA(MA(CLOSE, LenTS), LenTS);
3. 1분봉에 바로 이전의 고가를 돌파하는 시점에 봉의 완성이 되기전에 주문이 나가게 하려면 어떻게 해야 하나요?
장대양봉이 발생하면 너무 높은 고가에 진입하게 되어 불리한 점이 많습니다. 1분봉의 양봉길이가 10틱이라고 하면 약간 밀릴때 (10틱길이에서 2~3틱 밀릴때) 진입하고 합니다. 위 두가지에 대해 간단히 수식으로 알려주시면 좋겠습니다.
4. 선물 스윙 트레이딩을 하는데 있어 당일 종가가 20선을 깼을때만 장마감 동시호가때 청산하고자 합니다. 20선이 깨지지 않았으면 다음날도 포지션을 유지합니다.
감사합니다.
답변 1
예스스탁 예스스탁 답변
2013-03-25 13:23:09
안녕하세요
예스스탁입니다.
수식은 적용된 차트의 데이터를 이용합니다.
기본차트속성에서 갭보정을 하시면 따로 수식에서
갭보정처리를 한다든지 처리할 내용이 없습니다.
수식안에서 갭보정처리를 하는것은 차트를 갭보정하지 않고
갭보정된 값을 이용하고자 할때 사용됩니다.
차트를 갭보정하지 않은 상태에서 갭보정한 값을 이용하실때만
수식안에서 갭보정한 값을 계산해서 사용합니다.
기본차트 속성창에서 분,틱봉의 일간갭보정 기능을 체크하게 되면
오늘의 데이타는 그대로 두고 오늘 이전의 모든 데이타에 대해서
발생된 갭만큼의 비율로 과거의 차트를 보정하게 됩니다.
이렇게 갭보정된 차트에 시스템을 적용하시면 실제매매에서 발생되었던 매매신호가
다음날 갭보정에 의해서 사라지거나 새로 생겨날 수 있고
신호는 그대로 동일봉에 발생하더라도 일자가 지나면 계속 가격이 보정이 되므로
신호가격이 매일 변경되게 됩니다. 그러므로 과거일에 발생한 신호는 의미가 없습니다.
이런이유로 기본차트에서 일간개보정은 시각적으로 차트를 분석하거나
이전일의 신호내용은 무시하고 보정된 데이터로 당일에만 시스템을
발생하고자 할때만 사용합니다.
시뮬레이션을 하신거나 과거일의 거래결과등이 필요한 시스템이시면
일간갭을 보정시킨 상태에서 시스템매매를 하거나 시스템 시뮬레이션을 하지는 않고
식상으로 보정된 지표값을 계산해서 사용하게 됩니다.
###단순이평
input : Period1(5);
var : sumGap(0), gap(0), GC(0), Gma1(0);
if date!=date[1] then {
gap = Open-Close[1];
sumGap = sumGap+gap;
}
GC = C - sumGap;
Gma1 = ma(GC,Period1);
IF c > Gma1 then
buy();
###삼각가중
input : Period1(5);
var : sumGap(0), gap(0), GC(0), TRIma(0),TLen1(0);
if date!=date[1] then {
gap = Open-Close[1];
sumGap = sumGap+gap;
}
GC = C - sumGap;
TLen1 = Ceiling((Period1 + 1) * .5);
TRIma = ma(ma(GC, TLen1), TLen1);
IF c > Gma1 then
buy();
2.
사용자함수명 : TWMA
반환값형 : 숫자형
사용자함수내용 :
Input : Price(Numeric),Length(Numeric);
Var : TLen(0);
TLen = Ceiling((Length + 1) * .5);
TWMA = ma(ma(Price, TLen), TLen);
위 함수를 만드시고
지표식에서는 아래와 같이 작성해 쓰시면 됩니다.
INPUT: MAvPeriod1(5), MAvPeriod2(10), MAvPeriod3(20), MAvPeriod4(60), MAvPeriod5(120), MAvPeriodTL(28), MAvPeriodTS(35);
var1 = TWMA(C,MAvPeriod1);
var2 = TWMA(C,MAvPeriod2);
var3 = TWMA(C,MAvPeriod3);
var4 = TWMA(C,MAvPeriod4);
var5 = TWMA(C,MAvPeriod5);
var6 = TWMA(C,MAvPeriodTL);
var7 = TWMA(C,MAvPeriodTS);
plot1(var1);
plot2(var2);
plot3(var3);
plot4(var4);
plot5(var5);
plot6(var6);
plot7(var7);
3.
직전봉(완성봉)의 가격을 이용해 주문을 내신다면
atstop이나 atlimit타입이용하시면 됩니다.
직전봉의 고가보다 한틱 높아지면 매수합니다.
buy("b",atstop,H+PriceScale);
수식은 완성봉의 데이터만 사용가능합니다.
하나의 봉에서 고가대비 약간밀린때와 같이
하나의 봉에서 움직임을 판단해서는 즉시 주문이 가능하지 않습니다.
4.
시스템은 정규장 내에서만 주문이 가능합니다.
동시호가 데이터는 동시호가가 모두 끝나면 거래소에서 데이터를 주게됩니다.
if문은 봉완성시이고 봉완성은 다음봉 시가가 수신될 때입니다.
그러므로 정규장 마지막봉에서 if조건이 만족하면
해당 봉을 완성시키는 다음봉(동시호가)의 데이터가 들어오고
주문이 나가면 장이 모두 끝나 주문이 거부가 되고
동시호가봉에 if조건이 만족하면 다음날 시가에 주문이 발생합니다.
동시호가에 if조건을 만족해 다음날 시가에 주문을 내신다면 아래식 이용하시면 됩니다.
if stime == 151500 and c < ma(c,20) then{
exitlong();
exitshort();
}
즐거운 하루되세요
> TRF 님이 쓴 글입니다.
> 제목 : 1분봉 갭보정을 했을 경우
> 1. 갭보정 관련
1분봉 선물차트에서 차트의 기본차트 속성에 있는 갭보정기능을 이용하여 갭보정을 했을 경우 시스템식을 적용하려면 갭보정을 한 시스템식으로 변환해서 적용해야 하는지 궁금합니다.
틱차트에서는 그대로 할 수 있던데......
if (C > 5선) then
했을 경우 갭보정한 차트에서 제대로 반영되지 않습니다.
갭보정하지 않으면 신호가 안뜨고, 갭보정한 차트에서는 신호가 뜹니다.
원래 뜨지 말아야 하고 차트상에서 보여지는 것에서도 20선 밑에 있습니다.
이전 갭보정 관련글들을 대략 읽어보니 차트속성의 갭보정 기능보다는 수식으로 갭보정하여 반영하는 것이 좋다라고 제가 이해를 했는데, 선물의 경우 갭이 발생하면 이평선이 망가지는 것 때문에 갭보정을 해야 차트상 분석이 용이한데 수식과 더불어 차트속성에서 갭보정을 해줘야 하는 것인지....(만약 수식작업이 필요하다고 하면 아래 삼각가중이평선을 이용한 수식을 부탁드립니다.)
갭보정을 이용하는 것에 대해 바람직한 답변을 주시면 감사하겠습니다.
2. 삼각가중이평선
삼각가중이평선을 구하는 식을 아래와 같이 만들었습니다. 제대로 한것인지 검증부탁드리고 이를 사용자 함수로 만들어서 사용하는 방법좀 알려주시면 고맙겠습니다.
INPUT: MAvPeriod1(5), MAvPeriod2(10), MAvPeriod3(20), MAvPeriod4(60), MAvPeriod5(120), MAvPeriodTL(28), MAvPeriodTS(35);
VARS: MAv1(0), MAv2(0), MAv3(0), MAv4(0), MAv5(0), MAvTL(0), MAvTS(0);
VARS: Len1(0), Len2(0), Len3(0), Len4(0), Len5(0), LenTL(0), LenTS(0);
Len1 = Ceiling((MAvPeriod1 + 1) * 0.5);
Len2 = Ceiling((MAvPeriod2 + 1) * 0.5);
Len3 = Ceiling((MAvPeriod3 + 1) * 0.5);
Len4 = Ceiling((MAvPeriod4 + 1) * 0.5);
Len5 = Ceiling((MAvPeriod5 + 1) * 0.5);
LenTL = Ceiling((MAvPeriodTL + 1) * 0.5);
LenTS = Ceiling((MAvPeriodTS + 1) * 0.5);
MAv1 = MA(MA(CLOSE, Len1), Len1);
MAv2 = MA(MA(CLOSE, Len2), Len2);
MAv3 = MA(MA(CLOSE, Len3), Len3);
MAv4 = MA(MA(CLOSE, Len4), Len4);
MAv5 = MA(MA(CLOSE, Len5), Len5);
MAvTL = MA(MA(CLOSE, LenTL), LenTL);
MAvTS = MA(MA(CLOSE, LenTS), LenTS);
3. 1분봉에 바로 이전의 고가를 돌파하는 시점에 봉의 완성이 되기전에 주문이 나가게 하려면 어떻게 해야 하나요?
장대양봉이 발생하면 너무 높은 고가에 진입하게 되어 불리한 점이 많습니다. 1분봉의 양봉길이가 10틱이라고 하면 약간 밀릴때 (10틱길이에서 2~3틱 밀릴때) 진입하고 합니다. 위 두가지에 대해 간단히 수식으로 알려주시면 좋겠습니다.
4. 선물 스윙 트레이딩을 하는데 있어 당일 종가가 20선을 깼을때만 장마감 동시호가때 청산하고자 합니다. 20선이 깨지지 않았으면 다음날도 포지션을 유지합니다.
감사합니다.