返回量化學程
Unit 4.2

TradingView Pine Script 程式交易入門與指標開發

學習如何使用 TradingView 專屬的 Pine Script 腳本語言,編寫屬於您的技術指標、自動化劃線,並為未來的程式化自動交易打下穩固基礎。


1. 什麼是 Pine Script?

Pine Script 是由 TradingView 官方開發的輕量級腳本語言。它的語法非常簡單好學,類似於 Python,但針對「金融圖表」與「技術指標」做了極致的優化。

以往在 Python 中需要寫上百行代碼才能載入歷史 K 線、計算均線並畫圖;但在 Pine Script 中,您只需要不到 5 行代碼,就能完美計算並繪製出一條自訂技術指標!

2. Pine Script 的兩大運行模式

在開始寫程式前,您必須區分 Pine Script 的兩種主要程式結構:

  • 指標 (indicator):用於在圖表上繪製視覺輔助工具。例如自訂的 MACD、多重均線通道或我們在配對交易中使用的 Z-Score 價差線。
  • 策略 (strategy):除了畫圖,還包含了「買入 (Buy)」與「賣出 (Sell)」的邏輯,可用於在歷史數據上自動執行交易模擬並跑出績效報表。

3. 實戰:編寫您的第一個 Pine 均線策略

我們以最經典的「黃金交叉與死亡交叉」均線策略為例。當 5 日均線往上突破 20 日均線時做多,往下突破時做空。以下是完整的 Pine Script 原始碼:

//@version=5
strategy("GugoPro 均線交叉戰術", overlay=true)

// 1. 設定輸入參數
fastLength = input.int(5, title="快線天數")
slowLength = input.int(20, title="慢線天數")

// 2. 計算移動平均線 (SMA)
fastMA = ta.sma(close, fastLength)
slowMA = ta.sma(close, slowLength)

// 3. 繪製均線到圖表上
plot(fastMA, color=color.aqua, title="快線")
plot(slowMA, color=color.orange, title="慢線")

// 4. 定義進出場交叉訊號
longCondition = ta.crossover(fastMA, slowMA)
shortCondition = ta.crossunder(fastMA, slowMA)

// 5. 執行策略模擬
if (longCondition)
    strategy.entry("做多", strategy.long)

if (shortCondition)
    strategy.close("做多")

4. 如何在 TradingView 中執行這段程式?

  1. 打開您的 **[TradingView 圖表頁面](https://www.tradingview.com/?aff_id=168714)**。
  2. 點選底部的 **「Pine 編輯器 (Pine Editor)」** 頁籤。
  3. 清除所有默認文字,將上方那段程式碼**複製並貼上**進去。
  4. 點擊右上角的 **「儲存 (Save)」**,接著點擊 **「添加到圖表 (Add to Chart)」**。
  5. 此時您的圖表上就會繪製出快慢均線,並且在底下會多出 **「策略測試器 (Strategy Tester)」** 看板,展示這套策略在過去歷史中的盈虧成效!

GugoPro 學員專屬推薦優惠

要在 TradingView 上編寫複雜的 Pine Script 程式,或是需要同時載入多個策略進行多視窗對照,您需要強大的進階功能。點選下方連結註冊,享 30 天免費試用與 15 美元 付費升級折扣!

立即註冊 TradingView 領取優惠 ➡️
上一單元: 配對交易實戰 下一單元: 策略回測與跟單實務