커뮤니티

종목검색이 안됩니다. 한번 봐주세요!

프로필 이미지
큰상
2018-07-18 16:59:24
225
글번호 120711
답변완료
수고하십니다. javascript:OnWrite(); 하기로 검색하면 하나두 없다고 나옵니다. 각기 Stoch RSI || 전일 거래금액 비교 하면 검색이 되는데 하기와 같이 하면 검색 자체가 안됩니다. #=========================================================# # Stoch RSI #=========================================================# var: RSIPeriod(14),sto1(14); var: Sma1(0),Sma2(0),Sma3(0),StochRSI(0); Var: RSIcount(0),DownAmt(0),UpAmt(0),UpSum(0),DownSum(0),UpAvg(0),DownAvg(0),RSIv(0); var: sumGap(0),gap(0),GO(0),GH(0),GL(0),GC(0); if date!=date[1] then { gap = Open-Close[1]; sumGap = sumGap+gap; } GO = O - sumGap; GH = H - sumGap; GL = L - sumGap; GC = C - sumGap; If CurrentBar == 1 and RSIPeriod > 0 Then Begin UpSum = 0; DownSum = 0; For RSIcount = 0 To RSIPeriod - 1 Begin UpAmt = GC[RSIcount] - GC[RSIcount+1]; If UpAmt >= 0 Then DownAmt = 0; Else Begin DownAmt = -UpAmt; UpAmt = 0; End; UpSum = UpSum + UpAmt; DownSum = DownSum + DownAmt; End; UpAvg = UpSum / RSIPeriod; DownAvg = DownSum / RSIPeriod; End Else If CurrentBar > 1 and RSIPeriod > 0 Then Begin UpAmt = GC[0] - GC[1]; If UpAmt >= 0 Then DownAmt = 0; Else Begin DownAmt = -UpAmt; UpAmt = 0; End; UpAvg = (UpAvg[1] * (RSIPeriod - 1) + UpAmt) / RSIPeriod; DownAvg = (DownAvg[1] * (RSIPeriod - 1) + DownAmt) / RSIPeriod; End; If UpAvg + DownAvg <> 0 Then RSIv = 100 * UpAvg / (UpAvg + DownAvg); Else RSIv = 0; Sma1 = RSIV; Sma2 = lowest(Sma1,sto1); Sma3 = Highest(Sma1,sto1); StochRSI = ((Sma1-Sma2)/(Sma3-Sma2))*100; #=========================================================# # 전일동시간 거래대금 비교 #=========================================================# var : cntm(0),PreDate(0),idx(0),idx1(0),MM(0),MM1(0); if sdate != sdate[1] Then{ var1 = sdate; var2 = var1[1]; idx = 0; idx1 = idx[1]; MM = 0; var3 = dayindex()[1]; } idx = idx+1; MM = MM+M; var5 = Bids[var3+1]*O[var3+1]/10000; //전일 동시간 매수잔량금액 var6 = Asks[var3+1]*O[var3+1]/10000; //전일 동시간 매도잔량금액 if var2 > 0 then { for cntm = idx to idx+idx1 { if stime[cntm] <= stime and sdate[cntm] == var2 then { MM1 = MM[cntm]; cntm = idx+idx1+1; } } } if MM > MM1*0.8 and StochRSI >= 50 Then find(1);
종목검색
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2018-07-18 17:39:00

