- 零基礎(chǔ)學(xué)Pine Script:基于TradingView平臺的量化分析
- 閻英姿
- 1366字
- 2023-11-28 18:39:04
2.2 Pine Script的腳本結(jié)構(gòu)
2.2.1 腳本結(jié)構(gòu)簡介
Pine Script的腳本結(jié)構(gòu)(Script Structure)可分為以下三部分。
(1)腳本頭部:通常包括開源軟件協(xié)議(Mozilla Public License)、作者和版本號。腳本頭部可以缺省,但強(qiáng)烈建議保留版本號“//@version=5”(當(dāng)前Version 5是最新版本),若未指定版本號,則系統(tǒng)默認(rèn)為“//@version=1”。
(2)主調(diào)函數(shù)indicator/strategy/library的函數(shù)聲明語句:在Pine Script中有三大主調(diào)函數(shù),即indicator、strategy和library。其中,indicator和strategy是Pine Script的兩大核心函數(shù),而library是Pine Script V5新增函數(shù),它既可以做主調(diào)函數(shù)也可以做被調(diào)函數(shù),可用于封裝、復(fù)用有特定功能的腳本,可以起到輔助作用。
(3)腳本主體:包含變量聲明、函數(shù)聲明、函數(shù)調(diào)用、用戶自定義函數(shù)的定義與調(diào)用、邏輯處理、數(shù)學(xué)運算、輸入與輸出等。
● 對于主調(diào)函數(shù)indicator,腳本主體必須至少包含一個圖形/圖表輸出函數(shù)。
● 對于主調(diào)函數(shù)strategy,腳本主體必須至少包含一句對函數(shù)strategy.*的調(diào)用。
● 對于主調(diào)函數(shù)library,腳本主體必須至少包含一句export函數(shù)聲明和一個圖形/圖表函數(shù)。
注
Pine Editor可自動生成基礎(chǔ)的腳本,用戶可以此作為框架編寫自己的腳本。
2.2.2 由Pine Editor自動生成的基礎(chǔ)腳本框架
在使用Pine Script時,用戶可以利用系統(tǒng)自動生成的基礎(chǔ)腳本作為框架,然后編寫自己的腳本。
在“Pine Editor”頁面中,單擊右上方的“Open”選項,在彈出的菜單中顯示了相應(yīng)選項,如圖2-5所示,這樣做可以使編寫腳本更加簡單和方便。

圖2-5 在Pine Editor頁面上的Open菜單下的選項
1)指標(biāo)函數(shù)indicator
在“Pine Editor”頁面中,單擊“Open”選項,在彈出的菜單中選擇“TEMPLATES→Indicator”選項,系統(tǒng)自動生成代碼,如下所示。

2)策略函數(shù)strategy
在“Pine Editor”頁面中,單擊“Open”選項,在彈出的菜單中選擇“TEMPLATES→Strategy”選項,系統(tǒng)自動生成代碼,如下所示。


3)庫函數(shù)library
在“Pine Editor”頁面中,單擊“Open”選項,在彈出的菜單中選擇“TEMPLATES→library”選項,系統(tǒng)自動生成代碼,如下所示。

2.2.3 腳本頭部
在“Pine Editor”頁面中,單擊“Open”選項,在彈出的菜單中選擇“TEMPLATES→Indicator”、“TEMPLATES→Strategy”或“TEMPLATES→Library”,新建indicator、strategy或library腳本。系統(tǒng)自動生成Strategy代碼,其中前4行代碼為標(biāo)準(zhǔn)的Pine Script頭部語句,如圖2-6所示。

圖2-6 標(biāo)準(zhǔn)的Pine Script頭部語句
標(biāo)準(zhǔn)的Pine Script頭部語句的注釋包括以下內(nèi)容。
● 第一行用于指定Pine Script代碼所遵循的開源代碼協(xié)議,通常為Mozilla Public License Version 2.0。
● 第二行包含用戶名,即腳本的創(chuàng)建者。
● 第三行為空白。
● 第四行“//@version=5”用于標(biāo)識當(dāng)前Pine Script的版本號,以便編譯器能夠正確識別。如果未指定版本號,則系統(tǒng)默認(rèn)為“//@version=1”,強(qiáng)烈建議保留版本號為“//@version=5”。
這些注釋語句的目的是提供有關(guān)Pine Script代碼的重要信息,例如使用的協(xié)議、腳本創(chuàng)建者、版本等,它們還提供了編譯器所需的信息,以確保代碼能夠正確編譯并在運行時正常工作。
2.2.4 主調(diào)函數(shù)indicator/strategy/library的聲明語句
在前文中,我們介紹過“在Pine Script中,有三大主調(diào)函數(shù)indicator、strategy和library”,而每個Pine Script腳本都必須有函數(shù)indicator、strategy或library的聲明語句。
2.2.5 腳本主體
腳本主體可以包含的語句有變量聲明、函數(shù)聲明、函數(shù)調(diào)用、用戶自定義函數(shù)的定義、邏輯處理、數(shù)學(xué)運算、輸入與輸出等。
注
當(dāng)編寫函數(shù)indicator、strategy和library的腳本時,需要遵守以下規(guī)則。
● indicator腳本必須至少包含一個圖形/圖表輸出函數(shù),如plot、plotshape、barcolor和line.new等。
● strategy腳本必須至少包含一句對函數(shù)strategy.*的調(diào)用,例如:strategy.entry、strategy.close等。此外,函數(shù)strategy還兼有函數(shù)indicator的功能,可以用于計算和輸出技術(shù)指標(biāo),并且生成圖形或圖表。因此,通過使用函數(shù)strategy,可以實現(xiàn)全面的交易策略分析和可視化。
● library腳本必須至少包含一個圖形/圖表輸出函數(shù)(這一點類似于indicator腳本),而且還需要至少包含一句export函數(shù)聲明。
- FuelPHP Application Development Blueprints
- Kibana Essentials
- 程序設(shè)計與實踐(VB.NET)
- 數(shù)據(jù)結(jié)構(gòu)簡明教程(第2版)微課版
- HTML5+CSS3網(wǎng)站設(shè)計教程
- Java EE 7 Development with NetBeans 8
- C++程序設(shè)計基礎(chǔ)教程
- 程序是怎樣跑起來的(第3版)
- Learning Vaadin 7(Second Edition)
- 0 bug:C/C++商用工程之道
- D3.js By Example
- UNIX Linux程序設(shè)計教程
- 詳解MATLAB圖形繪制技術(shù)
- Visual Basic 6.0程序設(shè)計實驗教程
- Scala編程(第5版)