Pine 에서 컬러 작업을 위한 새로운 기회

May 13, 2021

여러분의 스크립트는 RGB 팔렛으로부터 새로운 시리즈 컬러 및 그레이디언트를 더했으므로 밝은 컬러로 반짝 거릴 것입니다.

‘color.rgb (red, green, blue, transp)’  펑크션이 파인에 새로 생겼습니다. 아규먼트로 레드, 그린, 블루 및 투명도 (transp) 를 넘겨주어 컴포넌트 밸류를 아규먼트로 넘겨 컬러를 세팅할 수 있습니다. 이제 스크립트에서 쓰던 전체 컬러 팔레트 개념을 없애 버릴 수 있습니다. 대신 넘겨받은 아규먼트에 기반하여 컬러 계산을 합니다. 아래 작은 보기를 보면 복잡한 컬러 컴플렉스 트랜지션을 쓰는 것이 얼마나 쉬운 일인지를 알여 줄 것입니다:

//@version=4
study("Relative Bars Color Saturation", "RBCS", overlay=true)

i_barcolor = input(color.rgb(33, 150, 243), "Bar Color", input.color)

f_grad_transp(_c_col, _transp) =>
    _c_red = color.r(_c_col)
    _c_green = color.g(_c_col)
    _c_blue = color.b(_c_col)
    color.rgb(_c_red, _c_green, _c_blue, _transp)

f_indexedPercent(_currentValue, _relativeValue, _maxValue) =>
    _currentValue * _maxValue / _relativeValue

transp = f_indexedPercent(abs(close - open), high - low, 100)
c_color = f_grad_transp(i_barcolor, transp)
barcolor(c_color)

컬러 컴포넌트의 밸류는 0 (가장 약) 부터 255 (가장 센) 까지로 세팅됩니다. 투명 컴포넌트의 경우 이 레인지는 0 (완전 불투면) 부터 100 (완전 투명) 까지 입니다.

특정 컬러나 투명 컴포넌트의 수치값을 알고 싶다면 color.r()’, ‘color.g()’, ‘color.b()’ and ‘color.t()’ 펑크션에 컬러 아규먼트를 넘겨주도록 합니다. 

그리고 ‘color.from_gradient()’ 펑크션으로 각 바에 눈에 잘 보이는 컬러 변화를 여러분의 상상력에 따라 줄 수 있습니다. 다음 보기는  RSI 밸류에 따라 컬러를 섬명하는 것이 매우 쉽다는 것을 알게 될 것입니다.

//@version=4 study(“RGB RSI”) i_src = input(close, “Source”, input.source) i_length = input(14, “Length”, input.integer) f_grad_transp(_c_col, _transp) => _c_red = color.r(_c_col) _c_green = color.g(_c_col) _c_blue = color.b(_c_col) color.rgb(_c_red, _c_green, _c_blue, _transp) rsi = rsi(i_src, i_length) c_grad = color.from_gradient(rsi, 30, 70, color.lime, color.red) plot(rsi, color=c_grad, linewidth=3) band1 = hline(70, “Overbought”, color=color.rgb(255, 82, 82)) band0 = hline(30, “Oversold”, color=color.rgb(76, 175, 80)) fill(band1, band0, color=f_grad_transp(c_grad, 90), title=”Background”)

 

파인 업데이트에 대한 모든 것은 유저 매뉴얼의 릴리즈 노트 섹션 에 자세히 나와 있습니다.

몇몇 빌트인 인디케이터들도 (모멘텀, 트릭스, 프라이스 오실레디터, 디트렌디드 프라이스 오실레이터, 샤이킨 오실레이터, 볼륨 오실레이터, 이즈 오브 무브먼트, 레이트 오브 체인지) 업데이트되어 이제 이들 새로운 피처를 쓰게 되었으므로 이들을 차트에 넣으면 RGB 효과를 볼 수 있습니다.

커뮤니티 디벨로퍼들이 만든 RGB 컬러를 가진 뛰어난 인디케이터 보기 몇가지를 보겠습니다:

Directional Value by RicardoSantos

Color Gradient Framework by LucF, for PineCoders

Delta Volume Columns Pro by LucF

새로운 피처가 쓸모가 있기를 바랍니다. 앞으로도 이어서 피드백 및 써제스쳔을 보내 주시기 바랍니다.

Look first Then leap

트레이딩뷰는 여러분을 위해 만들어졌으므로 트레이딩뷰의 멋진 기능을 최대한 활용하세요
차트 시작