커뮤니티

한번더 부탁드립니다.

프로필 이미지
마식
2022-06-14 16:32:56
1417
글번호 159836
답변완료
죄송한데 한번만더 아래수식을 DATA2로 변경 가능할까요?? C,L 등 제가아는건 다 해봤는데 계속 오류가나네요 아래 변경한건데 한번 확인부탁드립니다. input : SwingPeriod(2), AtrPeriod(10), ATrMult(3); var : PH(0,Data2), PL(0,Data2), lastpp(0,Data2), center(0,Data2), alPHa(0,Data2), source(0,Data2), ATrV(0,Data2); var : UpCh(0,Data2), DnCh(0,Data2), Trend(0,Data2), TuP(0,Data2), Tdown(0,Data2), TrailingSL(0,Data2); # 스윙하이와 스윙로우를 이용하여 중심선 계산 PH = swingHigh(1,data2(H),SwingPeriod,SwingPeriod,SwingPeriod*2+1); PL = swingLow(1,data2(L),SwingPeriod,SwingPeriod,SwingPeriod*2+1); if PH <> -1 Then lastpp = PH; if PL <> -1 Then lastpp = PL; if PH <> -1 or PL <> -1 Then center = (center*2 + lastpp)/3; # ATR계산(True Range를 RMA로 평균) if CurrentBar > 0 Then { alPHa = 1 / AtrPeriod ; source = max(data2(H) - data2(L), abs(data2(H) - data2(C[1])), abs(data2(L) - data2(C[1]))); ATrV = alPHa * source + (1 - alPHa) * ATrV[1]; } # 상하단 채널과 추세에 따른 추세채널 UpCh = center - (ATrMult * ATrV); DnCh = center + (ATrMult * ATrV); Tup = IFf(data2(C[1]) > TUp[1],max(UpCh, TUp[1]),UpCh ); Tdown = IFf(data2(C[1]) < TDown[1],min(DnCh, TDown[1]),DnCh ); if data2(C) > TDown[1] Then Trend = 1; if data2(C)< TuP[1] Then Trend = -1; Trailingsl = IFf(Trend == 1, Tup, Tdown); # 지표 출력 if C > Trailingsl Then { 매매수식 }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2022-06-14 16:52:06

안녕하세요 예스스탁입니다. 1 # 스윙하이와 스윙로우를 이용하여 중심선 계산 PH = swingHigh(1,data2(H),SwingPeriod,SwingPeriod,SwingPeriod*2+1); PL = swingLow(1,data2(L),SwingPeriod,SwingPeriod,SwingPeriod*2+1); 위 내용은 함수에 사용하는 값만 data2처리가 되어 있습니다. 나머지 기간은 data2의 봉으로 체크하는 부분이 아니게 됩니다. 아래와 같이 참조데이타번호 함수안에 함수식이 들어가게 작성하시면 됩니다. # 스윙하이와 스윙로우를 이용하여 중심선 계산 PH = data2(swingHigh(1,H,SwingPeriod,SwingPeriod,SwingPeriod*2+1)); PL = data2(swingLow(1,L,SwingPeriod,SwingPeriod,SwingPeriod*2+1)); 즉 data2()안에 모든 계산식이나 조건식을 넣어서 작성하시면 됩니다. 2 input : SwingPeriod(2), AtrPeriod(10), ATrMult(3); var : PH(0,Data2), PL(0,Data2), lastpp(0,Data2), center(0,Data2), alPHa(0,Data2), source(0,Data2), ATrV(0,Data2); var : UpCh(0,Data2), DnCh(0,Data2), Trend(0,Data2), TuP(0,Data2), Tdown(0,Data2), TrailingSL(0,Data2); # 스윙하이와 스윙로우를 이용하여 중심선 계산 PH = data2(swingHigh(1,H,SwingPeriod,SwingPeriod,SwingPeriod*2+1)); PL = data2(swingLow(1,L,SwingPeriod,SwingPeriod,SwingPeriod*2+1)); if PH <> -1 Then lastpp = PH; if PL <> -1 Then lastpp = PL; if PH <> -1 or PL <> -1 Then center = (center*2 + lastpp)/3; # ATR계산(True Range를 RMA로 평균) if CurrentBar > 0 Then { alPHa = 1 / AtrPeriod ; source = data2(max(H-L, abs(H-C[1]), abs(L - C[1]))); ATrV = alPHa * source + (1 - alPHa) * ATrV[1]; } # 상하단 채널과 추세에 따른 추세채널 UpCh = center - (ATrMult * ATrV); DnCh = center + (ATrMult * ATrV); Tup = data2(IFf(C[1] > TUp[1],max(UpCh, TUp[1]),UpCh)); Tdown = data2(IFf(C[1] < TDown[1],min(DnCh, TDown[1]),DnCh)); if data2(C > TDown[1]) Then Trend = 1; if data2(C < TuP[1]) Then Trend = -1; Trailingsl = IFf(Trend == 1, Tup, Tdown); # 지표 출력 if data2(C > Trailingsl) Then { 매매수식 } 즐거운 하루되세요 > 마식 님이 쓴 글입니다. > 제목 : 한번더 부탁드립니다. > 죄송한데 한번만더 아래수식을 DATA2로 변경 가능할까요?? C,L 등 제가아는건 다 해봤는데 계속 오류가나네요 아래 변경한건데 한번 확인부탁드립니다. input : SwingPeriod(2), AtrPeriod(10), ATrMult(3); var : PH(0,Data2), PL(0,Data2), lastpp(0,Data2), center(0,Data2), alPHa(0,Data2), source(0,Data2), ATrV(0,Data2); var : UpCh(0,Data2), DnCh(0,Data2), Trend(0,Data2), TuP(0,Data2), Tdown(0,Data2), TrailingSL(0,Data2); # 스윙하이와 스윙로우를 이용하여 중심선 계산 PH = swingHigh(1,data2(H),SwingPeriod,SwingPeriod,SwingPeriod*2+1); PL = swingLow(1,data2(L),SwingPeriod,SwingPeriod,SwingPeriod*2+1); if PH <> -1 Then lastpp = PH; if PL <> -1 Then lastpp = PL; if PH <> -1 or PL <> -1 Then center = (center*2 + lastpp)/3; # ATR계산(True Range를 RMA로 평균) if CurrentBar > 0 Then { alPHa = 1 / AtrPeriod ; source = max(data2(H) - data2(L), abs(data2(H) - data2(C[1])), abs(data2(L) - data2(C[1]))); ATrV = alPHa * source + (1 - alPHa) * ATrV[1]; } # 상하단 채널과 추세에 따른 추세채널 UpCh = center - (ATrMult * ATrV); DnCh = center + (ATrMult * ATrV); Tup = IFf(data2(C[1]) > TUp[1],max(UpCh, TUp[1]),UpCh ); Tdown = IFf(data2(C[1]) < TDown[1],min(DnCh, TDown[1]),DnCh ); if data2(C) > TDown[1] Then Trend = 1; if data2(C)< TuP[1] Then Trend = -1; Trailingsl = IFf(Trend == 1, Tup, Tdown); # 지표 출력 if C > Trailingsl Then { 매매수식 }