커뮤니티

수식 확인 부탁....

프로필 이미지
회원
2005-08-04 02:07:48
1132
글번호 7930
답변완료
안녕하세요! 아래의 수식을 작성하였는데 계산값이 나오지 않고 N/A가 나오는데 수식 오류 확인 부탁드립니다. 수식작성 기준 : 1. 5이평선이 10이평선을 골든크로스 발생할때 이때부터 과거 SwingLow 몇개중 에서 가장 작은 SwingLow부터 골든발생시점까지 봉수를 계산 2. 5이평선이 10이평선을 데드크로스 발생할때 이때부터 과거 SwingHigh 몇개중 에서 가장 큰 SwingHigh부터 데드발생시점까지 봉수를 계산 제가 작성한 수식은 다음과 같습니다. 수식 오류 확인을 부탁드립니다. input : Len(30), Len1(3), Len2(10), MP1(5), MP2(10), FLen(5); var : MA1(0), MA2(0), CUI(0), CDI(0), HP(0), LP(0), HPI(0), LPI(0), a(0), LHPI(0), LLPI(0), UPBar(0), DownBar(0); MA1 = ma(C, MP1); MA2 = ma(C, MP2); HP = swingHigh(1, H, Len1, Len2, 30); LP = swingLow(1, L, Len1, Len2, 30); if crossup(MA1, MP2) then CUI = index; if crossdown(MA1, MA2) then CDI = Index; if HP then HPI = index; if LP then LPI = index; for a=0 to FLen-1 begin if LP[a] > LP[a-1] then LLPI = LPI[a]; else LLPI = LPI[a-1] ; if HP[a] > HP[a-1] then LHPI = HPI[a]; else LHPI = HPI[a-1] ; end; UpBar = CUI - LLPI; DownBar = CDI - LHPI; plot1(UpBar, "업 봉수", red); plot2(DownBar, "다운 봉수", blue);
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2005-08-04 16:19:14

안녕하세요 예스스탁입니다. for a=0 to FLen-1 begin if LP[a] > LP[a-1] then LLPI = LPI[a]; else LLPI = LPI[a-1] ; if HP[a] > HP[a-1] then LHPI = HPI[a]; else LHPI = HPI[a-1] ; 예를 들어 for문에서 a에 0값이 할당되면 lp[a-1] = lp[-1]로 계산이 되지 않는값이 나옵니다. 골드 혹은 데드시에 최근 3개의 스윙하이와 스윙로우를 이용하여 값을 찾게 만들었습니다. input : len1(3),len2(3),Speriod(5),Lperiod(10); var : SH1(0),SH2(0),SH3(0),SL1(0),SL2(0),SL3(0),MAxval(0),MINval(0),MAXup(0),MINdown(0); SH1 = swingHigh(1,H,len1,len2,100); SH2 = swingHigh(2,H,len1,len2,100); SH3 = swingHigh(3,H,len1,len2,100); SL1 = swingLow(1,L,len1,len2,100); SL2 = swingLow(2,L,len1,len2,100); SL3 = swingLow(3,L,len1,len2,100); MAXval = Max(SH1,Sh2,Sh3); MINval = Min(SL1,SL2,SL3); if crossup(ma(c,Speriod),ma(c,Lperiod)) then{ if MAXval == SH1 then MAXup = swinghighbar(1,H,len1,len2,100); if MAXval == SH2 then MAXup = swinghighbar(1,H,len1,len2,100); if MAXval == SH3 then MAXup = swinghighbar(1,H,len1,len2,100); } if crossdown(ma(c,Speriod),ma(c,Lperiod)) then{ if MINval == SL1 then MINdown = swingLowbar(1,L,len1,len2,100); if MINval == SL2 then MINdown = swingLowbar(2,L,len1,len2,100); if MINval == SL3 then MINdown = swingLowbar(3,L,len1,len2,100); } plot1(MAXup); plot2(MINdown); 즐거운 하루되세요 > CJ_emorning 님이 쓴 글입니다. > 제목 : 수식 확인 부탁.... > 안녕하세요! 아래의 수식을 작성하였는데 계산값이 나오지 않고 N/A가 나오는데 수식 오류 확인 부탁드립니다. 수식작성 기준 : 1. 5이평선이 10이평선을 골든크로스 발생할때 이때부터 과거 SwingLow 몇개중 에서 가장 작은 SwingLow부터 골든발생시점까지 봉수를 계산 2. 5이평선이 10이평선을 데드크로스 발생할때 이때부터 과거 SwingHigh 몇개중 에서 가장 큰 SwingHigh부터 데드발생시점까지 봉수를 계산 제가 작성한 수식은 다음과 같습니다. 수식 오류 확인을 부탁드립니다. input : Len(30), Len1(3), Len2(10), MP1(5), MP2(10), FLen(5); var : MA1(0), MA2(0), CUI(0), CDI(0), HP(0), LP(0), HPI(0), LPI(0), a(0), LHPI(0), LLPI(0), UPBar(0), DownBar(0); MA1 = ma(C, MP1); MA2 = ma(C, MP2); HP = swingHigh(1, H, Len1, Len2, 30); LP = swingLow(1, L, Len1, Len2, 30); if crossup(MA1, MP2) then CUI = index; if crossdown(MA1, MA2) then CDI = Index; if HP then HPI = index; if LP then LPI = index; for a=0 to FLen-1 begin if LP[a] > LP[a-1] then LLPI = LPI[a]; else LLPI = LPI[a-1] ; if HP[a] > HP[a-1] then LHPI = HPI[a]; else LHPI = HPI[a-1] ; end; UpBar = CUI - LLPI; DownBar = CDI - LHPI; plot1(UpBar, "업 봉수", red); plot2(DownBar, "다운 봉수", blue);