官术网_书友最值得收藏!

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ù)聲明。

主站蜘蛛池模板: 竹北市| 无棣县| 北川| 封丘县| 汝城县| 定南县| 房山区| 樟树市| 吐鲁番市| 枞阳县| 娱乐| 桦南县| 汤原县| 商洛市| 彰化县| 井陉县| 吉水县| 久治县| 利川市| 冀州市| 保德县| 郯城县| 菏泽市| 嘉善县| 徐水县| 榆社县| 莲花县| 肇东市| 济源市| 衡东县| 蒙阴县| 芜湖市| 宁明县| 闻喜县| 寿宁县| 屏东市| 修武县| 定南县| 历史| 遂溪县| 紫云|