커뮤니티

타주기 오류수정

프로필 이미지
조민철
2014-10-01 08:44:56
154
글번호 78971
답변완료
항상감사드립니다 아래 타주기 시스템식의 오류를 수정해주시기 바랍니다 주챠트:200틱 타주기:1분(기하이동평균적용) 시스템식에서 주챠트는 검정된 식인데 타주기챠트에 36기하이동평균을 적용하고싶습니다 그런데 생각되로 되질않네요(주챠트에 적용된식으로만 신호가나옵니다/타주기챠트에 는 기하이평 36고가,36저가선을 적용해서 수식을 만들고 싶습니다 ###################### ### 기하이동평균선 ### ###################### input : P1(36),P2(72); var : Hi1(0,data1),LL1(0,data1),CC1(0,data1),cnt(0,data1); var : Hma11(0,data1),Lma11(0,data1),Cma11(0,data1); var : Hma12(0,data1),Lma12(0,data1),Cma12(0,data1); var : Hi2(0,data2),LL2(0,data2),CC2(0,data2); var : Hma21(0,data2),Lma21(0,data2),Cma21(0,data2); var : Hma22(0,data2),Lma22(0,data2),Cma22(0,data2); ########### ## data1 ## ########### Hi1 = data1(Log(H)); LL1 = data1(Log(L)); CC1 = data1(Log(C)); Hma11 = 0; Lma11 = 0; Cma11 = 0; for cnt = 0 to P1-1 begin Hma11 = Hma11 + HI1[cnt]; Lma11 = Lma11 + LL1[cnt]; Cma11 = Cma11 + CC1[cnt]; end; Hma11 = 2.71828182845904^(Hma11/P1); #Hma1 36 기하이평 고가# Lma11 = 2.71828182845904^(Lma11/P1); #Lma1 36 기하이평 저가# Cma11 = 2.71828182845904^(Cma11/P1); #Cma1 36 기하이평 종가# Hma12 = 0; Lma12 = 0; Cma12 = 0; for cnt = 0 to P2-1 begin Hma12 = Hma12 + HI1[cnt]; Lma12 = Lma12 + LL1[cnt]; Cma12 = Cma12 + CC1[cnt]; end; Hma12 = 2.71828182845904^(Hma12/P2); #Hma2 72 기하이평 고가# Lma12 = 2.71828182845904^(Lma12/P2); #Lma2 72 기하이평 저가# Cma12 = 2.71828182845904^(Cma12/P2); #Cma2 72 기하이평 종가# ########### ## data2 ## ########### Hi2 = data2(Log(H)); LL2 = data2(Log(L)); CC2 = data2(Log(C)); Hma21 = 0; Lma21 = 0; Cma21 = 0; for cnt = 0 to P1-1 begin Hma21 = Hma21 + HI2[cnt]; Lma21 = Lma21 + LL2[cnt]; Cma21 = Cma21 + CC2[cnt]; end; Hma21 = 2.71828182845904^(Hma21/P1); #Hma1 36 기하이평 고가# Lma21 = 2.71828182845904^(Lma21/P1); #Lma1 36 기하이평 저가# Cma21 = 2.71828182845904^(Cma21/P1); #Cma1 36 기하이평 종가# Hma22 = 0; Lma22 = 0; Cma22 = 0; for cnt = 0 to P2-1 begin Hma22 = Hma22 + HI2[cnt]; Lma22 = Lma22 + LL2[cnt]; Cma22 = Cma22 + CC2[cnt]; end; Hma22 = 2.71828182845904^(Hma22/P2); #Hma2 72 기하이평 고가# Lma22 = 2.71828182845904^(Lma22/P2); #Lma2 72 기하이평 저가# Cma22 = 2.71828182845904^(Cma22/P2); #Cma2 72 기하이평 종가# ###시스템식### if V10 == 1 and data1(c)>선행1[25] and var13==1 and macdv1>macds1 and upAroon1 > DnAroon1 and c>Hma21 Then buy("B1"); if V10 == -1 and data1(c)<선행1[25] and var13==-1 and macdv1<macds1 and upAroon1 < DnAroon1 And c<Lma21 Then sell("S1");
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2014-10-01 11:48:40

안녕하세요 예스스탁입니다. 현재 수식상의 주종목과 타주기식은 모두 맞게 작성이 되어 있습니다. 확인해 보니 값도 정확히 리턴됩니다. Hma21이 data2 36고가기하이평 Lma21이 data2 36저가기하이평이므로 참조데이터의 값과 비교시에 data2(c)을 사용하시기 바랍니다. 올려주신 식 내용에서는 위 변수가 주종목의 종가와 비교하게 되어 있는 부분을 제외하고는 특별한 문제가 없습니다. 주종목봉 완성시 최근 완성되어 있는 참조봉의 값을 보므로 data2(c)와 비교하시면 됩니다. if V10 == 1 and data1(c)>선행1[25] and var13==1 and macdv1>macds1 and upAroon1 > DnAroon1 and data2(c)>Hma21 Then buy("B1"); if V10 == -1 and data1(c)<선행1[25] and var13==-1 and macdv1<macds1 and upAroon1 < DnAroon1 And data2(c) <Lma21 Then sell("S1"); 즐거운 하루되세요 > 조민철 님이 쓴 글입니다. > 제목 : 타주기 오류수정 > 항상감사드립니다 아래 타주기 시스템식의 오류를 수정해주시기 바랍니다 주챠트:200틱 타주기:1분(기하이동평균적용) 시스템식에서 주챠트는 검정된 식인데 타주기챠트에 36기하이동평균을 적용하고싶습니다 그런데 생각되로 되질않네요(주챠트에 적용된식으로만 신호가나옵니다/타주기챠트에 는 기하이평 36고가,36저가선을 적용해서 수식을 만들고 싶습니다 ###################### ### 기하이동평균선 ### ###################### input : P1(36),P2(72); var : Hi1(0,data1),LL1(0,data1),CC1(0,data1),cnt(0,data1); var : Hma11(0,data1),Lma11(0,data1),Cma11(0,data1); var : Hma12(0,data1),Lma12(0,data1),Cma12(0,data1); var : Hi2(0,data2),LL2(0,data2),CC2(0,data2); var : Hma21(0,data2),Lma21(0,data2),Cma21(0,data2); var : Hma22(0,data2),Lma22(0,data2),Cma22(0,data2); ########### ## data1 ## ########### Hi1 = data1(Log(H)); LL1 = data1(Log(L)); CC1 = data1(Log(C)); Hma11 = 0; Lma11 = 0; Cma11 = 0; for cnt = 0 to P1-1 begin Hma11 = Hma11 + HI1[cnt]; Lma11 = Lma11 + LL1[cnt]; Cma11 = Cma11 + CC1[cnt]; end; Hma11 = 2.71828182845904^(Hma11/P1); #Hma1 36 기하이평 고가# Lma11 = 2.71828182845904^(Lma11/P1); #Lma1 36 기하이평 저가# Cma11 = 2.71828182845904^(Cma11/P1); #Cma1 36 기하이평 종가# Hma12 = 0; Lma12 = 0; Cma12 = 0; for cnt = 0 to P2-1 begin Hma12 = Hma12 + HI1[cnt]; Lma12 = Lma12 + LL1[cnt]; Cma12 = Cma12 + CC1[cnt]; end; Hma12 = 2.71828182845904^(Hma12/P2); #Hma2 72 기하이평 고가# Lma12 = 2.71828182845904^(Lma12/P2); #Lma2 72 기하이평 저가# Cma12 = 2.71828182845904^(Cma12/P2); #Cma2 72 기하이평 종가# ########### ## data2 ## ########### Hi2 = data2(Log(H)); LL2 = data2(Log(L)); CC2 = data2(Log(C)); Hma21 = 0; Lma21 = 0; Cma21 = 0; for cnt = 0 to P1-1 begin Hma21 = Hma21 + HI2[cnt]; Lma21 = Lma21 + LL2[cnt]; Cma21 = Cma21 + CC2[cnt]; end; Hma21 = 2.71828182845904^(Hma21/P1); #Hma1 36 기하이평 고가# Lma21 = 2.71828182845904^(Lma21/P1); #Lma1 36 기하이평 저가# Cma21 = 2.71828182845904^(Cma21/P1); #Cma1 36 기하이평 종가# Hma22 = 0; Lma22 = 0; Cma22 = 0; for cnt = 0 to P2-1 begin Hma22 = Hma22 + HI2[cnt]; Lma22 = Lma22 + LL2[cnt]; Cma22 = Cma22 + CC2[cnt]; end; Hma22 = 2.71828182845904^(Hma22/P2); #Hma2 72 기하이평 고가# Lma22 = 2.71828182845904^(Lma22/P2); #Lma2 72 기하이평 저가# Cma22 = 2.71828182845904^(Cma22/P2); #Cma2 72 기하이평 종가# ###시스템식### if V10 == 1 and data1(c)>선행1[25] and var13==1 and macdv1>macds1 and upAroon1 > DnAroon1 and c>Hma21 Then buy("B1"); if V10 == -1 and data1(c)<선행1[25] and var13==-1 and macdv1<macds1 and upAroon1 < DnAroon1 And c<Lma21 Then sell("S1");