커뮤니티

타지표수식을 예스수식으로 변환요청드립니다.

프로필 이미지
양정희
2021-06-14 23:38:57
1511
글번호 149935
답변완료
트레이딩뷰 지표수식 예스수식으로 가능하면 변환 요청드립니다. 감사합니다. ----------------------------------------------------------------------- //@version=4 study("Williams Fractals", shorttitle="Fractals", format=format.price, precision=0, overlay=true) // Define "n" as the number of periods and keep a minimum value of 2 for error handling. n = input(title="Periods", defval=2, minval=2, type=input.integer) // UpFractal bool upflagDownFrontier = true bool upflagUpFrontier0 = true bool upflagUpFrontier1 = true bool upflagUpFrontier2 = true bool upflagUpFrontier3 = true bool upflagUpFrontier4 = true for i = 1 to n upflagDownFrontier := upflagDownFrontier and (high[n-i] < high[n]) upflagUpFrontier0 := upflagUpFrontier0 and (high[n+i] < high[n]) upflagUpFrontier1 := upflagUpFrontier1 and (high[n+1] <= high[n] and high[n+i + 1] < high[n]) upflagUpFrontier2 := upflagUpFrontier2 and (high[n+1] <= high[n] and high[n+2] <= high[n] and high[n+i + 2] < high[n]) upflagUpFrontier3 := upflagUpFrontier3 and (high[n+1] <= high[n] and high[n+2] <= high[n] and high[n+3] <= high[n] and high[n+i + 3] < high[n]) upflagUpFrontier4 := upflagUpFrontier4 and (high[n+1] <= high[n] and high[n+2] <= high[n] and high[n+3] <= high[n] and high[n+4] <= high[n] and high[n+i + 4] < high[n]) flagUpFrontier = upflagUpFrontier0 or upflagUpFrontier1 or upflagUpFrontier2 or upflagUpFrontier3 or upflagUpFrontier4 upFractal = (upflagDownFrontier and flagUpFrontier) // downFractal bool downflagDownFrontier = true bool downflagUpFrontier0 = true bool downflagUpFrontier1 = true bool downflagUpFrontier2 = true bool downflagUpFrontier3 = true bool downflagUpFrontier4 = true for i = 1 to n downflagDownFrontier := downflagDownFrontier and (low[n-i] > low[n]) downflagUpFrontier0 := downflagUpFrontier0 and (low[n+i] > low[n]) downflagUpFrontier1 := downflagUpFrontier1 and (low[n+1] >= low[n] and low[n+i + 1] > low[n]) downflagUpFrontier2 := downflagUpFrontier2 and (low[n+1] >= low[n] and low[n+2] >= low[n] and low[n+i + 2] > low[n]) downflagUpFrontier3 := downflagUpFrontier3 and (low[n+1] >= low[n] and low[n+2] >= low[n] and low[n+3] >= low[n] and low[n+i + 3] > low[n]) downflagUpFrontier4 := downflagUpFrontier4 and (low[n+1] >= low[n] and low[n+2] >= low[n] and low[n+3] >= low[n] and low[n+4] >= low[n] and low[n+i + 4] > low[n]) flagDownFrontier = downflagUpFrontier0 or downflagUpFrontier1 or downflagUpFrontier2 or downflagUpFrontier3 or downflagUpFrontier4 downFractal = (downflagDownFrontier and flagDownFrontier) plotshape(downFractal, style=shape.triangledown, location=location.belowbar, offset=-n, color=color.maroon, transp=0, size = size.small) plotshape(upFractal, style=shape.triangleup, location=location.abovebar, offset=-n, color=color.olive, transp=0, size = size.small)
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2021-06-15 16:59:48

