커뮤니티

rci 지표 관련 해서 문의합니다.

프로필 이미지
촌동네선생
2025-02-03 15:39:32
439
글번호 187669
답변완료
하이킨 아시 캔들 기준으로 rci(2)에 시그널 선으로 36 단순이동평균선을 넣은 지표식을 좀 알려주시면 감사하겠습다.. 기간값은 2 구요. 36 단순이동평균선을 시그널 선으로 추가하고 0선을 중앙선으 로 하는 수식 좀 알려주실수 있을까요? 1) 하이킨아시 고가 기준 rci (2) 시그널 (36) 중앙선 0 2) 하이킨아시 종가 기준 rci (2) 시그널 (36) 중앙선 0 3) 하이킨아시 시가 기준 rci (2) 시그널 (36) 중앙선 0 4) 하이킨아시 저가 기준 rci (2) 시그널 (36) 중앙선 0 1),2),3),4) 가 겹치지 않게 각자 따로 지표를 만들려고 합니다. 고생하십니다.
지표
답변 2
프로필 이미지

예스스탁 예스스탁 답변

2025-02-04 09:51:11

안녕하세요 예스스탁입니다. 사용자함수를 먼저 만드신 후에 지표식 작성해서 사용하시면 됩니다. 1. 사용자함수 함수명 : RCI 반환값형 : 숫자형 input :Price(numericseries),Length(numericsimple); var : MinIndex(0), TestValue(0),i1(0),i2(0),TempVal1(0),TempVal2(0), RankChange(0),RankChangeSqr(0),RankChangeSqrSum(0),CorrCoeff(0),Denom(0) ; array: PriceArray[2,500](0) ; if Length >= 2 and Length < 500 then { for i1 = 1 to Length { PriceArray[0,i1] = i1 ; PriceArray[1,i1] = Price[Length-i1] ; } for i1 = 1 to Length - 1 { TestValue = PriceArray[1,i1] ; MinIndex = i1 ; for i2 = i1 + 1 to Length { if TestValue > PriceArray[1,i2] then { MinIndex = i2 ; TestValue = PriceArray[1,i2] ; } } if MinIndex <> i1 then { TempVal1 = PriceArray[0,i1] ; TempVal2 = PriceArray[1,i1] ; PriceArray[0,i1] = PriceArray[0,MinIndex] ; PriceArray[1,i1] = PriceArray[1,MinIndex] ; PriceArray[0,MinIndex] = TempVal1 ; PriceArray[1,MinIndex] = TempVal2 ; } } RankChangeSqrSum = 0 ; for i1 = 1 to Length { RankChange = i1 - PriceArray[0,i1] ; RankChangeSqr = RankChange * RankChange ; RankChangeSqrSum = RankChangeSqrSum + RankChangeSqr ; } Denom = Length * ( Length * Length - 1 ) ; if Denom <> 0 then CorrCoeff = 1 - 6 * RankChangeSqrSum / Denom ; RCI = CorrCoeff * 100 ; } Else RCI = Nan; 2-1 input : Period(2),signal(36); var : R(0),S(0); var : xClose(0),xOpen(0),xHigh(0),xLow(0); #Heiken Ashi 시고저종 if index == 0 then { xClose = (O+H+L+C)/4; xOpen = open; xHigh = MaxList( high, xOpen, xClose); xLow = MinList( low, xOpen,xClose); } else { xClose = (O+H+L+C)/4; xOpen = (xOpen [1] + xClose [1])/2 ; xHigh = MaxList(High, xOpen, xClose) ; xLow = MinList(Low, xOpen, xClose) ; } R = RCI(xHigh,Period); S = ma(R,36); Plot1(R,"RCI"); Plot2(S,"RCI Signal"); 2-2 input : Period(2),signal(36); var : R(0),S(0); var : xClose(0),xOpen(0),xHigh(0),xLow(0); #Heiken Ashi 시고저종 if index == 0 then { xClose = (O+H+L+C)/4; xOpen = open; xHigh = MaxList( high, xOpen, xClose); xLow = MinList( low, xOpen,xClose); } else { xClose = (O+H+L+C)/4; xOpen = (xOpen [1] + xClose [1])/2 ; xHigh = MaxList(High, xOpen, xClose) ; xLow = MinList(Low, xOpen, xClose) ; } R = RCI(xClose,Period); S = ma(R,36); Plot1(R,"RCI"); Plot2(S,"RCI Signal"); 2-3 input : Period(2),signal(36); var : R(0),S(0); var : xClose(0),xOpen(0),xHigh(0),xLow(0); #Heiken Ashi 시고저종 if index == 0 then { xClose = (O+H+L+C)/4; xOpen = open; xHigh = MaxList( high, xOpen, xClose); xLow = MinList( low, xOpen,xClose); } else { xClose = (O+H+L+C)/4; xOpen = (xOpen [1] + xClose [1])/2 ; xHigh = MaxList(High, xOpen, xClose) ; xLow = MinList(Low, xOpen, xClose) ; } R = RCI(xOpen,Period); S = ma(R,36); Plot1(R,"RCI"); Plot2(S,"RCI Signal"); 2-4 input : Period(2),signal(36); var : R(0),S(0); var : xClose(0),xOpen(0),xHigh(0),xLow(0); #Heiken Ashi 시고저종 if index == 0 then { xClose = (O+H+L+C)/4; xOpen = open; xHigh = MaxList( high, xOpen, xClose); xLow = MinList( low, xOpen,xClose); } else { xClose = (O+H+L+C)/4; xOpen = (xOpen [1] + xClose [1])/2 ; xHigh = MaxList(High, xOpen, xClose) ; xLow = MinList(Low, xOpen, xClose) ; } R = RCI(xLow,Period); S = ma(R,36); Plot1(R,"RCI"); Plot2(S,"RCI Signal"); 즐거운 하루되세요 > 촌동네선생 님이 쓴 글입니다. > 제목 : rci 지표 관련 해서 문의합니다. > 하이킨 아시 캔들 기준으로 rci(2)에 시그널 선으로 36 단순이동평균선을 넣은 지표식을 좀 알려주시면 감사하겠습다.. 기간값은 2 구요. 36 단순이동평균선을 시그널 선으로 추가하고 0선을 중앙선으 로 하는 수식 좀 알려주실수 있을까요? 1) 하이킨아시 고가 기준 rci (2) 시그널 (36) 중앙선 0 2) 하이킨아시 종가 기준 rci (2) 시그널 (36) 중앙선 0 3) 하이킨아시 시가 기준 rci (2) 시그널 (36) 중앙선 0 4) 하이킨아시 저가 기준 rci (2) 시그널 (36) 중앙선 0 1),2),3),4) 가 겹치지 않게 각자 따로 지표를 만들려고 합니다. 고생하십니다.
프로필 이미지

