我們在2013年推出了Pine Script®,為我們的交易員提供一種編譯語法,讓他們可以用來建構自己的交易模型。最重要的事情是計算和繪製RSI線,而您的建議幫助我們逐步增加您喜歡的語法。您的腳本現在可以做更多的事情:更好的回測、交易機器人的快訊、改進的視覺效果、更靈活的輸入、卓越的編輯體驗、程式庫以及更複雜的數據結構,如:陣列和矩陣。兩年前我們曾告訴您,Pine Script正在風行,我們並不是在開玩笑。
Pine物件是使用type關鍵字宣告的新用戶定義復合類型(UDT)的實例。有經驗的交易員可以將UDT視為無方法類。
現在,您可以定義具有兩個欄位的pivotPoint類型來保存這些值,而不是使用像pivotTime和pivotLevel這樣的獨立變數來追蹤數據:
type pivotPoint
int openTime
float level
然後,您可以使用new()函數建立該類型的新物件:
newPivot = pivotPoint.new(time, high)
並使用點符號引用物件的欄位:
label.new(newPivot.openTime, newPivot.level, str.tostring(newPivot.level), xloc.bar_time)
物件的陣列或矩陣也可以使用由UDT建構的類型模板來定義:
pivotArray = array.new<pivotPoint>()
物件可以與所有其他Pine功能一起使用:您可以從程式庫中導出用戶定義的類型,從request.security()函數請求物件等等。例如:以前回傳十個值的元組的函數,現在可以回傳包含十個欄位的單個物件。
您可以在我們的用戶手冊的物件頁面中找到新功能的詳細概述。
查看以下使用物件的腳本:
HeWhoMustNotBeNamed的心電圖圖表指標

TradingView的ZigZag程式庫,以及為使用它而重寫的內建ZigZag指標:

要隨時了解新的Pine Script®功能,請留意用戶手冊的發行說明。PineCoders帳戶透過其Telegram上的Squawk Box、Twitter帳戶以及TradingView上的Pine Script® Q&A公開聊天室更新。
我們希望您發現這個功能很實用。請繼續向我們發送您的反饋和改進建議。我們為您建構TradingView,我們始終渴望收到您的來信。