커뮤니티

5분봉 dema100 이평을 100틱챠트에 표현

프로필 이미지
조민철
2015-06-10 00:37:54
126
글번호 86998
답변완료
항상감사드립니다 아래 지표조건식을 타주기챠트를 사용하지 않고 구현하고자 합니다 **** A_ 5분봉 dema100 이평을 100틱챠트에서 구현하기(고가,종가,저가 표시) 1. INPUTS: LENGTH1(5),LENGTH2(20),LENGTH3(60); VARS : DEMA1(0,data2),DEMA2(0,data2),DEMA3(0,data2); var : V1(0,data2),val1(0,data2); var : V2(0,data2),val2(0,data2); var : V3(0,data2),val3(0,data2); v1= data2(EMA(C,LENGTH1)); val1= data2(EMA(EMa(C,LENGTH1),LENGTH1)); v2= data2(EMA(C,LENGTH2)); val2= data2(EMA(EMa(C,LENGTH2),LENGTH2)); v3= data2(EMA(C,LENGTH3)); val3= data2(EMA(EMa(C,LENGTH3),LENGTH3)); DEMA1 = v1 * 2 - val1; DEMA2 = v2 * 2 - val2; DEMA3 = v3 * 2 - val3; PLOT1(DEMA1, "DEMA1"); PLOT2(DEMA2, "DEMA2"); PLOT3(DEMA3, "DEMA3"); **** B_ 5분봉 기하이평_100 이평을 100틱챠트에서 구현하기 input : P1(36),P2(100),P3(200); var : HH(0),LL(0),CC(0),cnt(0); var : Hma1(0),Lma1(0),Cma1(0); var : Hma2(0),Lma2(0),Cma2(0); var : Hma3(0),Lma3(0),Cma3(0); HH = Log(H); LL = Log(L); CC = Log(C); Hma1 = 0; Lma1 = 0; Cma1 = 0; for cnt = 0 to P1-1 begin Hma1 = Hma1 + HH[cnt]; Lma1 = Lma1 + LL[cnt]; Cma1 = Cma1 + CC[cnt]; end; Hma1 = 2.71828182845904^(Hma1/P1); Lma1 = 2.71828182845904^(Lma1/P1); Cma1 = 2.71828182845904^(Cma1/P1); Hma2 = 0; Lma2 = 0; Cma2 = 0; for cnt = 0 to P2-1 begin Hma2 = Hma2 + HH[cnt]; Lma2 = Lma2 + LL[cnt]; Cma2 = Cma2 + CC[cnt]; end; Hma2 = 2.71828182845904^(Hma2/P2); Lma2 = 2.71828182845904^(Lma2/P2); Cma2 = 2.71828182845904^(Cma2/P2); Hma3 = 0; Lma3 = 0; Cma3 = 0; for cnt = 0 to P3-1 begin Hma3 = Hma3 + HH[cnt]; Lma3 = Lma3 + LL[cnt]; Cma3 = Cma3 + CC[cnt]; end; Hma3 = 2.71828182845904^(Hma3/P3); Lma3 = 2.71828182845904^(Lma3/P3); Cma3 = 2.71828182845904^(Cma3/P3); plot1(Hma1,"단기고가",WHITE); plot2(Lma1,"단기저가",WHITE); plot3(Cma1,"단기종가",blue,def,1); plot4(Hma2,"중기고가",WHITE); plot5(Lma2,"중기저가",WHITE); plot6(Cma2,"중기종가",red,def,1); plot7(Hma3,"장기고가",WHITE); plot8(Lma3,"장기저가",WHITE); plot9(Cma3,"장기종가",black,def,2); 감사합니다.
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2015-06-10 11:39:28