안녕하세요 예스스탁입니다. 식을 수정했습니다. #=========================================================# # Stoch RSI #=========================================================# var: RSIPeriod(14),sto1(14); var: Sma1(0),Sma2(0),Sma3(0),StochRSI(0); Var: RSIcount(0),DownAmt(0),UpAmt(0),UpSum(0),DownSum(0),UpAvg(0),DownAvg(0),RSIv(0); var: sumGap(0),gap(0),GO(0),GH(0),GL(0),GC(0); if date!=date[1] then { gap = Open-Close[1]; sumGap = sumGap+gap; } GO = O - sumGap; GH = H - sumGap; GL = L - sumGap; GC = C - sumGap; If index == RSIPeriod+1 and RSIPeriod > 0 Then Begin UpSum = 0; DownSum = 0; For RSIcount = 0 To RSIPeriod - 1 Begin UpAmt = GC[RSIcount] - GC[RSIcount+1]; If UpAmt >= 0 Then DownAmt = 0; Else Begin DownAmt = -UpAmt; UpAmt = 0; End; UpSum = UpSum + UpAmt; DownSum = DownSum + DownAmt; End; UpAvg = UpSum / RSIPeriod; DownAvg = DownSum / RSIPeriod; End Else If index > RSIPeriod+1 and RSIPeriod > 0 Then Begin UpAmt = GC[0] - GC[1]; If UpAmt >= 0 Then DownAmt = 0; Else Begin DownAmt = -UpAmt; UpAmt = 0; End; UpAvg = (UpAvg[1] * (RSIPeriod - 1) + UpAmt) / RSIPeriod; DownAvg = (DownAvg[1] * (RSIPeriod - 1) + DownAmt) / RSIPeriod; End; If UpAvg + DownAvg <> 0 Then RSIv = 100 * UpAvg / (UpAvg + DownAvg); Else RSIv = 0; Sma1 = RSIV; Sma2 = lowest(Sma1,sto1); Sma3 = Highest(Sma1,sto1); StochRSI = ((Sma1-Sma2)/(Sma3-Sma2))*100; #=========================================================# # 전일동시간 거래대금 비교 #=========================================================# var : cntm(0),PreDate(0),idx(0),idx1(0),MM(0),MM1(0); if sdate != sdate[1] Then{ var1 = sdate; var2 = var1[1]; idx = 0; idx1 = idx[1]; MM = 0; var3 = dayindex()[1]; } idx = idx+1; MM = MM+M; var5 = Bids[var3+1]*O[var3+1]/10000; //전일 동시간 매수잔량금액 var6 = Asks[var3+1]*O[var3+1]/10000; //전일 동시간 매도잔량금액 if var2 > 0 then { for cntm = idx to idx+idx1 { if stime[cntm] <= stime and sdate[cntm] == var2 then { MM1 = MM[cntm]; cntm = idx+idx1+1; } } } if MM > MM1*0.8 and StochRSI >= 50 Then find(1); 즐거운 하루되세요 > 큰상 님이 쓴 글입니다. > 제목 : 종목검색이 안됩니다. 한번 봐주세요! > 수고하십니다. javascript:OnWrite(); 하기로 검색하면 하나두 없다고 나옵니다. 각기 Stoch RSI || 전일 거래금액 비교 하면 검색이 되는데 하기와 같이 하면 검색 자체가 안됩니다. #=========================================================# # Stoch RSI #=========================================================# var: RSIPeriod(14),sto1(14); var: Sma1(0),Sma2(0),Sma3(0),StochRSI(0); Var: RSIcount(0),DownAmt(0),UpAmt(0),UpSum(0),DownSum(0),UpAvg(0),DownAvg(0),RSIv(0); var: sumGap(0),gap(0),GO(0),GH(0),GL(0),GC(0); if date!=date[1] then { gap = Open-Close[1]; sumGap = sumGap+gap; } GO = O - sumGap; GH = H - sumGap; GL = L - sumGap; GC = C - sumGap; If CurrentBar == 1 and RSIPeriod > 0 Then Begin UpSum = 0; DownSum = 0; For RSIcount = 0 To RSIPeriod - 1 Begin UpAmt = GC[RSIcount] - GC[RSIcount+1]; If UpAmt >= 0 Then DownAmt = 0; Else Begin DownAmt = -UpAmt; UpAmt = 0; End; UpSum = UpSum + UpAmt; DownSum = DownSum + DownAmt; End; UpAvg = UpSum / RSIPeriod; DownAvg = DownSum / RSIPeriod; End Else If CurrentBar > 1 and RSIPeriod > 0 Then Begin UpAmt = GC[0] - GC[1]; If UpAmt >= 0 Then DownAmt = 0; Else Begin DownAmt = -UpAmt; UpAmt = 0; End; UpAvg = (UpAvg[1] * (RSIPeriod - 1) + UpAmt) / RSIPeriod; DownAvg = (DownAvg[1] * (RSIPeriod - 1) + DownAmt) / RSIPeriod; End; If UpAvg + DownAvg <> 0 Then RSIv = 100 * UpAvg / (UpAvg + DownAvg); Else RSIv = 0; Sma1 = RSIV; Sma2 = lowest(Sma1,sto1); Sma3 = Highest(Sma1,sto1); StochRSI = ((Sma1-Sma2)/(Sma3-Sma2))*100; #=========================================================# # 전일동시간 거래대금 비교 #=========================================================# var : cntm(0),PreDate(0),idx(0),idx1(0),MM(0),MM1(0); if sdate != sdate[1] Then{ var1 = sdate; var2 = var1[1]; idx = 0; idx1 = idx[1]; MM = 0; var3 = dayindex()[1]; } idx = idx+1; MM = MM+M; var5 = Bids[var3+1]*O[var3+1]/10000; //전일 동시간 매수잔량금액 var6 = Asks[var3+1]*O[var3+1]/10000; //전일 동시간 매도잔량금액 if var2 > 0 then { for cntm = idx to idx+idx1 { if stime[cntm] <= stime and sdate[cntm] == var2 then { MM1 = MM[cntm]; cntm = idx+idx1+1; } } } if MM > MM1*0.8 and StochRSI >= 50 Then find(1);