【如何用Trading View 運用不同技術指標寫交易策略】
教授pine script 時最多新手問的就是一些主要的技術指標如何去寫,當你最初練習pine script時就先用一些常用的技術指標來試試寫策略,到熟習後,即使一些未見過的技術指標,只要你在google找到指標的公式,也能自行寫出來。 例如,MACD是內置的指標,第一步是記得trading view的內置指標是要加上「ta.」的,寫法如下 macdLine,signalLine,_=ta.macdclose,12,26,9 再要把MACD的快線在圖表上顯示,就用plot這個功能,寫法如下 plotmacdLine,title=quot;MACDLINEquot;,color=color.red,linewidth=1 不過,有些指標可能並非內置的,又或即使是內置,但你習慣了自行寫出來,假設大家不懂得什麼是bollingerrsquo;s band,然後在網上找到它的公式就是通道的頂部是20日平均線加上兩個標準差,而底部是20日平均線減去兩個準差,那我們就可以自己寫出來。 例如平均線是SMA,要寫出來就要加上「ta.」,先想一個名稱給你每個要計算的答案,什麼名稱都可以,但名稱不可以用數字開頭。例如你想叫平均線的名稱做SMA20,就用以下的寫法 sma20=ta.smaclose,20 然後又給標準差一個名稱,假設你叫它為ST,那寫法如下 st=ta.stdevclose,20 然後再分別給多通道的頂部及底部名稱,假設叫做upper及lower upper = sma20 2st lower = sma20 ndash; 2st 寫法就是這樣簡單,然後upper及lower就可以用作其他計算的部份,例如你的入市策略是最高價升穿bollingerrsquo;s band 達5%,那寫法如下 先給你的入市條件一個名稱,假設名為buyCondition,也給upper高5%的情況一個名稱,假設是upperhigh uppperhigh=upper1.05 buyCondition=ta.crossoverhigh,upperhigh 此外,其他我們常見的技術指標如RSI, ATR等也是內置的,寫法同樣是先給它們一個名稱,例如你想叫它們做rs及atrValue,寫法如下 rs=ta.rsiclose,14 atrValue=atr14 其他有些主要常用的技術指標也要自行計算的,如Stochastic,寫法如下 @version=5 indicatorquot;stochasticquot; stcLength=input14 periodK=input3 periodD=input3 fastSTC=ta.stochclose,high,low,stcLength slowK=ta.smafastSTC,periodK slowD=ta.smaslowK,periodD plotslowK,title=quot;slowKquot;,color=color.red,linewidth=1 plotslowD,title=quot;slowDquot;,color=color.blue,linewidth=1 我們再試試寫Rate of change這個指標,先在網上找到它的公式如下 然後大家可自行先用Trading View 先試試寫出來才看答案,若沒有寫錯,那寫指標這部份的學習便沒有問題了。 Rate of change寫法答案 length = input.int9 source = inputclose roc_smooth = input5 roc = ta.sma100 source sourcelengthsourcelength,roc_smooth 最後我們看看super Trend這個指標的寫法,有些時候我們希望指標的參數是可以寫好後直接在圖表上更改的,又或有幾個指標的參數也是一樣的,我們會重覆使用,那就先給參數一個名稱,例如叫做length,可以參考以下superTrend這個指標的寫法 @version=5 indicatorquot;SuperTrendquot;, overlay=true length = 10 multiplier = 3 atr = ta.atr1 basis = ta.highesthigh, length ta.lowestlow, length basis = basis 2 upperBand = basis multiplier atr lowerBand = basis multiplier atr trendUp = close gt; upperBand1 true close1 gt; upperBand1 true false trendDown = close lt; lowerBand1 true close1 lt; lowerBand1 true false plottrendUp upperBand lowerBand, color=color.blue, linewidth=2, title=quot;SuperTrendquot; 這裏用了「 」這種寫法,前是條件,後是若符合條件要怎樣,而後則是若不符合條件要怎樣,若大家看其他Tradind View用家寫的策略,這是十分常見的寫法。 trendDown = close lt; lowerBand1 true close1 lt; lowerBand1 true false 這個的意思就是trendDown是名稱,然後看看收市價是否小於上一支陰陽燭的supertrend的底部,若符合條件就是true,否則就再看看上一支陰陽燭的收市價是否低於上一支陰陽燭的supertrend的底部,若符合條件,也是true,但兩個條件也不符合就是false。 我們網頁 www.quants.hk Youtube httpswww.youtube.com@markchunwai Facebook專頁 httpswww.facebook.comquantshk Patreon httpswww.patreon.comquantshk