• Pine Script™ introduces methods (1, 2)! Much kuddos for the developers, Tradingview, and all who has worked on it!
• This educational script will show the simplified way of writing built-in methods, not to create a new method.

🔹 Simplified way of writing built-in methods:

· Instead of:
newArray = array.new<int>()
array.unshift(newArray, 1)

lin = line.new(na, na, na, na)
line.set_xy1(lin, bar_index     , close)
line.set_xy2(lin, bar_index + 10, close)

label newLabel = label.new(bar_index, high)
if barstate.islast

· We now can write it like this:
newArray = array.new<int>()

lin = line.new(na, na, na, na)
lin.set_xy1(bar_index     , close)
lin.set_xy2(bar_index + 10, close)

label newLabel = label.new(bar_index, high)
if barstate.islast


· When using [1] sometimes brackets are necessary:
label lab = label.new(bar_index, high)
if barstate.islast
    label.set_color(lab, color.red)
· ->
label lab = label.new(bar_index, high)
if barstate.islast
    (lab[1]).delete() // lab[1].delete() doesn't compile at the moment



• The basic principles are:
· Find 1 point (close) x bars back from current bar (settings: 'x close back').

· Create a 'Flare' shaped object from that point to current bar or further (dependable of "Width of Flare").
· Calculate where current close is located versus the Flare lines.
· On that bases, change colour and draw plotshapes.
      · Below bar if current close is located in the upper part of the Flare
      · Above bar if current close is located in the lower part of the Flare
      · Above & Below if located in the middle part of the Flare
         -> Above & Below colours has 3 different colours (adjustable), dependable on the position


· Neutral zone:

· Light Bullish zone:

· Bullish zone:

· Very Bullish / Overbought zone:

· Light Bearish zone:

· Bearish zone:

· Very Bearish / Oversold zone:


🔹 I. Make a User Defined Type (UDT) Flare, with:

· 5x linefill - array of linefill
· int iDir, which captures the direction (current location of close in Flare)
· color cCol, this is a colour variable in relation to the direction.

🔹 II. Different functions will add a new Flare object, and update the values on each bar.

· Explanation of each function can be found in the script.


· The input.color() is located in the function set_flare_B(flare obj)
· Best to put the inputs at the beginning of the script, I included this alternative just to show it is possible (but mostly not ideal)
· Background colour (settings: Bgcolor) can be enabled for better visibility of colours

- We cannot control our emotions,
but we can control our keyboard -
Скрипт с открытым кодом

В истинном духе TradingView автор этого скрипта опубликовал его с открытым исходным кодом, чтобы трейдеры могли понять, как он работает, и проверить на практике. Вы можете воспользоваться им бесплатно, но повторное использование этого кода в публикации регулируется Правилами поведения. Вы можете добавить этот скрипт в избранное и использовать его на графике.

Отказ от ответственности

Все виды контента, которые вы можете увидеть на TradingView, не являются финансовыми, инвестиционными, торговыми или любыми другими рекомендациями. Мы не предоставляем советы по покупке и продаже активов. Подробнее — в Условиях использования TradingView.

Хотите использовать этот скрипт на графике?