커뮤니티

문의드립니다.

프로필 이미지
깜피
2021-03-30 07:20:36
1213
글번호 147499
답변완료

첨부 이미지

안녕하세요. 71655번 관련해서 수식 변경 문의드립니다. 최초에 중간값 이상에서 3일 저가 지지해야한 매수 가능했던 부분 및 매수가 변경 로직 등을 수정하고 싶습니다. 붙임 그림 파일이 가격이 맞는 건 아닌데 패턴을 봐주시면 될 것 같습니다. 많은 도움 주셔서 항상 감사드립니다. 좋은 하루 보내세요. 1. 조건 만족봉 이후 고가봉 갱신 시 각종 값을 세팅하는 고가 변경 (기준봉 조건을 만족하면 기준봉을 다시 세팅하고, 단순히 고가만 갱신할 경우에는 고가값만 변경) 매수 변경 2. 중간 값(최초 E1) 이상에서 3일 저가 지지하면 최초 E1에서 매수 2-1. 최초 3일저가 지지가 중간 값(최초 E1) 이하에서 나오면, 3일지지 저가에 오면 매수 매수 변경2(1~2일 내에 반등 기준 충족하면 3일기준 만족한 것으로 봄. 반등 기준을 충족하여 매수가격을 내려도 최초 E1보다 높으면 E1에서 매수) 3. Diff*0.1 반등이 나오면 (반등저가 - Diff*0.1) 매수가격 하향(Diff*0.1씩 E2~E5도 하향) 3-1. 가격하락하여 다음 매수가격이 오기 전에 다시 Diff*0.1이상 반등하면 (반등저가 - Diff*0.1) 매수가격 하향(Diff*0.1씩 E2~E5도 하향) 4.매수 회차별 비중을 변경할 수 있게 변경. (1차에 백만원 매수 시, 2차 1백만원, 3차 2백만원 등 1차 매수 금액 대비 배수 적용)
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2021-03-30 14:13:07

