커뮤니티

문의드립니다~

프로필 이미지
겐지
2017-03-11 06:15:05
252
글번호 107687
답변완료

첨부 이미지

input : 분주기(30),P(5),분주기1(15); var : S1(0),D1(0),TM(0),TF(0); var : cnt(0),sum(0),mav(0),tf1(0); Array : CC[100](0),OO[100](0),HH[100](0),LL[100](0),C1[100](0); if (sdate != sdate[1] and stime >= 100000) or (sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) Then{ S1 = TimeToMinutes(100000); D1 = sdate; } if D1 > 0 then{ if sdate == D1 Then TM = TimeToMinutes(stime)-S1; Else TM = TimeToMinutes(stime)+1440-S1; TF = TM%분주기; if (sdate != sdate[1] and stime >= 100000) or (sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or (Sdate == sdate[1] and TF < TF[1]) Then{ OO[0] = o; for cnt = 1 to 99{ OO[cnt] = OO[cnt-1][1]; HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; CC[cnt] = CC[cnt-1][1]; } } if H > HH[0] Then HH[0] = H; if L < LL[0] Then LL[0] = L; CC[0] = C; TF1 = TM%분주기1; if (sdate != sdate[1] and stime >= 100000) or (sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or (Sdate == sdate[1] and TF1 < TF1[1]) Then{ for cnt = 1 to 99{ C1[cnt] = C1[cnt-1][1]; } } C1[0] = C; plot1(CC[1]); } 1. 위식을 항생에서 사용중인데요~ S1 = TimeToMinutes(stime); 여기부분에서 stime를 100000로 바꿔서 적용하니깐 전일밤12시부분이 표시가 안됩니다. 2. 그리고 stime그대로 두니깐 cc[1]로 적용했을때에 10시15분시작가격을 인지를 못하네요 예를들어서 10시15분가격 아래에서 5일선과20일선데드크로스시에 매도한다는 수식을 넣었을때에 10시15분가격을 cc[1]로 적용해서 조건을 넣으면 적용이 안됩니다. 10시45분부터 cc[1]로 적용이 됩니다. 3. C1[1]!=cc[1] 이식을 적용할때에 30분시간의가격과 15분시간의가격이 똑같이 일치할때가 있더라구요. 서로가 같지않다를 표현하고 싶은데 위 식을 어떻게 표현해야 될까요 C1[1]의 시간을 저장하고 cc[1]의 시간을 저장해서 두개가 같지않다를 나타낼 수 있었으면 합니다. input : Left(3),Right(3),P1(5),P2(20); var : T(0),Shcnt(0),SLcnt(0); var : mav0a(0),mav1a(0),mav2a(0),H1(0),H2(0),H3(0),H4(0), L1(0),L2(0),L3(0),L4(0); var : tic20(0), tic120(0); mav0a = ma(c,3); mav1a = ma(c,5); mav2a = ma(c,20); tic20 = ma(c,20); tic120 = ma(c,120); if stime >= 160000 or stime < 050000 Then{ if SwingHigh(1,mav1a,Left,Right,Left+Right+1) != -1 Then{ H1 = mav1a[right]; H2 = H1[1]; H3 = mav2a[right]; H4 = H3[1]; if MarketPosition == 1 and (H1 <= H2 or (H1-PriceScale*3) <= H2) and H2 > 0 Then ExitLong("bx"); if H1<H3 and H2>H4 and tic20<tic120 and c<tic20 Then{ sell("s"); } } if SwingLow(1,mav1a,Left,Right,Left+Right+1) != -1 Then{ L1 = mav1a[right]; L2 = L1[1]; L3 = mav2a[right]; L4 = L3[1]; if MarketPosition == -1 and L1 >= L2 and L2 > 0 Then ExitShort("sx"); if L1>L3 and L2<L4 and tic20>tic120 and c>tic20 Then{ Buy("b"); } } } 4.위에 쌍봉쌍바닥식을 만들어봤는데요 어려워서 문의드립니다; 쌍바닥은 최근바닥이 최근바닥형성시점의 20일선과 60일선위에있어야하고 최근바닥이전바닥은 최근바닥이전형성시점의 20일선과60일선아래에 있어야 합니다. 매도는 그 반대이구요.~ 최근바닥형성시점의 20일선과 60일선가격을 어떻게 표현해야될지 그리고 최근바닥이전에 형성되었던 바닥시점의 20일선과 60일선가격을 어떻게 표현해야될지 어렵네요~
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2017-03-13 15:06:38

안녕하세요 예스스탁입니다. 1,2,3 처리한 식입니다. CC는 지정한 주기의 종가입니다. CC[0]이 현재주기,CC[1]은 직전주기입니다. stime으로 지정할 경우 CC[1]에 10시15분 값이 저장되는 것은 당연히 10시 45분 부터 입니다. input : 분주기(30),P(5),분주기1(15); var : S1(0),D1(0),TM(0),TF(0); var : cnt(0),sum(0),mav(0),tf1(0); Array : CC[100](0),OO[100](0),HH[100](0),LL[100](0),TT[100](0); Array : C1[100](0),T1[100](0); if (sdate != sdate[1] and stime >= 100000) or (sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) Then{ S1 = TimeToMinutes(100000); D1 = sdate; } if D1 > 0 then{ if sdate == D1 Then TM = TimeToMinutes(stime)-S1; Else TM = TimeToMinutes(stime)+1440-S1; TF = TM%분주기; if (sdate != sdate[1] and stime >= 100000) or (sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or (TF < TF[1]) Then{ OO[0] = o; HH[0] = H; LL[0] = L; TT[0] = stime; for cnt = 1 to 99{ OO[cnt] = OO[cnt-1][1]; HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; CC[cnt] = CC[cnt-1][1]; TT[cnt] = TT[cnt-1][1]; } } if H > HH[0] Then HH[0] = H; if L < LL[0] Then LL[0] = L; CC[0] = C; TF1 = TM%분주기1; if (sdate != sdate[1] and stime >= 100000) or (sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or (TF1 < TF1[1]) Then{ T1[cnt] = stime; for cnt = 1 to 99{ C1[cnt] = C1[cnt-1][1]; T1[cnt] = T1[cnt-1][1]; } } C1[0] = C; plot2(C1[1]); } 4 주석 참고하시기 바랍니다. input : Left(3),Right(3); var : T(0),Shcnt(0),SLcnt(0); var : mav3(0),mav5(0),mav20(0),mav60(0), mav120(0); var : H11(0),H12(0),H21(0),H22(0),H31(0),H32(0); var : L11(0),L12(0),L21(0),L22(0),L31(0),L32(0); mav3 = ma(c,3); mav5 = ma(c,5); mav20 = ma(c,20); mav60 = ma(c,60); mav120 = ma(c,120); if stime >= 160000 or stime < 050000 Then{ #고점발생 if SwingHigh(1,mav5,Left,Right,Left+Right+1) != -1 Then{ #최근 고점 H11 = mav5[right]; #직전 고점 H12 = H11[1]; #최근 고점시점의 20이평 H21 = mav20[right]; #직전 고점시점의 20이평 H22 = H21[1]; #최근 고점시점의 60이평 H31 = mav60[right]; #직전 고점시점의 20이평 H32 = H31[1]; if MarketPosition == 1 and (H11 <= H12 or (H11-PriceScale*3) <= H12) and H12 > 0 Then ExitLong("bx"); if H11 < H21 and H11 < H31 and H12 > H22 and H12 > H32 Then{ sell("s"); } } #저점발생 if SwingLow(1,mav5,Left,Right,Left+Right+1) != -1 Then{ #최근 저점 L11 = mav5[right]; #직전 저점 L12 = L11[1]; #최근 저점시점의 20이평 L21 = mav20[right]; #직전 저점시점의 20이평 L22 = L21[1]; #최근 저점시점의 60이평 L31 = mav60[right]; #직전 저점시점의 20이평 L32 = L31[1]; if MarketPosition == -1 and L11 >= L12 and L12 > 0 Then ExitShort("sx"); if L11 > L21 and L11 > L31 and L12 < L22 and L12 < L32 Then{ Buy("b"); } } } 즐거운 하루되세요 > 겐지 님이 쓴 글입니다. > 제목 : 문의드립니다~ > input : 분주기(30),P(5),분주기1(15); var : S1(0),D1(0),TM(0),TF(0); var : cnt(0),sum(0),mav(0),tf1(0); Array : CC[100](0),OO[100](0),HH[100](0),LL[100](0),C1[100](0); if (sdate != sdate[1] and stime >= 100000) or (sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) Then{ S1 = TimeToMinutes(100000); D1 = sdate; } if D1 > 0 then{ if sdate == D1 Then TM = TimeToMinutes(stime)-S1; Else TM = TimeToMinutes(stime)+1440-S1; TF = TM%분주기; if (sdate != sdate[1] and stime >= 100000) or (sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or (Sdate == sdate[1] and TF < TF[1]) Then{ OO[0] = o; for cnt = 1 to 99{ OO[cnt] = OO[cnt-1][1]; HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; CC[cnt] = CC[cnt-1][1]; } } if H > HH[0] Then HH[0] = H; if L < LL[0] Then LL[0] = L; CC[0] = C; TF1 = TM%분주기1; if (sdate != sdate[1] and stime >= 100000) or (sdate == sdate[1] and (Stime == 100000 or (stime > 100000 and stime[1] < 100000))) or (Sdate == sdate[1] and TF1 < TF1[1]) Then{ for cnt = 1 to 99{ C1[cnt] = C1[cnt-1][1]; } } C1[0] = C; plot1(CC[1]); } 1. 위식을 항생에서 사용중인데요~ S1 = TimeToMinutes(stime); 여기부분에서 stime를 100000로 바꿔서 적용하니깐 전일밤12시부분이 표시가 안됩니다. 2. 그리고 stime그대로 두니깐 cc[1]로 적용했을때에 10시15분시작가격을 인지를 못하네요 예를들어서 10시15분가격 아래에서 5일선과20일선데드크로스시에 매도한다는 수식을 넣었을때에 10시15분가격을 cc[1]로 적용해서 조건을 넣으면 적용이 안됩니다. 10시45분부터 cc[1]로 적용이 됩니다. 3. C1[1]!=cc[1] 이식을 적용할때에 30분시간의가격과 15분시간의가격이 똑같이 일치할때가 있더라구요. 서로가 같지않다를 표현하고 싶은데 위 식을 어떻게 표현해야 될까요 C1[1]의 시간을 저장하고 cc[1]의 시간을 저장해서 두개가 같지않다를 나타낼 수 있었으면 합니다. input : Left(3),Right(3),P1(5),P2(20); var : T(0),Shcnt(0),SLcnt(0); var : mav0a(0),mav1a(0),mav2a(0),H1(0),H2(0),H3(0),H4(0), L1(0),L2(0),L3(0),L4(0); var : tic20(0), tic120(0); mav0a = ma(c,3); mav1a = ma(c,5); mav2a = ma(c,20); tic20 = ma(c,20); tic120 = ma(c,120); if stime >= 160000 or stime < 050000 Then{ if SwingHigh(1,mav1a,Left,Right,Left+Right+1) != -1 Then{ H1 = mav1a[right]; H2 = H1[1]; H3 = mav2a[right]; H4 = H3[1]; if MarketPosition == 1 and (H1 <= H2 or (H1-PriceScale*3) <= H2) and H2 > 0 Then ExitLong("bx"); if H1<H3 and H2>H4 and tic20<tic120 and c<tic20 Then{ sell("s"); } } if SwingLow(1,mav1a,Left,Right,Left+Right+1) != -1 Then{ L1 = mav1a[right]; L2 = L1[1]; L3 = mav2a[right]; L4 = L3[1]; if MarketPosition == -1 and L1 >= L2 and L2 > 0 Then ExitShort("sx"); if L1>L3 and L2<L4 and tic20>tic120 and c>tic20 Then{ Buy("b"); } } } 4.위에 쌍봉쌍바닥식을 만들어봤는데요 어려워서 문의드립니다; 쌍바닥은 최근바닥이 최근바닥형성시점의 20일선과 60일선위에있어야하고 최근바닥이전바닥은 최근바닥이전형성시점의 20일선과60일선아래에 있어야 합니다. 매도는 그 반대이구요.~ 최근바닥형성시점의 20일선과 60일선가격을 어떻게 표현해야될지 그리고 최근바닥이전에 형성되었던 바닥시점의 20일선과 60일선가격을 어떻게 표현해야될지 어렵네요~