안녕하세요 예스스탁입니다. 별도로 지표로 출력되는 내용은 없고 봉에 표시를 하는 내용이라 봉위에 삼각형으로 표시되게 작성해 드립니다. input : n (2); var : upflagDownFrontier(False),upflagUpFrontier0(False),upflagUpFrontier1(False); var : upflagUpFrontier2(False),upflagUpFrontier3(False),upflagUpFrontier4(False); var : downflagDownFrontier(False),downflagUpFrontier0(False),downflagUpFrontier1(False); var : downflagUpFrontier2(False),downflagUpFrontier3(False),downflagUpFrontier4(False); var : flagUpFrontier(False),upFractal(false),flagDownFrontier(False),downFractal(False); var : i(0),tx(0); upflagDownFrontier = true; upflagUpFrontier0 = true; upflagUpFrontier1 = true; upflagUpFrontier2 = true; upflagUpFrontier3 = true; upflagUpFrontier4 = true; for i = 1 to n { upflagDownFrontier = upflagDownFrontier and (high[n-i] < high[n]); upflagUpFrontier0 = upflagUpFrontier0 and (high[n+i] < high[n]); upflagUpFrontier1 = upflagUpFrontier1 and (high[n+1] <= high[n] and high[n+i + 1] < high[n]); upflagUpFrontier2 = upflagUpFrontier2 and (high[n+1] <= high[n] and high[n+2] <= high[n] and high[n+i + 2] < high[n]); upflagUpFrontier3 = upflagUpFrontier3 and (high[n+1] <= high[n] and high[n+2] <= high[n] and high[n+3] <= high[n] and high[n+i + 3] < high[n]); upflagUpFrontier4 = upflagUpFrontier4 and (high[n+1] <= high[n] and high[n+2] <= high[n] and high[n+3] <= high[n] and high[n+4] <= high[n] and high[n+i + 4] < high[n]); } flagUpFrontier = upflagUpFrontier0 or upflagUpFrontier1 or upflagUpFrontier2 or upflagUpFrontier3 or upflagUpFrontier4; upFractal = (upflagDownFrontier and flagUpFrontier); // downFractal downflagDownFrontier = true; downflagUpFrontier0 = true; downflagUpFrontier1 = true; downflagUpFrontier2 = true; downflagUpFrontier3 = true; downflagUpFrontier4 = true; for i = 1 to n { downflagDownFrontier = downflagDownFrontier and (low[n-i] > low[n]); downflagUpFrontier0 = downflagUpFrontier0 and (low[n+i] > low[n]); downflagUpFrontier1 = downflagUpFrontier1 and (low[n+1] >= low[n] and low[n+i + 1] > low[n]); downflagUpFrontier2 = downflagUpFrontier2 and (low[n+1] >= low[n] and low[n+2] >= low[n] and low[n+i + 2] > low[n]); downflagUpFrontier3 = downflagUpFrontier3 and (low[n+1] >= low[n] and low[n+2] >= low[n] and low[n+3] >= low[n] and low[n+i + 3] > low[n]); downflagUpFrontier4 = downflagUpFrontier4 and (low[n+1] >= low[n] and low[n+2] >= low[n] and low[n+3] >= low[n] and low[n+4] >= low[n] and low[n+i + 4] > low[n]); } flagDownFrontier = downflagUpFrontier0 or downflagUpFrontier1 or downflagUpFrontier2 or downflagUpFrontier3 or downflagUpFrontier4; downFractal = (downflagDownFrontier and flagDownFrontier); if downFractal Then { tx = text_new(sDate,sTime,L,"▼"); Text_SetStyle(tx,2,0); Text_SetColor(tx,CYAN); } if upFractal Then { tx = text_new(sDate,sTime,H,"▲"); Text_SetStyle(tx,2,1); Text_SetColor(tx,MAGENTA); } 즐거운 하루되세요 > 양정희 님이 쓴 글입니다. > 제목 : 타지표수식을 예스수식으로 변환요청드립니다. > 트레이딩뷰 지표수식 예스수식으로 가능하면 변환 요청드립니다. 감사합니다. ----------------------------------------------------------------------- //@version=4 study("Williams Fractals", shorttitle="Fractals", format=format.price, precision=0, overlay=true) // Define "n" as the number of periods and keep a minimum value of 2 for error handling. n = input(title="Periods", defval=2, minval=2, type=input.integer) // UpFractal bool upflagDownFrontier = true bool upflagUpFrontier0 = true bool upflagUpFrontier1 = true bool upflagUpFrontier2 = true bool upflagUpFrontier3 = true bool upflagUpFrontier4 = true for i = 1 to n upflagDownFrontier := upflagDownFrontier and (high[n-i] < high[n]) upflagUpFrontier0 := upflagUpFrontier0 and (high[n+i] < high[n]) upflagUpFrontier1 := upflagUpFrontier1 and (high[n+1] <= high[n] and high[n+i + 1] < high[n]) upflagUpFrontier2 := upflagUpFrontier2 and (high[n+1] <= high[n] and high[n+2] <= high[n] and high[n+i + 2] < high[n]) upflagUpFrontier3 := upflagUpFrontier3 and (high[n+1] <= high[n] and high[n+2] <= high[n] and high[n+3] <= high[n] and high[n+i + 3] < high[n]) upflagUpFrontier4 := upflagUpFrontier4 and (high[n+1] <= high[n] and high[n+2] <= high[n] and high[n+3] <= high[n] and high[n+4] <= high[n] and high[n+i + 4] < high[n]) flagUpFrontier = upflagUpFrontier0 or upflagUpFrontier1 or upflagUpFrontier2 or upflagUpFrontier3 or upflagUpFrontier4 upFractal = (upflagDownFrontier and flagUpFrontier) // downFractal bool downflagDownFrontier = true bool downflagUpFrontier0 = true bool downflagUpFrontier1 = true bool downflagUpFrontier2 = true bool downflagUpFrontier3 = true bool downflagUpFrontier4 = true for i = 1 to n downflagDownFrontier := downflagDownFrontier and (low[n-i] > low[n]) downflagUpFrontier0 := downflagUpFrontier0 and (low[n+i] > low[n]) downflagUpFrontier1 := downflagUpFrontier1 and (low[n+1] >= low[n] and low[n+i + 1] > low[n]) downflagUpFrontier2 := downflagUpFrontier2 and (low[n+1] >= low[n] and low[n+2] >= low[n] and low[n+i + 2] > low[n]) downflagUpFrontier3 := downflagUpFrontier3 and (low[n+1] >= low[n] and low[n+2] >= low[n] and low[n+3] >= low[n] and low[n+i + 3] > low[n]) downflagUpFrontier4 := downflagUpFrontier4 and (low[n+1] >= low[n] and low[n+2] >= low[n] and low[n+3] >= low[n] and low[n+4] >= low[n] and low[n+i + 4] > low[n]) flagDownFrontier = downflagUpFrontier0 or downflagUpFrontier1 or downflagUpFrontier2 or downflagUpFrontier3 or downflagUpFrontier4 downFractal = (downflagDownFrontier and flagDownFrontier) plotshape(downFractal, style=shape.triangledown, location=location.belowbar, offset=-n, color=color.maroon, transp=0, size = size.small) plotshape(upFractal, style=shape.triangleup, location=location.abovebar, offset=-n, color=color.olive, transp=0, size = size.small)