커뮤니티

수식 문의드립니다

프로필 이미지
니나노니
2015-03-05 05:45:36
217
글번호 83714
답변완료

첨부 이미지

안녕하세요. 종목검색 수식 중에 궁금한게 있어서 한번 더 질문드려요. 그림1에서 가장 최근봉의 시점에 있는 종목들을 찾는 종목검색 수식을 알고 싶습니다. 1)100봉이내에 한번이라도 480일선(빨간색)이 60볼린져밴드 하단(갈색선) 아래에 위치 했던적이 있는 종목 2)주가 < 480일선 3)두번째 동그라미에서처럼 스토케스틱 바닥(저점)이 높아지면서 골드크로스 나오는 종목 1)추가설명 당일의 조건만족만이 아니라 일정기간안에 한번이라도 조건이 만족하는 종목들을 찾는 수식을 알고싶습니다. 그림1의 가장 최근 봉에서처럼 현재는 480일선(빨간색)이 60볼린져밴드 하단보다 아래에 있지 않더라도 최근 100봉이내에 한번이라도 480일선이 볼린져밴드 하단보다 아래에 있었던 적이 있는 종목들 중에서 다른조건들을 추가해서 조건검색 수식을 만들고 싶습니다. 3)추가설명 그림 1에서 화살표들처럼 스토케스틱 저점이 높아지면서 골드크로스가 나오는 수식을 알고 싶습니다. 즉, 그림1에서 스토케스틱 첫번째 동그라미에서처럼 k가 20이하에서 d랑 골드크로스가 한번 나오고 두번째 동그라미에서처럼 k가 20이상에서 전 저점(첫번째동그라미의 최저저점)보다 높은 곳에서 d랑 골드크로스가 나오는 종목을 찾는 수식도 가능한가요. 가능하다면 알려주시면 감사하겠습니다. (종목검색에 기존에 있는 수식인 Stochastics_이중바닥이 그림1에서 화살표들 것처럼 저점이 높아지는 쌍바닥을 찾는 식이 맞나요 신호검색으로 나오는 종목들을 보니까 그림1과 같은 모양이 아닌 종목들이 검색되는 것 같아서요. Stochastics_이중바닥 수식이 이렇게 되있는데 정확히 해석이 안되네요..) Input : Period(12), Period1(5), Period2(5); value1 = StochasticsK(Period, Period1); value2 = StochasticsD(Period, Period1, Period2); If value2 > value2[1] Then value3 = 1; Else value3 = 0 ; If value1[1] < 20 Then value4 = 1; Else value4 = 0 ; If value1 > value1[1] && value1[1] <= value1[2] && value1 > value1[2] && value1[1] <= 50 && value1[1] >= value2[1] && accumN(value3,3)==3 && accumN(value4,20) >= 1 Then {AccumN(Num, Num) If C == C[1] Then value5 = 0.001 ; Else value5 = (C-C[1])/C[1]*100 ; } Else value5 = 0; Find(value5);
종목검색
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2015-03-05 10:49:43

