Pine Script™和圖表變得更豐富化

Jul 12, 2022

圖表命名空間中的新內建插件現在為腳本提供了對圖表屬性的更多可見性。有了它們,我們還為您的Pine腳本引入了一種新的行為類型,它允許它們僅在可見K線上重新計算和重繪,當交易者滑動或縮放圖表時自動重新調整。

圖表屬性

新的chart.bg_color內建回傳圖表背景的顏色。您可以使用它來調整腳本的配色方案以適應圖表的上下文。而chart.fg_color會回傳一種顏色,該顏色將與圖表的背景顏色提供最佳對比度,無論它是什麼。

另一組新的布林內建函數可以檢測腳本運算的圖表類型。他們是:

最後一個將在所有標準圖表類型(回傳非綜合收盤價的那些)上回傳true:美國線、K線圖、空心K線圖、柱狀圖、線形圖、區域圖或基準線。

可見K線和動態重新計算

新的chart.left_visible_bar_timechart.right_visible_bar_time內建函數回傳圖表最左側和最右側可見K線的開盤時間。當交易者滑動或縮放他們的圖表時 — 導致圖表上可見K線的範圍發生變化 — 使用這些新內建插件的腳本將自動重新執行,以便計算和視覺效果可以適應新的環境。這為一種全新的腳本打開了大門,這些腳本可以動態調整可見K線範圍的變化。

此範例從第一個可見K線的開盤點到最後一個可見K線的收盤點繪製一個箭頭,並顯示該範圍的收益和損失:

//@version=5
indicator("Chart gain/loss", "", true)

// Save the `open` of the leftmost visible bar.
var float chartOpen = na
if time == chart.left_visible_bar_time
    chartOpen := open
else if time == chart.right_visible_bar_time
    // Run the following code on the chart's rightmost visible bar.
    color arrowColor = close > chartOpen ? color.lime : color.fuchsia
    // Draw arrow once, then modify it.
    var line arrow = line.new(na, na, na, na, xloc.bar_time, extend.none, na, line.style_arrow_right, 3)
    line.set_xy1(arrow, chart.left_visible_bar_time, chartOpen)
    line.set_xy2(arrow, chart.right_visible_bar_time, close)
    line.set_color(arrow, arrowColor)
    // Draw percentage label once, then modify it.
    var label percentage = label.new(na, na, na, xloc.bar_time, yloc.price, #00000000, label.style_label_down, size = size.huge)
    int midTime = int(math.avg(chart.left_visible_bar_time, chart.right_visible_bar_time))
    label.set_xy(percentage, midTime, math.avg(chartOpen, close))
    label.set_text(percentage, str.tostring((close - chartOpen) / chartOpen * 100, format.percent))
    label.set_textcolor(percentage, arrowColor)

請注意,由於使用此功能的腳本將比正常腳本更頻繁地重新執行,因此如果想要保持TradingView圖表的平時的效能,則必須注意使用簡潔的程式碼並保持輕量的計算。

我們發布了一個圖表VWAP指標作為如何使用這一新功能的範例。它會自動錨定在可見K線上:

PineCoders帳戶還發布了一個VisibleChart程式庫,以幫助Pine Script™程式設計師充分利用這一新功能。

要隨時了解新的Pine Script™功能,請留意用戶手冊的發行說明PineCoders帳戶也透過Telegram上的Squawk BoxTwitter帳戶和TradingView上的“Pine Script™ Q&A”公開聊天廣播更新。

我們希望您發現這些功能很實用。請繼續向我們發送您的反饋和改進建議。我們為您建構TradingView,我們渴望收到您的來信。

Look first Then leap

TradingView專門為您打造,請確保您充分利用我們出色的功能
開啟圖表