커뮤니티
수식 설명부탁합니다
2012-05-01 13:43:20
431
글번호 50672
Input : Period(12), sigPeriod(9),배수(3);
Var : Ep1(0), JISU1(0), DINDEX1(0), PreJISU1(0);
Var : Ep2(0), JISU2(0), PreJISU2(0),preTrixsig(0);
Var : Ep3(0), JISU3(0), PreJISU3(0),Trixsig(0),TRIXv(0);
Ep1 = 2/(Period+1);
Ep2 = 2/(sigPeriod+1);
var1 = dayindex%배수;
if index > 배수 and( dayindex == 0 or (var1 < var1[1] and stime > stime[1])) then {
DINDEX1= DINDEX1 + 1;
PreJISU1 = JISU1[1];
PreJISU2 = JISU2[1];
PreJISU3 = JISU3[1];
PreTrixsig = Trixsig[1];
}
if DINDEX1 < 1 then
JISU1 = c;
else
JISU1 = c * EP1 + PreJISU1 * (1-EP1);
if DINDEX1 < 2 then
JISU2 = JISU1 ;
else
JISU2 = JISU1 * EP1 + PreJISU2 * (1-EP1);
if DINDEX1 < 3 then
JISU3 = JISU2 ;
else
JISU3 = JISU2 * EP1 + PreJISU3 * (1-EP1);
if DINDEX1 > 3 then
TRIXv = (JISU3 - PreJISU3) / PreJISU3 * 100;
if DINDEX1 < 4 then
Trixsig = TRIXv ;
else
Trixsig = TRIXv * EP2 + PreTrixsig * (1-EP2);
If CrossUp(TRIXv,TRIXsig) Then
buy();
If CrossDown(TRIXv,TRIXsig) Then
Sell();
//Plot1(TRIXv,"TRIX");
//Plot2(Trixsig,"TRIX시그널");
//PlotBaseLine1(0,"기준선");
답변 1
예스스탁 예스스탁 답변
2012-05-02 13:23:56
안녕하세요
예스스탁입니다.
Input : Period(12), sigPeriod(9),배수(3);
Var : Ep1(0), JISU1(0), DINDEX1(0), PreJISU1(0);
Var : Ep2(0), JISU2(0), PreJISU2(0),preTrixsig(0);
Var : Ep3(0), JISU3(0), PreJISU3(0),Trixsig(0),TRIXv(0);
Ep1 = 2/(Period+1);#지수이평 평활계수(Trix계산용)
Ep2 = 2/(sigPeriod+1);#지수이평 평활계수(Trix 시그널용)
#당일봉을 3개씩묶어서 구분
var1 = dayindex%배수;
#당일 첫봉이거나 당일 3개묵음이 발생하면
if index > 배수 and( dayindex == 0 or (var1 < var1[1] and stime > stime[1])) then {
DINDEX1= DINDEX1 + 1;#횟수저장
PreJISU1 = JISU1[1];#이전일 마지막봉의 jisu1값
PreJISU2 = JISU2[1];#이전일 마지막봉의 jisu2값
PreJISU3 = JISU3[1];#이전일 마지막봉의 jisu3값
PreTrixsig = Trixsig[1];##이전일 마지막봉의 Trixsig값
}
# 한개이상 묶음이 발생하기 전에는 jisu1은 해당봉의 종가
if DINDEX1 < 1 then
JISU1 = c;
else#1개이상 묶음이 발생하면 jisu1은 현재종가*EP+직전묶음의 jisu1값에 *(1-EP1)
JISU1 = c * EP1 + PreJISU1 * (1-EP1);
# 두개이상 묶음이 발생하기 전에는 jisu2는 해당봉의 종가
if DINDEX1 < 2 then
JISU2 = JISU1 ;
else #2개이상 묶음이 발생하면 jisu2는 현재종가*EP+직전묶음의 jisu2값에 *(1-EP1)
JISU2 = JISU1 * EP1 + PreJISU2 * (1-EP1);
# 세개이상 묶음이 발생하기 전에는 jisu3은 해당봉의 종가
if DINDEX1 < 3 then
JISU3 = JISU2 ;
else #3개이상 묶음이 발생하면 jisu3은 현재종가*EP+직전묶음의 jisu3값에 *(1-EP1)
JISU3 = JISU2 * EP1 + PreJISU3 * (1-EP1);
# 3개이상 묵음이 발생하면 트릭스는 jisu3의 직전묶음대비율
if DINDEX1 >= 3 then
TRIXv = (JISU3 - PreJISU3) / PreJISU3 * 100;
# 네개이상 묶음이 발생하기 전에는 Trix시그널은 트릭스값
if DINDEX1 < 4 then
Trixsig = TRIXv ;
else#네개이상 묶음 발생후 트릭스 시그널은 현재트릭스값*EP+직전봉의 트릭스시그널*(1-EP)
Trixsig = TRIXv * EP2 + PreTrixsig * (1-EP2);
#트릭스가 트릭스시그널을 상향돌파하면 매수
If CrossUp(TRIXv,TRIXsig) Then
buy();
#트릭스가 트릭스시그널을 하향이탈하면 매도
If CrossDown(TRIXv,TRIXsig) Then
Sell();
//Plot1(TRIXv,"TRIX");
//Plot2(Trixsig,"TRIX시그널");
//PlotBaseLine1(0,"기준선");
즐거운 하루되세요
> 태조산 님이 쓴 글입니다.
> 제목 : 수식 설명부탁합니다
> Input : Period(12), sigPeriod(9),배수(3);
Var : Ep1(0), JISU1(0), DINDEX1(0), PreJISU1(0);
Var : Ep2(0), JISU2(0), PreJISU2(0),preTrixsig(0);
Var : Ep3(0), JISU3(0), PreJISU3(0),Trixsig(0),TRIXv(0);
Ep1 = 2/(Period+1);
Ep2 = 2/(sigPeriod+1);
var1 = dayindex%배수;
if index > 배수 and( dayindex == 0 or (var1 < var1[1] and stime > stime[1])) then {
DINDEX1= DINDEX1 + 1;
PreJISU1 = JISU1[1];
PreJISU2 = JISU2[1];
PreJISU3 = JISU3[1];
PreTrixsig = Trixsig[1];
}
if DINDEX1 < 1 then
JISU1 = c;
else
JISU1 = c * EP1 + PreJISU1 * (1-EP1);
if DINDEX1 < 2 then
JISU2 = JISU1 ;
else
JISU2 = JISU1 * EP1 + PreJISU2 * (1-EP1);
if DINDEX1 < 3 then
JISU3 = JISU2 ;
else
JISU3 = JISU2 * EP1 + PreJISU3 * (1-EP1);
if DINDEX1 > 3 then
TRIXv = (JISU3 - PreJISU3) / PreJISU3 * 100;
if DINDEX1 < 4 then
Trixsig = TRIXv ;
else
Trixsig = TRIXv * EP2 + PreTrixsig * (1-EP2);
If CrossUp(TRIXv,TRIXsig) Then
buy();
If CrossDown(TRIXv,TRIXsig) Then
Sell();
//Plot1(TRIXv,"TRIX");
//Plot2(Trixsig,"TRIX시그널");
//PlotBaseLine1(0,"기준선");
다음글
이전글