안녕하세요 예스스탁입니다. 종목검색에 제공되는 최대 봉수는 500봉입니다. 480이평을 사용하고 특정조건이 100봉이내에 만족한적이 있고 또 종목검색조건이 최근 N개봉에 한번이상 나온적이 있는 내용을 결합하면 수식에서 사용하는 봉수가 500봉이 넘게 됩니다. 수식은 올려주신 내용으로 올려드립니다. 위 내용 감안하셔서 이평의 기간이나 조건만족봉 갯수등 500봉 넘지 않게 조절하셔야 합니다. 종목검색을 하실때도 속성에서 검색에 필요한 최소기간에 500으로 지정하고 검색하시기 바랍니다. 1. 검색조건이 현재봉 만족 input : maP(380),BBP(60),dv(2),sto1(12),sto2(5),sto3(5),N1(100); var : mav(0),bbdn(0),stok(0),stod(0); var : t(0),L1(0),L2(0); mav = ma(c,maP); BBdn = BollBandDown(BBP,dv); stok = StochasticsK(sto1,sto2); stod = StochasticsD(sto1,sto2,sto3); if crossup(stok,stod) Then{ T = 1; } if CrossDown(stok,stod) Then{ T = -1; L1 = stok; L2 = L1[1]; } if stok < L1 Then L1 = stok; if countif(var1<var2,N1) >= 1 And C < 480 and t == 1 and T[1] != 1 And L1 > L2 then find(1); 2, 검색조건이 최근 N개봉이내에 한번이상 만족 input : maP(380),BBP(60),dv(2),sto1(12),sto2(5),sto3(5),N1(100),N2(20); var : mav(0),bbdn(0),stok(0),stod(0); var : t(0),L1(0),L2(0); mav = ma(c,maP); BBdn = BollBandDown(BBP,dv); stok = StochasticsK(sto1,sto2); stod = StochasticsD(sto1,sto2,sto3); if crossup(stok,stod) Then{ T = 1; } if CrossDown(stok,stod) Then{ T = -1; L1 = stok; L2 = L1[1]; } if stok < L1 Then L1 = stok; if countif(var1<var2,N1) >= 1 And C < 480 and t == 1 and T[1] != 1 And L1 > L2 then Condition1 = true; Else Condition1 = false; if countif(Condition1,N2) >= 1 Then find(1); 3. 스토케스틱 쌍다닥 종목검색식 input : sto1(12),sto2(5),sto3(5); var : stok(0),stod(0); var : t(0),L1(0),L2(0); stok = StochasticsK(sto1,sto2); stod = StochasticsD(sto1,sto2,sto3); if crossup(stok,stod) Then{ T = 1; } if CrossDown(stok,stod) Then{ T = -1; L1 = stok; L2 = L1[1]; } if stok < L1 Then L1 = stok; if t == 1 and T[1] != 1 And L1 > L2 then find(1); 즐거운 하루되세요 > 니나노니 님이 쓴 글입니다. > 제목 : 수식 문의드립니다 > 안녕하세요. 종목검색 수식 중에 궁금한게 있어서 한번 더 질문드려요. 그림1에서 가장 최근봉의 시점에 있는 종목들을 찾는 종목검색 수식을 알고 싶습니다. 1)100봉이내에 한번이라도 480일선(빨간색)이 60볼린져밴드 하단(갈색선) 아래에 위치 했던적이 있는 종목 2)주가 < 480일선 3)두번째 동그라미에서처럼 스토케스틱 바닥(저점)이 높아지면서 골드크로스 나오는 종목 1)추가설명 당일의 조건만족만이 아니라 일정기간안에 한번이라도 조건이 만족하는 종목들을 찾는 수식을 알고싶습니다. 그림1의 가장 최근 봉에서처럼 현재는 480일선(빨간색)이 60볼린져밴드 하단보다 아래에 있지 않더라도 최근 100봉이내에 한번이라도 480일선이 볼린져밴드 하단보다 아래에 있었던 적이 있는 종목들 중에서 다른조건들을 추가해서 조건검색 수식을 만들고 싶습니다. 3)추가설명 그림 1에서 화살표들처럼 스토케스틱 저점이 높아지면서 골드크로스가 나오는 수식을 알고 싶습니다. 즉, 그림1에서 스토케스틱 첫번째 동그라미에서처럼 k가 20이하에서 d랑 골드크로스가 한번 나오고 두번째 동그라미에서처럼 k가 20이상에서 전 저점(첫번째동그라미의 최저저점)보다 높은 곳에서 d랑 골드크로스가 나오는 종목을 찾는 수식도 가능한가요. 가능하다면 알려주시면 감사하겠습니다. (종목검색에 기존에 있는 수식인 Stochastics_이중바닥이 그림1에서 화살표들 것처럼 저점이 높아지는 쌍바닥을 찾는 식이 맞나요 신호검색으로 나오는 종목들을 보니까 그림1과 같은 모양이 아닌 종목들이 검색되는 것 같아서요. Stochastics_이중바닥 수식이 이렇게 되있는데 정확히 해석이 안되네요..) Input : Period(12), Period1(5), Period2(5); value1 = StochasticsK(Period, Period1); value2 = StochasticsD(Period, Period1, Period2); If value2 > value2[1] Then value3 = 1; Else value3 = 0 ; If value1[1] < 20 Then value4 = 1; Else value4 = 0 ; If value1 > value1[1] && value1[1] <= value1[2] && value1 > value1[2] && value1[1] <= 50 && value1[1] >= value2[1] && accumN(value3,3)==3 && accumN(value4,20) >= 1 Then {AccumN(Num, Num) If C == C[1] Then value5 = 0.001 ; Else value5 = (C-C[1])/C[1]*100 ; } Else value5 = 0; Find(value5);