커뮤니티

수식 수정 부탁드립니다

프로필 이미지
hex
2011-08-29 13:10:31
658
글번호 42284
답변완료
안녕하세요 지난번 RSI 관련해서 답변해주신것 잘보았습니다 어쩐지 아무리 봐도 이상한데 늦게나마 제대로 알려주셔서 감사합니다. 이번에 부탁드릴려는것은 다른것이 아니라 기본 함수 RSI()를 수정해주셨으면 해서요. RSI() 함수에서 1) 상승/하락을 판단하는 부분이 C-C[1] 로 되어 있고 2) 상승폭/하락폭의 평균을 내는 부분 역시 abs(C-C[1]) 로 되어 있잖습니까? 제가 부탁드리고 싶은것은, 1) 상승/하락을 판단하는 부분은 그대로 C-C[1] 로 두되 2) 상승/하락의 평균을 내는 부분을 abs(C-C[1]) 대신 거래량을 넣고 싶습니다 즉, 종가가 상승했을때의 거래량 평균 / 종가가 하락했을때의 거래량 평균을 RSI 공식을 통해 산출하고 싶습니다. 늘 감사드리고 부탁드립니다
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2011-08-29 17:28:05

안녕하세요 예스스탁입니다. Inputs: Length(14); Variables: Counter(0), DownAmt(0), UpAmt(0), UpSum(0), DownSum(0), UpAvg(0), DownAvg(0),RSIv(0),UpAmtC(0); If CurrentBar == 1 AND Length > 0 Then Begin UpSum = 0; DownSum = 0; For Counter = 0 To Length - 1 Begin UpAmt = abs(v[Counter] - v[Counter+1]); If c[Counter] - c[Counter+1] >= 0 Then #상승 DownAmt = 0; Else Begin#하락 DownAmt = UpAmt; UpAmt = 0; End; UpSum = UpSum + UpAmt; DownSum = DownSum + DownAmt; End; UpAvg = UpSum / Length; DownAvg = DownSum / Length; End Else If CurrentBar > 1 AND Length > 0 Then Begin UpAmt = abs(v[Counter] - v[Counter+1]); If c[Counter] - c[Counter+1] >= 0 Then#상승 DownAmt = 0; Else Begin#하락 DownAmt = UpAmt; UpAmt = 0; End; UpAvg = (UpAvg[1] * (Length - 1) + UpAmt) / Length; DownAvg = (DownAvg[1] * (Length - 1) + DownAmt) / Length; End; If UpAvg + DownAvg <> 0 Then RSIv = 100 * UpAvg / (UpAvg + DownAvg); Else RSIv = 0; plot1(RSIV); PlotBaseLine1(30, "기준선1"); PlotBaseLine2(70, "기준선2"); 즐거운 하루되세요 > hex 님이 쓴 글입니다. > 제목 : 수식 수정 부탁드립니다 > 안녕하세요 지난번 RSI 관련해서 답변해주신것 잘보았습니다 어쩐지 아무리 봐도 이상한데 늦게나마 제대로 알려주셔서 감사합니다. 이번에 부탁드릴려는것은 다른것이 아니라 기본 함수 RSI()를 수정해주셨으면 해서요. RSI() 함수에서 1) 상승/하락을 판단하는 부분이 C-C[1] 로 되어 있고 2) 상승폭/하락폭의 평균을 내는 부분 역시 abs(C-C[1]) 로 되어 있잖습니까? 제가 부탁드리고 싶은것은, 1) 상승/하락을 판단하는 부분은 그대로 C-C[1] 로 두되 2) 상승/하락의 평균을 내는 부분을 abs(C-C[1]) 대신 거래량을 넣고 싶습니다 즉, 종가가 상승했을때의 거래량 평균 / 종가가 하락했을때의 거래량 평균을 RSI 공식을 통해 산출하고 싶습니다. 늘 감사드리고 부탁드립니다