안녕하세요 예스스탁입니다. 틱봉에서 분봉지표를 구현하므로 값이 정확치 않을수 있습니다. 지정한 기간을 충족할 만큼 데이터가 확보되지 않으면 값을 리턴하지 못합니다. 1. Input : Atime(5),Period(100); var : EP(0),Idx(0),TF(0); Var : CJISU(0), CJISU1(0); Var : HJISU(0), HJISU1(0); Var : LJISU(0), LJISU1(0); Var : aCJISU(0), aCJISU1(0); Var : aHJISU(0), aHJISU1(0); Var : aLJISU(0), aLJISU1(0); var : CDEMA(0),HDEMA(0),LDEMA(0),HH(0),LL(0); Ep = 2/(Period+1); TF = TimeToMinutes(stime)%Atime; if dayindex() == 0 or (TF < TF[1] and stime > stime[1]) Then{ idx = idx+1; HH = H; LL = L; CJISU1 = CJISU[1]; HJISU1 = HJISU[1]; LJISU1 = LJISU[1]; aCJISU1 = aCJISU[1]; aHJISU1 = aHJISU[1]; aLJISU1 = aLJISU[1]; } if H > HH Then HH = H; if L < LL Then LL = L; if idx <= 1 then { CJISU = C; HJISU = HH; LJISU = LL; } else{ CJISU = C * EP + CJISU1 * (1-EP); HJISU = HH * EP + HJISU1 * (1-EP); LJISU = LL * EP + LJISU1 * (1-EP); } if idx <= 2 then { aCJISU = CJISU; aHJISU = HJISU; aLJISU = LJISU; } else{ aCJISU = CJISU * EP + aCJISU1 * (1-EP); aHJISU = HJISU * EP + aHJISU1 * (1-EP); aLJISU = LJISU * EP + aLJISU1 * (1-EP); } CDEMA = CJISU * 2 - aCJISU; HDEMA = HJISU * 2 - aHJISU; LDEMA = LJISU * 2 - aLJISU; plot1(CDEMA); plot2(HDEMA); plot3(LDEMA); 2. Input : Atime(5),P1(36),P2(100),P3(200); var : TF(0),Hv(0),Lv(0),cnt(0); Array : HH[100](0),LL[100](0),CC[100](0); var : Hma1(0),Lma1(0),Cma1(0); var : Hma2(0),Lma2(0),Cma2(0); var : Hma3(0),Lma3(0),Cma3(0); TF = TimeToMinutes(stime)%Atime; if dayindex() == 0 or (TF < TF[1] and stime > stime[1]) Then{ Hv = H; Lv = L; for cnt = 1 to 99{ HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; CC[cnt] = CC[cnt-1][1]; } } if H > Hv Then Hv = H; if L < Lv Then Lv = L; HH[0] = log(Hv); LL[0] = log(Lv); CC[0] = log(C); if HH[P1-1] > 0 then{ Hma1 = 0; Lma1 = 0; Cma1 = 0; for cnt = 0 to P1-1 begin Hma1 = Hma1 + HH[cnt]; Lma1 = Lma1 + LL[cnt]; Cma1 = Cma1 + CC[cnt]; end; Hma1 = 2.71828182845904^(Hma1/P1); Lma1 = 2.71828182845904^(Lma1/P1); Cma1 = 2.71828182845904^(Cma1/P1); plot1(Hma1,"단기고가",WHITE); plot2(Lma1,"단기저가",WHITE); plot3(Cma1,"단기종가",blue,def,1); } if HH[P2-1] > 0 then{ Hma2 = 0; Lma2 = 0; Cma2 = 0; for cnt = 0 to P2-1 begin Hma2 = Hma2 + HH[cnt]; Lma2 = Lma2 + LL[cnt]; Cma2 = Cma2 + CC[cnt]; end; Hma2 = 2.71828182845904^(Hma2/P2); Lma2 = 2.71828182845904^(Lma2/P2); Cma2 = 2.71828182845904^(Cma2/P2); plot4(Hma2,"중기고가",WHITE); plot5(Lma2,"중기저가",WHITE); plot6(Cma2,"중기종가",red,def,1); } if HH[P3-1] > 0 then{ Hma3 = 0; Lma3 = 0; Cma3 = 0; for cnt = 0 to P3-1 begin Hma3 = Hma3 + HH[cnt]; Lma3 = Lma3 + LL[cnt]; Cma3 = Cma3 + CC[cnt]; end; Hma3 = 2.71828182845904^(Hma3/P3); Lma3 = 2.71828182845904^(Lma3/P3); Cma3 = 2.71828182845904^(Cma3/P3); plot7(Hma3,"장기고가",WHITE); plot8(Lma3,"장기저가",WHITE); plot9(Cma3,"장기종가",black,def,2); } 즐거운 하루되세요 > 조민철 님이 쓴 글입니다. > 제목 : 5분봉 dema100 이평을 100틱챠트에 표현 > 항상감사드립니다 아래 지표조건식을 타주기챠트를 사용하지 않고 구현하고자 합니다 **** A_ 5분봉 dema100 이평을 100틱챠트에서 구현하기(고가,종가,저가 표시) 1. INPUTS: LENGTH1(5),LENGTH2(20),LENGTH3(60); VARS : DEMA1(0,data2),DEMA2(0,data2),DEMA3(0,data2); var : V1(0,data2),val1(0,data2); var : V2(0,data2),val2(0,data2); var : V3(0,data2),val3(0,data2); v1= data2(EMA(C,LENGTH1)); val1= data2(EMA(EMa(C,LENGTH1),LENGTH1)); v2= data2(EMA(C,LENGTH2)); val2= data2(EMA(EMa(C,LENGTH2),LENGTH2)); v3= data2(EMA(C,LENGTH3)); val3= data2(EMA(EMa(C,LENGTH3),LENGTH3)); DEMA1 = v1 * 2 - val1; DEMA2 = v2 * 2 - val2; DEMA3 = v3 * 2 - val3; PLOT1(DEMA1, "DEMA1"); PLOT2(DEMA2, "DEMA2"); PLOT3(DEMA3, "DEMA3"); **** B_ 5분봉 기하이평_100 이평을 100틱챠트에서 구현하기 input : P1(36),P2(100),P3(200); var : HH(0),LL(0),CC(0),cnt(0); var : Hma1(0),Lma1(0),Cma1(0); var : Hma2(0),Lma2(0),Cma2(0); var : Hma3(0),Lma3(0),Cma3(0); HH = Log(H); LL = Log(L); CC = Log(C); Hma1 = 0; Lma1 = 0; Cma1 = 0; for cnt = 0 to P1-1 begin Hma1 = Hma1 + HH[cnt]; Lma1 = Lma1 + LL[cnt]; Cma1 = Cma1 + CC[cnt]; end; Hma1 = 2.71828182845904^(Hma1/P1); Lma1 = 2.71828182845904^(Lma1/P1); Cma1 = 2.71828182845904^(Cma1/P1); Hma2 = 0; Lma2 = 0; Cma2 = 0; for cnt = 0 to P2-1 begin Hma2 = Hma2 + HH[cnt]; Lma2 = Lma2 + LL[cnt]; Cma2 = Cma2 + CC[cnt]; end; Hma2 = 2.71828182845904^(Hma2/P2); Lma2 = 2.71828182845904^(Lma2/P2); Cma2 = 2.71828182845904^(Cma2/P2); Hma3 = 0; Lma3 = 0; Cma3 = 0; for cnt = 0 to P3-1 begin Hma3 = Hma3 + HH[cnt]; Lma3 = Lma3 + LL[cnt]; Cma3 = Cma3 + CC[cnt]; end; Hma3 = 2.71828182845904^(Hma3/P3); Lma3 = 2.71828182845904^(Lma3/P3); Cma3 = 2.71828182845904^(Cma3/P3); plot1(Hma1,"단기고가",WHITE); plot2(Lma1,"단기저가",WHITE); plot3(Cma1,"단기종가",blue,def,1); plot4(Hma2,"중기고가",WHITE); plot5(Lma2,"중기저가",WHITE); plot6(Cma2,"중기종가",red,def,1); plot7(Hma3,"장기고가",WHITE); plot8(Lma3,"장기저가",WHITE); plot9(Cma3,"장기종가",black,def,2); 감사합니다.