커뮤니티
재질문
2013-03-11 13:12:09
201
글번호 60531
작성해주신 시스템 식을 적용해보니
결과값이 의도와는 다르게 나옵니다.
직전값과 비교를 원하는 macd오실레이터 값은 [일]봉이 아닌 [주]봉값들의 비교 입니다.
실제론 주봉상 오실레이터 값이 현재봉값이 더 커도 신호가 나옵니다.
안녕하세요
예스스탁입니다.
Input : Period1(12), Period2(26), Period3(9);
Var : Ep1(0), EP2(0), EP3(0), JISU1(0), JISU2(0), PreJISU1(0), PreJISU2(0);
Var : macdVal(0), preMacdVal(0), macdSig(0),macdOsc(0),PreMacdOsc(0);
#주봉 MACD
if (dayofweek(date) <= DayOfWeek(date[1]) and sdate > sdate[1]) then {
PreJISU1 = JISU1[1];
PreJISU2 = JISU2[1];
PreMacdVal = macdVal[1];
}
Ep1 = 2/(Period1+1);
EP2 = 2/(Period2+1);
EP3 = 2/(Period3+1);
JISU1 = C * Ep1 + PreJISU1 * (1-Ep1);
JISU2 = C * Ep2 + PreJISU2 * (1-Ep2);
macdVal = JISU1 - JISU2;
if crossup(ma(c,5),ma(c,20)) and macdVal > premacdVal Then
buy();
즐거운 하루되세요
> 으쌰 님이 쓴 글입니다.
> 제목 : 수식문의
> [일]봉 주기 매매식입니다
5일 이평선이 20일 이평선을 골든크로스 하면 매수하는 시스템 식에
동일종목 타주기 지표값의 다음 조건을 삽입하고 싶습니다.
단 매수하는 시점에 [주]봉 주기상 macd 오실레이터 값이 직전값보다 작아야 한다.
시스템식 부탁드립니다.
답변 1
예스스탁 예스스탁 답변
2013-03-11 15:43:58
안녕하세요
예스스탁입니다.
죄송합니다. 오실레이터가 아닌 MACD값으로 계산했습니다.
오실레이터로 수정했습니다.
지표식 같이 올려드립니다.
일봉차트에 조회갯수를 최대인 5000으로 지정하시고
적용하시기 바랍니다.
1. 시스템
Input : Period1(12), Period2(26), Period3(9);
Var : Ep1(0), EP2(0), EP3(0), JISU1(0), JISU2(0), PreJISU1(0), PreJISU2(0);
Var : macdVal(0), preMacdVal(0), macdSig(0),PreMacdsig(0),macdOsc(0),PreMacdOsc(0);
if (dayofweek(date) <= DayOfWeek(date[1]) and sdate > sdate[1]) then {
PreJISU1 = JISU1[1];
PreJISU2 = JISU2[1];
PreMacdVal = macdVal[1];
PreMacdsig = macdSig[1];
PreMacdOsc = macdOsc[1];
}
Ep1 = 2/(Period1+1);
EP2 = 2/(Period2+1);
EP3 = 2/(Period3+1);
JISU1 = C * Ep1 + PreJISU1 * (1-Ep1);
JISU2 = C * Ep2 + PreJISU2 * (1-Ep2);
macdVal = JISU1 - JISU2;
macdSig = macdVal * Ep3 + PreMacdSig * (1-Ep3);
macdOsc = macdval-macdsig;
if crossup(ma(c,5),ma(c,20)) and macdOsc > premacdOsc Then
buy();
2. 지표식
Input : Period1(12), Period2(26), Period3(9);
Var : Ep1(0), EP2(0), EP3(0), JISU1(0), JISU2(0), PreJISU1(0), PreJISU2(0);
Var : macdVal(0), preMacdVal(0), macdSig(0),PreMacdsig(0),macdOsc(0),PreMacdOsc(0);
if (dayofweek(date) <= DayOfWeek(date[1]) and sdate > sdate[1]) then {
PreJISU1 = JISU1[1];
PreJISU2 = JISU2[1];
PreMacdVal = macdVal[1];
PreMacdsig = macdSig[1];
PreMacdOsc = macdOsc[1];
}
Ep1 = 2/(Period1+1);
EP2 = 2/(Period2+1);
EP3 = 2/(Period3+1);
JISU1 = C * Ep1 + PreJISU1 * (1-Ep1);
JISU2 = C * Ep2 + PreJISU2 * (1-Ep2);
macdVal = JISU1 - JISU2;
macdSig = macdVal * Ep3 + PreMacdSig * (1-Ep3);
macdOsc = macdval-macdsig;
plot1(MACdOSC);
PlotBaseLine1(0);
즐거운 하루되세요
> 으쌰 님이 쓴 글입니다.
> 제목 : 재질문
> 작성해주신 시스템 식을 적용해보니
결과값이 의도와는 다르게 나옵니다.
직전값과 비교를 원하는 macd오실레이터 값은 [일]봉이 아닌 [주]봉값들의 비교 입니다.
실제론 주봉상 오실레이터 값이 현재봉값이 더 커도 신호가 나옵니다.
안녕하세요
예스스탁입니다.
Input : Period1(12), Period2(26), Period3(9);
Var : Ep1(0), EP2(0), EP3(0), JISU1(0), JISU2(0), PreJISU1(0), PreJISU2(0);
Var : macdVal(0), preMacdVal(0), macdSig(0),macdOsc(0),PreMacdOsc(0);
#주봉 MACD
if (dayofweek(date) <= DayOfWeek(date[1]) and sdate > sdate[1]) then {
PreJISU1 = JISU1[1];
PreJISU2 = JISU2[1];
PreMacdVal = macdVal[1];
}
Ep1 = 2/(Period1+1);
EP2 = 2/(Period2+1);
EP3 = 2/(Period3+1);
JISU1 = C * Ep1 + PreJISU1 * (1-Ep1);
JISU2 = C * Ep2 + PreJISU2 * (1-Ep2);
macdVal = JISU1 - JISU2;
if crossup(ma(c,5),ma(c,20)) and macdVal > premacdVal Then
buy();
즐거운 하루되세요
> 으쌰 님이 쓴 글입니다.
> 제목 : 수식문의
> [일]봉 주기 매매식입니다
5일 이평선이 20일 이평선을 골든크로스 하면 매수하는 시스템 식에
동일종목 타주기 지표값의 다음 조건을 삽입하고 싶습니다.
단 매수하는 시점에 [주]봉 주기상 macd 오실레이터 값이 직전값보다 작아야 한다.
시스템식 부탁드립니다.
다음글
이전글