촌동네선생

2025-02-04 10:29:22

너무 너무 감사드리고 수고하셨습니다. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : rci 지표 관련 해서 문의합니다. > 안녕하세요 예스스탁입니다. 사용자함수를 먼저 만드신 후에 지표식 작성해서 사용하시면 됩니다. 1. 사용자함수 함수명 : RCI 반환값형 : 숫자형 input :Price(numericseries),Length(numericsimple); var : MinIndex(0), TestValue(0),i1(0),i2(0),TempVal1(0),TempVal2(0), RankChange(0),RankChangeSqr(0),RankChangeSqrSum(0),CorrCoeff(0),Denom(0) ; array: PriceArray[2,500](0) ; if Length >= 2 and Length < 500 then { for i1 = 1 to Length { PriceArray[0,i1] = i1 ; PriceArray[1,i1] = Price[Length-i1] ; } for i1 = 1 to Length - 1 { TestValue = PriceArray[1,i1] ; MinIndex = i1 ; for i2 = i1 + 1 to Length { if TestValue > PriceArray[1,i2] then { MinIndex = i2 ; TestValue = PriceArray[1,i2] ; } } if MinIndex <> i1 then { TempVal1 = PriceArray[0,i1] ; TempVal2 = PriceArray[1,i1] ; PriceArray[0,i1] = PriceArray[0,MinIndex] ; PriceArray[1,i1] = PriceArray[1,MinIndex] ; PriceArray[0,MinIndex] = TempVal1 ; PriceArray[1,MinIndex] = TempVal2 ; } } RankChangeSqrSum = 0 ; for i1 = 1 to Length { RankChange = i1 - PriceArray[0,i1] ; RankChangeSqr = RankChange * RankChange ; RankChangeSqrSum = RankChangeSqrSum + RankChangeSqr ; } Denom = Length * ( Length * Length - 1 ) ; if Denom <> 0 then CorrCoeff = 1 - 6 * RankChangeSqrSum / Denom ; RCI = CorrCoeff * 100 ; } Else RCI = Nan; 2-1 input : Period(2),signal(36); var : R(0),S(0); var : xClose(0),xOpen(0),xHigh(0),xLow(0); #Heiken Ashi 시고저종 if index == 0 then { xClose = (O+H+L+C)/4; xOpen = open; xHigh = MaxList( high, xOpen, xClose); xLow = MinList( low, xOpen,xClose); } else { xClose = (O+H+L+C)/4; xOpen = (xOpen [1] + xClose [1])/2 ; xHigh = MaxList(High, xOpen, xClose) ; xLow = MinList(Low, xOpen, xClose) ; } R = RCI(xHigh,Period); S = ma(R,36); Plot1(R,"RCI"); Plot2(S,"RCI Signal"); 2-2 input : Period(2),signal(36); var : R(0),S(0); var : xClose(0),xOpen(0),xHigh(0),xLow(0); #Heiken Ashi 시고저종 if index == 0 then { xClose = (O+H+L+C)/4; xOpen = open; xHigh = MaxList( high, xOpen, xClose); xLow = MinList( low, xOpen,xClose); } else { xClose = (O+H+L+C)/4; xOpen = (xOpen [1] + xClose [1])/2 ; xHigh = MaxList(High, xOpen, xClose) ; xLow = MinList(Low, xOpen, xClose) ; } R = RCI(xClose,Period); S = ma(R,36); Plot1(R,"RCI"); Plot2(S,"RCI Signal"); 2-3 input : Period(2),signal(36); var : R(0),S(0); var : xClose(0),xOpen(0),xHigh(0),xLow(0); #Heiken Ashi 시고저종 if index == 0 then { xClose = (O+H+L+C)/4; xOpen = open; xHigh = MaxList( high, xOpen, xClose); xLow = MinList( low, xOpen,xClose); } else { xClose = (O+H+L+C)/4; xOpen = (xOpen [1] + xClose [1])/2 ; xHigh = MaxList(High, xOpen, xClose) ; xLow = MinList(Low, xOpen, xClose) ; } R = RCI(xOpen,Period); S = ma(R,36); Plot1(R,"RCI"); Plot2(S,"RCI Signal"); 2-4 input : Period(2),signal(36); var : R(0),S(0); var : xClose(0),xOpen(0),xHigh(0),xLow(0); #Heiken Ashi 시고저종 if index == 0 then { xClose = (O+H+L+C)/4; xOpen = open; xHigh = MaxList( high, xOpen, xClose); xLow = MinList( low, xOpen,xClose); } else { xClose = (O+H+L+C)/4; xOpen = (xOpen [1] + xClose [1])/2 ; xHigh = MaxList(High, xOpen, xClose) ; xLow = MinList(Low, xOpen, xClose) ; } R = RCI(xLow,Period); S = ma(R,36); Plot1(R,"RCI"); Plot2(S,"RCI Signal"); 즐거운 하루되세요 > 촌동네선생 님이 쓴 글입니다. > 제목 : rci 지표 관련 해서 문의합니다. > 하이킨 아시 캔들 기준으로 rci(2)에 시그널 선으로 36 단순이동평균선을 넣은 지표식을 좀 알려주시면 감사하겠습다.. 기간값은 2 구요. 36 단순이동평균선을 시그널 선으로 추가하고 0선을 중앙선으 로 하는 수식 좀 알려주실수 있을까요? 1) 하이킨아시 고가 기준 rci (2) 시그널 (36) 중앙선 0 2) 하이킨아시 종가 기준 rci (2) 시그널 (36) 중앙선 0 3) 하이킨아시 시가 기준 rci (2) 시그널 (36) 중앙선 0 4) 하이킨아시 저가 기준 rci (2) 시그널 (36) 중앙선 0 1),2),3),4) 가 겹치지 않게 각자 따로 지표를 만들려고 합니다. 고생하십니다.