안녕하세요 예스스탁입니다. input : 금액1(1000000),금액2(1000000),금액3(1000000),금액4(1000000),금액5(1000000); Var : Price_high_100(0), Price_low_100(0), Volume_high_100(0), Cond_index(0); var : diff(0),E1(0),E2(0),E3(0),E4(0),E5(0),LS(0),LL(0),LH(0),HH(0),L3(False); var : Entry1(false),Entry2(false),Entry3(false),Entry4(false),Entry5(false); Price_high_100 = highest(h,100); //고가 Price_low_100 = lowest(L,100); //저가 Volume_high_100 = Highest(V, 100); #조건충족봉 if M >= 10000000000 and Price_high_100 == h and H > Price_low_100 * 2 and Volume_high_100 == v then { HH = H; #봉번호 저장 Cond_index = Index; #폭저장 diff = HH-Price_low_100; #1~5차 진입가 및 손절가 E1 = (HH+Price_low_100)/2; E2 = E1-diff*0.1; E3 = E1-diff*0.2; E4 = E1-diff*0.3; E5 = E1-diff*0.4; LS = E1-diff*0.5; #각 진입 초기값 Entry1 = False; Entry2 = False; Entry3 = False; Entry4 = False; Entry5 = False; LL = L; LH = H; L3 = False; } Else #조건충족하지 않은 봉 { # Cond_index에 봉번호가 저장되어 있고 # 현재봉이 조건충족봉대비 100봉 이내일때 if Cond_index > 0 and Index < Cond_index+100 Then { #3일지지가 발생하지 않은상태에서 고가가 갱신되면 if L3 == False and H > HH Then { HH = H; #폭저장 diff = HH-Price_low_100; #1~5차 진입가 및 손절가 E1 = (HH+Price_low_100)/2; E2 = E1-diff*0.1; E3 = E1-diff*0.2; E4 = E1-diff*0.3; E5 = E1-diff*0.4; LS = E1-diff*0.5; #각 진입 초기값 Entry1 = False; Entry2 = False; Entry3 = False; Entry4 = False; Entry5 = False; LL = L; LH = H; } #조건만족봉 이후 최저가 if L < LL Then { LL = L; LH = H; } #최저가 이후 최고가 if H > LH Then LH = L; #3일지지가 발생하지 않은 상태에서 #조건만족봉 이후 최저가가 E1과 E1+diff*0.1사이이고 #최저가 이후 최고가가 최저가 대비 diff*0.1이상이면 #각 진입가를 폭의 5%만큼식 낮춤 if L3 == False and LL > E1 and LL < E1+diff*0.1 and LH >= LL+diff*0.1 Then { E1 = E1-diff*0.05; E2 = E2-diff*0.05; E3 = E3-diff*0.05; E4 = E4-diff*0.05; E5 = E5-diff*0.05; } #3일저가 지지가 발생 if L3 == False and Index >= Cond_index+3 and CountIf(L > L[1],3) == 3 Then { L3 = true; Entry1 = true; Entry2 = true; Entry3 = true; Entry4 = true; Entry5 = true; #3일지지가 E1 이하이면 #첫진입값이 3일지지저가 #이후 진입값은 diff*0.1씩 하향가격 if L < E1 Then { E1 = Lowest(L,3); E2 = E1-diff*0.1; E3 = E1-diff*0.2; E4 = E1-diff*0.3; E5 = E1-diff*0.4; LS = E1-diff*0.5; } Else #3일지지가 E1위이면 E1값 기준진입 { E1 = E1-diff*0.05; E2 = E2-diff*0.05; E3 = E3-diff*0.05; E4 = E4-diff*0.05; E5 = E5-diff*0.05; } } } } #조건만족후 100봉이내에 if Cond_index > 0 and Index >= Cond_index and Index < Cond_index+100 Then { #하락해 지정한 가격들 터치하면 매수 if entry1 == true and E1 > 0 and L > E1 Then Buy("b1",AtLimit,E1,Floor(금액1/C)); if entry2 == true and E2 > 0 and L > E2 Then Buy("b2",AtLimit,E2,Floor(금액2/C)); if entry3 == true and E3 > 0 and L > E3 Then Buy("b3",AtLimit,E3,Floor(금액3/C)); if entry4 == true and E4 > 0 and L > E4 Then Buy("b4",AtLimit,E4,Floor(금액4/C)); if entry5 == true and E5 > 0 and L > E5 Then Buy("b5",AtLimit,E5,Floor(금액5/C)); } #매수진입 후 #최근진입에 때라 청산설정 #각 진입은 조건만족후 한번 발생하면 다음조건만족까지 진입불가 if MarketPosition == 1 Then { if LatestEntryName(0) == "b1" Then { ExitLong("bx1",AtLimit,E1*1.10); entry1 = False; } if LatestEntryName(0) == "b2" Then { ExitLong("bx2",AtLimit,E1); entry2 = False; } if LatestEntryName(0) == "b3" Then { ExitLong("bx3",AtLimit,(E1+E2)/2); entry3 = False; } if LatestEntryName(0) == "b4" Then { ExitLong("bx4",AtLimit,E2); entry4 = False; } if LatestEntryName(0) == "b5" Then { ExitLong("bx5",AtLimit,(E2+E3)/2); entry5 = False; ExitLong("bl",AtStop,LS); } } 즐거운 하루되세요 > 깜피 님이 쓴 글입니다. > 제목 : 문의드립니다. > 안녕하세요. 71655번 관련해서 수식 변경 문의드립니다. 최초에 중간값 이상에서 3일 저가 지지해야한 매수 가능했던 부분 및 매수가 변경 로직 등을 수정하고 싶습니다. 붙임 그림 파일이 가격이 맞는 건 아닌데 패턴을 봐주시면 될 것 같습니다. 많은 도움 주셔서 항상 감사드립니다. 좋은 하루 보내세요. 1. 조건 만족봉 이후 고가봉 갱신 시 각종 값을 세팅하는 고가 변경 (기준봉 조건을 만족하면 기준봉을 다시 세팅하고, 단순히 고가만 갱신할 경우에는 고가값만 변경) 매수 변경 2. 중간 값(최초 E1) 이상에서 3일 저가 지지하면 최초 E1에서 매수 2-1. 최초 3일저가 지지가 중간 값(최초 E1) 이하에서 나오면, 3일지지 저가에 오면 매수 매수 변경2(1~2일 내에 반등 기준 충족하면 3일기준 만족한 것으로 봄. 반등 기준을 충족하여 매수가격을 내려도 최초 E1보다 높으면 E1에서 매수) 3. Diff*0.1 반등이 나오면 (반등저가 - Diff*0.1) 매수가격 하향(Diff*0.1씩 E2~E5도 하향) 3-1. 가격하락하여 다음 매수가격이 오기 전에 다시 Diff*0.1이상 반등하면 (반등저가 - Diff*0.1) 매수가격 하향(Diff*0.1씩 E2~E5도 하향) 4.매수 회차별 비중을 변경할 수 있게 변경. (1차에 백만원 매수 시, 2차 1백만원, 3차 2백만원 등 1차 매수 금액 대비 배수 적용)