커뮤니티

기하이평 타주기 시스템식

프로필 이미지
조민철
2014-09-12 06:25:46
133
글번호 78462
답변완료
항상감사드립니다 아래 기하이평식을 이용해서 시스템식을 작성하고자 합니다 1.***기하이평식*** input : P1(5),P2(10),P3(20); var : HI(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 + HI[cnt]; Lma1 = Lma1 + LL[cnt]; Cma1 = Cma1 + CC[cnt]; end; Hma1 = 2.71828182845904^(Hma1/P1); #Hma1 5 기하이평 고가# Lma1 = 2.71828182845904^(Lma1/P1); #Lma1 5 기하이평 저가# Cma1 = 2.71828182845904^(Cma1/P1); #Cma1 5 기하이평 종가# Hma2 = 0; Lma2 = 0; Cma2 = 0; for cnt = 0 to P2-1 begin Hma2 = Hma2 + HI[cnt]; Lma2 = Lma2 + LL[cnt]; Cma2 = Cma2 + CC[cnt]; end; Hma2 = 2.71828182845904^(Hma2/P2); #Hma2 10 기하이평 고가# Lma2 = 2.71828182845904^(Lma2/P2); #Lma2 10 기하이평 저가# Cma2 = 2.71828182845904^(Cma2/P2); #Cma2 10 기하이평 종가# Hma3 = 0; Lma3 = 0; Cma3 = 0; for cnt = 0 to P3-1 begin Hma3 = Hma3 + HI[cnt]; Lma3 = Lma3 + LL[cnt]; Cma3 = Cma3 + CC[cnt]; end; Hma3 = 2.71828182845904^(Hma3/P3); #Hma3 20 기하이평 고가# Lma3 = 2.71828182845904^(Lma3/P3); #Lma3 20 기하이평 저가# Cma3 = 2.71828182845904^(Cma3/P3); #Cma3 20 기하이평 종가# 1-1 c > Cma1 이면 v10= 1 , c < Cma1 이면 v10= -1 c > Cma2 이면 v10= 2 , c < Cma2 이면 v10= -2 c > Cma3 이면 v10= 3 , c < Cma3 이면 v10= -3 v10=1 and v10=2 and v10=3 then v20= 1 v10=-1 and v10=-2 and v10=-3 then v20= -1 주차트 v20=1 and 타주기챠트 v20=1 이면 매수 주차트 v20= -1 and 타주기챠트 v20= -1 이면 매도 1-2. 현재 매수상태이고 주챠트 c < Lma3 and 타주기챠트 c < Lma3 이면 매수청산(eB_1) 현재 매도상태이고 주챠트 c > Hma3 and 타주기챠트 c < Hma3 이면 매도청산(eS_1) 매수/매도청산후 같은 포지션으로 재진입금지 1-3.매수진입후 최대이익이 100틱이상이고 Lma3를 하향돌파하면 매수청산(eB_2) /매수청산후 재진입가능 매도진입후 최대이익이 100틱이상이고 Hma3 를 상향돌파하면 매도청산(eS_2)) /매도청산후 재진입가능 2-1 선행스팬2(52)를 이용하여 시스템식에 추가하고 싶습니다 ### 선행스팬2(52) 기준 ### var52 = (Highest(High, 52) + Lowest(Low, 52)) / 2; #선행스팬2_52# 주챠트에서 c > 선행스팬(52) 이면 v50=1 , c < 선행스팬(52) 이면 v50=-1 타주기챠트에서 c > 선행스팬(52) 이면 v50=2 , c < 선행스팬(52) 이면 v50=-2 이렇게 해서 주챠트와 타주기챠트에 삽입해서 시스템식을 만들고자 합니다 감사합니다
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2014-09-12 14:26:09

안녕하세요 예스스탁입니다. c > Cma1 이면 v10= 1 , c < Cma1 이면 v10= -1 c > Cma2 이면 v10= 2 , c < Cma2 이면 v10= -2 c > Cma3 이면 v10= 3 , c < Cma3 이면 v10= -3 변수에는 값이 하나만 저장이 됩니다. 위 내용이면 V10 (1,2,3,-1,-2,-3) 중 하나의 값만 저장이 되어 v10=1 and v10=2 and v10=3 then v20= 1 v10=-1 and v10=-2 and v10=-3 then v20= -1 위와 같은 조건은 성립이 될수 없습니다. 이평별로 변수 따로 지정했습니다. 선행스팬부분은 어떻게 매매식에 추가될지 알수 없어 수식에 계산값만 추가가 되어 있습니다. 내용 참고하셔서 진입식에 조건지정하시기 바랍니다. input : P1(5),P2(10),P3(20); 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 : Hma13(0,data1),Lma13(0,data1),Cma13(0,data1); var : V11(0,data1),V12(0,data1),V13(0,data1),V20(0,data1); var : Hi2(0,data2),LL2(0,data1),CC2(0,data2); var : Hma21(0,data2),Lma21(0,data2),Cma21(0,data2); var : Hma22(0,data2),Lma22(0,data2),Cma22(0,data2); var : Hma23(0,data2),Lma23(0,data2),Cma23(0,data2); var : V31(0,data1),V32(0,data1),V33(0,data1),V40(0,data1); var : Bcond(false,data1),Scond(false,data1); var : 선행1(0,data1),선행2(0,data2),V51(0,data1),V52(0,data2); #data1 Hi1 = data2(Log(H)); LL1 = data2(Log(L)); CC1 = data2(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 5 기하이평 고가# Lma11 = 2.71828182845904^(Lma11/P1); #Lma1 5 기하이평 저가# Cma11 = 2.71828182845904^(Cma11/P1); #Cma1 5 기하이평 종가# 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 10 기하이평 고가# Lma12 = 2.71828182845904^(Lma12/P2); #Lma2 10 기하이평 저가# Cma12 = 2.71828182845904^(Cma12/P2); #Cma2 10 기하이평 종가# Hma13 = 0; Lma13 = 0; Cma13 = 0; for cnt = 0 to P3-1 begin Hma13 = Hma13 + HI2[cnt]; Lma13 = Lma13 + LL2[cnt]; Cma13 = Cma13 + CC2[cnt]; end; Hma13 = 2.71828182845904^(Hma13/P3); #Hma3 20 기하이평 고가# Lma13 = 2.71828182845904^(Lma13/P3); #Lma3 20 기하이평 저가# Cma13 = 2.71828182845904^(Cma13/P3); #Cma3 20 기하이평 종가# #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 5 기하이평 고가# Lma21 = 2.71828182845904^(Lma21/P1); #Lma1 5 기하이평 저가# Cma21 = 2.71828182845904^(Cma21/P1); #Cma1 5 기하이평 종가# 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 10 기하이평 고가# Lma22 = 2.71828182845904^(Lma22/P2); #Lma2 10 기하이평 저가# Cma22 = 2.71828182845904^(Cma22/P2); #Cma2 10 기하이평 종가# Hma23 = 0; Lma23 = 0; Cma23 = 0; for cnt = 0 to P3-1 begin Hma23 = Hma23 + HI2[cnt]; Lma23 = Lma23 + LL2[cnt]; Cma23 = Cma23 + CC2[cnt]; end; Hma23 = 2.71828182845904^(Hma23/P3); #Hma3 20 기하이평 고가# Lma23 = 2.71828182845904^(Lma23/P3); #Lma3 20 기하이평 저가# Cma23 = 2.71828182845904^(Cma23/P3); #Cma3 20 기하이평 종가# if data1(c) > Cma11 Then v11 = 1; if data1(c) < Cma11 Then v11= -1; if data1(c) > Cma12 then v12 = 2; if data1(c) < Cma12 then v12 = -2; if data1(c) > Cma13 then v13 = 3; if data1(c) < Cma13 then v13 = -3; if v11 == 1 and v12 == 2 and v13 == 3 then v20 = 1; if v11 ==-1 and v12 == -2 and v13 == -3 then v20 = -1; if data2(c) > Cma21 Then v31 = 1; if data2(c) < Cma21 Then v32 = -1; if data2(c) > Cma22 then v33 = 2; if data2(c) < Cma22 then v31 = -2; if data2(c) > Cma23 then v32 = 3; if data2(c) < Cma23 then v33 = -3; if v31 == 1 and v32 == 2 and v33 == 3 then v40 = 1; if v31 ==-1 and v32 == -2 and v33 == -3 then v40 = -1; Bcond = MarketPosition == 0 and MarketPosition(1) == 1 and IsExitName("eB_1",1) == true; Scond = MarketPosition == 0 and MarketPosition(1) == -1 and IsExitName("eS_1",1) == true; #선행스팬 선행1 = data1((Highest(High, 52) + Lowest(Low, 52)) / 2); 선행2 = data2((Highest(High, 52) + Lowest(Low, 52)) / 2); if data1(C) > 선행1[25] Then v51 = 1; if data1(c) < 선행1[25] Then v51 = -1; if data2(C) > 선행2[25] Then v52 = 1; if data2(c) < 선행2[25] Then v52 = -1; if Bcond == false and v20 == 1 and v40 == 1 Then buy(); if Scond = false and v20 == -1 and v40 == -1 Then sell(); if MarketPosition == 1 Then{ if data1(c) < Lma13 and data2(c) < Lma23 Then exitlong("eB_1"); if highest(H,BarsSinceEntry) >= EntryPrice+PriceScale*100 and CrossDown(c,Lma13) Then ExitLong("eB_2"); } if MarketPosition == -1 Then{ if data1(c) > Hma13 and data2(c) > Hma23 Then ExitShort("eS_1"); if lowest(L,BarsSinceEntry) <= EntryPrice-PriceScale*100 and CrossUp(c,Hma13) Then ExitShort("eS_2"); } 즐거운 하루되세요 > 조민철 님이 쓴 글입니다. > 제목 : 기하이평 타주기 시스템식 > 항상감사드립니다 아래 기하이평식을 이용해서 시스템식을 작성하고자 합니다 1.***기하이평식*** input : P1(5),P2(10),P3(20); var : HI(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 + HI[cnt]; Lma1 = Lma1 + LL[cnt]; Cma1 = Cma1 + CC[cnt]; end; Hma1 = 2.71828182845904^(Hma1/P1); #Hma1 5 기하이평 고가# Lma1 = 2.71828182845904^(Lma1/P1); #Lma1 5 기하이평 저가# Cma1 = 2.71828182845904^(Cma1/P1); #Cma1 5 기하이평 종가# Hma2 = 0; Lma2 = 0; Cma2 = 0; for cnt = 0 to P2-1 begin Hma2 = Hma2 + HI[cnt]; Lma2 = Lma2 + LL[cnt]; Cma2 = Cma2 + CC[cnt]; end; Hma2 = 2.71828182845904^(Hma2/P2); #Hma2 10 기하이평 고가# Lma2 = 2.71828182845904^(Lma2/P2); #Lma2 10 기하이평 저가# Cma2 = 2.71828182845904^(Cma2/P2); #Cma2 10 기하이평 종가# Hma3 = 0; Lma3 = 0; Cma3 = 0; for cnt = 0 to P3-1 begin Hma3 = Hma3 + HI[cnt]; Lma3 = Lma3 + LL[cnt]; Cma3 = Cma3 + CC[cnt]; end; Hma3 = 2.71828182845904^(Hma3/P3); #Hma3 20 기하이평 고가# Lma3 = 2.71828182845904^(Lma3/P3); #Lma3 20 기하이평 저가# Cma3 = 2.71828182845904^(Cma3/P3); #Cma3 20 기하이평 종가# 1-1 c > Cma1 이면 v10= 1 , c < Cma1 이면 v10= -1 c > Cma2 이면 v10= 2 , c < Cma2 이면 v10= -2 c > Cma3 이면 v10= 3 , c < Cma3 이면 v10= -3 v10=1 and v10=2 and v10=3 then v20= 1 v10=-1 and v10=-2 and v10=-3 then v20= -1 주차트 v20=1 and 타주기챠트 v20=1 이면 매수 주차트 v20= -1 and 타주기챠트 v20= -1 이면 매도 1-2. 현재 매수상태이고 주챠트 c < Lma3 and 타주기챠트 c < Lma3 이면 매수청산(eB_1) 현재 매도상태이고 주챠트 c > Hma3 and 타주기챠트 c < Hma3 이면 매도청산(eS_1) 매수/매도청산후 같은 포지션으로 재진입금지 1-3.매수진입후 최대이익이 100틱이상이고 Lma3를 하향돌파하면 매수청산(eB_2) /매수청산후 재진입가능 매도진입후 최대이익이 100틱이상이고 Hma3 를 상향돌파하면 매도청산(eS_2)) /매도청산후 재진입가능 2-1 선행스팬2(52)를 이용하여 시스템식에 추가하고 싶습니다 ### 선행스팬2(52) 기준 ### var52 = (Highest(High, 52) + Lowest(Low, 52)) / 2; #선행스팬2_52# 주챠트에서 c > 선행스팬(52) 이면 v50=1 , c < 선행스팬(52) 이면 v50=-1 타주기챠트에서 c > 선행스팬(52) 이면 v50=2 , c < 선행스팬(52) 이면 v50=-2 이렇게 해서 주챠트와 타주기챠트에 삽입해서 시스템식을 만들고자 합니다 감사합니다