【TradingView】【RSI指標策略】程式碼逐條解說

更新於 2024/08/16閱讀時間約 9 分鐘
  • 文內如有投資理財相關經驗、知識、資訊等內容,皆為創作者個人分享行為。
  • 有價證券、指數與衍生性商品之數據資料,僅供輔助說明之用,不代表創作者投資決策之推介及建議。
  • 閱讀同時,請審慎思考自身條件及自我決策,並應有為決策負責之事前認知。
  • 方格子希望您能從這些分享內容汲取投資養份,養成獨立思考的能力、判斷、行動,成就最適合您的投資理財模式。
首先先來介紹一下RSI的公式跟原理
RSI (相對強弱指標) = 100*n根K棒內漲幅加總/n根內漲幅加總+n根內跌幅加總)
其實RSI的原理非常簡單,舉例:n若為5根K棒,其中三根漲,漲幅分別為2點、5點及7點,兩根跌,跌幅分別為4點及7點
套用公式即可得到RSI為:100*(2+5+7)/[(2+5+7)+(4+7)]=56
RSI指標表達出,近n根K棒內,買方對盤勢的相對強勢程度。但RSI用在小型股時要特別注意,由於小型股價格較容易操縱,要檢視漲勢是否為曇花一現,以上例來說,若五根內只有一根漲,但漲幅為40點,其他四根跌幅分別為2點、4點、7點以及8點
其RSI將為:100*40/[40+(2+4+7+8)]=66,還是相對高。此時可以回看那根大漲是否為曇花一現的消息面漲幅,待消息消散,是否仍會持續看漲!

在了解RSI基本原理及公式之後
我們就可以進入Tradingview的程式碼講解環節
//@version=5
strategy("RSI Strategy", overlay=true)
//@version=5 是告訴TradingView該用哪種版本編譯這次的程式碼
我們之後都會用version5來講解策略範例
strategy()是宣告這個策略的基本設定函數
第一個參數"RSI Strategy"則是將這個策略取名
第二個參數overlay則是設定是否把這個策略覆蓋在圖表上面
我們設定為overlay=true,即把進出場訊號標在K棒上面

length = input.int(title="Length", defval=14)
oversold = input.int(title="Oversold", defval=20)
overbought = input.int(title="Overbought", defval=80)
首先,我們先設定三個變數length、oversold還有overbought
分別為rsi的週期長度、超賣區以及超買區
input.int()函數,它是建立一個input物件並利用其中的方法int
建立input物件的好處是能讓我們事後在平台軟體上就可以修改參數
不用再回來原始碼這裡修改代碼
int則是integer的縮寫,即是這個參數需要為整數
然而,三行代碼的頭一個參數title都是設定名稱
第二個參數defval是default value的縮寫
也就是這個數值的預設值,譬如rsi預設取14天,defval就設定為14
同理,oversold跟overbought各自預設為20以及80

rsiValue = ta.rsi(close, length)
buySignal = ta.crossover(rsiValue, overbought)
sellSignal = ta.crossunder(rsiValue, oversold)
ta.rsi()函數是利用TradingView內建的ta(Technical Analysis)物件
這個內建物件可以直接把rsi的值帶出來
我們只需要設定rsi指標的close以及length參數
close即是設定rsi要用成交價計算
length則是我們要取的rsi期間,我們這次舉例預設為14天
接下來我們設定buySignal買進訊號以及sellSignal賣出訊號
用TradingView內建物件ta裡面的crossover方法
crossover方法即為「第一個參數向上穿越超買區overbought」的那根K棒
crossunder方法即為「第一個參數向下穿越超賣區oversold」的那根K棒
(我們這次的範例是用順勢策略作示範)
讀者會發現後面第二個參數都是我們在上一段設定的值
分別為length、overbought跟oversold
上一段先宣告這三個變數,就是為了在此建立訊號用

if (buySignal)
    strategy.entry("Buy", strategy.long)
if (sellSignal)
    strategy.entry("Sell", strategy.short)
這一段就是建立進出場訊號了!
跟絕大部分程式交易語法一樣,都是建立if條件式
if 後面就是利用我們上一段建立的buySignal成立條件
後面則是用TradingView內建物件strategy裡的進場方法,即strategy.entry()
第一個參數"Buy"是幫這個訊號取名
他會在進場的時候把這時候取的名稱標記在圖表上
第二個參數strategy.long即為進一口多單,同理可推第二段空單進場!
這裡要特別注意的是,就像Multicharts的語法buy跟sellshort一樣
這裡的strategy.long跟strategy.short也都會直接反向建倉
譬如現在持有一口多單,策略偵測到空頭訊號,會直接下兩口空單
部位會直接變成一口空單,即不會有空手的階段
這是一個策略的最初雛形,尚未有停損停利設定的最原始狀態

plotshape(buySignal, style=shape.triangleup, 
location=location.belowbar, color=color.green, size=size.small)
plotshape(sellSignal, style=shape.triangledown, 
location=location.abovebar, color=color.red, size=size.small)
這一段我們來幫訊號標(plot)上圖表吧
plotshape()函數是將零星的標示標於圖表的函數
第一個參數buySignal即為欲標記的情形,即是我們上面所設定的"買進訊號"
第二個參數style即為當第一個參數設定的訊號出現時,出現的標記圖形形狀
(這裡要特別注意的是,跟上一段的"Buy"會標記在圖表不一樣,譬如現在手上有一口多單,因為我們預設最多一口,此時又出現buySignal就不會再出現"Buy",而只會出現我們現在在這裡設定的buySignal的標示)
第三個參數location是設定希望上一個參數設定的圖案要置於K棒上方還是下方
color參數則為設定標示顏色,此座標TradingView很貼心
可以直接用滑鼠選顏色,各位客官用了就知道!
size參數則為設定標示圖形大小,除了我們這個範例設定為small
它還可以設定為huge、large、normal以及tiny,由大到小排列
然而sellSignal同理可推,讀者可以自行做上下程式碼的比較!

那這樣我們就完成了今天在TradingView上用pine script程式碼的演示!
這裡把整段程式碼貼在下面,方便讀者可以一次複製
直接貼在TradingView編碼視窗,然後按「新增到圖表」就會跑出策略績效了
//@version=5
strategy("RSI Strategy", overlay=true)
length = input.int(title="Length", defval=14)
oversold = input.float(title="Oversold", defval=20)
overbought = input.float(title="Overbought", defval=80)
rsiValue = ta.rsi(close, length)
buySignal = ta.crossover(rsiValue, overbought)
sellSignal = ta.crossunder(rsiValue, oversold)
if (buySignal)
    strategy.entry("Buy", strategy.long)
if (sellSignal)
    strategy.entry("Sell", strategy.short)
plotshape(buySignal, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small)
plotshape(sellSignal, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)
讀者要注意,要複製到右下角的程式碼喔,不要漏掉了!

尚未註冊TrdingView的投資朋友歡迎使用Kevin專屬註冊連結:
享一個月免費試用Premium帳號,到期後可享50%的續約優惠!
(即使不續約,仍可繼續使用TradingView免費版功能)

⭐目前凱龍承接三大項業務,歡迎洽詢:
  1. 金融量化系列|凱龍下單機租用 & TradngView & MultiCharts 程式碼諮詢撰寫
  2. Line官方系列|凱龍Line官方模組租用 & Line官方機器人全系列諮詢架設
  3. 網站SaaS平台|凱龍雲端應用 & 網站SaaS平台諮詢架設
⭐凱龍Line官方:@979qbbfo
⭐凱龍官方網站:https://kevinwtf524.com/
avatar-img
19會員
17內容數
嗨!我是凱龍負責人Kevin ⭐️軟體租用: 《凱龍下單機·TradingView下單台指期》 $545起/月 《凱龍訂餐模組·Line@機器人》 $690/月 ⭐️軟體客製: 《金融量化客製》 《Line@機器人客製》 《各類網站客製》 ⭐️凱龍官方Line @979qbbfo
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
你可能也想看
Google News 追蹤
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
TradingView 是一個供交易者、投資人、教育者和市場愛好者交流、分享想法並討論市場的平臺,提供專業級的交易工具和即時的市場數據。它不僅僅是一個圖表軟件,更是一個強大的社群。本文介紹了 TradingView 的優勢和功能,以及如何使用它來提升投資決策。
Thumbnail
TradingView 最特別的功能之一,就屬讓 USER 可以在 Pine編輯器上開啟查看指標腳本的開源碼,如想增修可 copy後,另命檔名存入Γ我的腳本˩後,才能修改。 就介紹其步驟如下 :   ●尋找公開的TradingView 指標、策略腳本 https://www.t
Thumbnail
●國內常見的傳統型指標看盤軟體不外下列幾款 1. TradingView 2. Goodinfo!台灣股市資訊網 3. 三竹股市 4. 嗨!投資(Hi Stock) 5. 財報狗選股 6. 籌碼K線 7. XQ全球贏家 9. 券商的看盤軟體   其中以TradingVie
Thumbnail
Mr.T今天要來介紹 Tradingview 上相當有名的腳本開發師LuxAlgo所開發的一個新策略Liquidity Price Depth Chart,在Tradingview 上是免費開源的社群腳本,廢話不多說,直接進入正題! ——————————————————— 先大概了解 要介紹什麼
Thumbnail
一般的旗型整理,可能三角,可能四方,比較罕見的是喇叭型 大致如圖所示,進場點在黃圈 三角形做簡單,罕見的喇叭型先不討論, 今天我們著重在四方旗型,特別是向下四方旗。 之所以難,因為它起初看似符合空頭特徵,是一種騙線洗盤手段,就算是老手都常常被唬弄。 實際案例如南電,看得出來嗎? 加上高/
Thumbnail
在上一篇我們做完macd指標之後,可以發現macd每次金叉死叉不會說很準 所以我們這時候可以再加上rsi進行指標的雙重判斷,這不僅僅增加指標的可信度 也加強我們在抓關鍵k棒的位置 step1: 在腳本上加上rsi指標 rsi在pine裡面的內建函式長這樣(收盤價,14) step2: 判斷rsi信號
Thumbnail
甚麼是 RSI 指標? RSI 指標的原理是通過計算過去某一段時間買賣雙方的力道,來判斷最近的漲跌屬於偏強還是偏弱。 使用 RSI 可以在市場中看出以下資訊: 該價格屬於偏強還是偏弱、價格反轉的警告訊號、多空力道的平衡 RSI 的超買與超賣判斷 超買: 當 RSI 值 > 70 以上,代表市場過熱,
Thumbnail
您知道什麼是 RSI 指標嗎!? 這是一部適合剛入門股市的新手 從 RSI 背離、RSI 黃金交叉、RSI 死亡交叉,各種情境全都看! 讓您一次瞭解各種情境的變化!
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
TradingView 是一個供交易者、投資人、教育者和市場愛好者交流、分享想法並討論市場的平臺,提供專業級的交易工具和即時的市場數據。它不僅僅是一個圖表軟件,更是一個強大的社群。本文介紹了 TradingView 的優勢和功能,以及如何使用它來提升投資決策。
Thumbnail
TradingView 最特別的功能之一,就屬讓 USER 可以在 Pine編輯器上開啟查看指標腳本的開源碼,如想增修可 copy後,另命檔名存入Γ我的腳本˩後,才能修改。 就介紹其步驟如下 :   ●尋找公開的TradingView 指標、策略腳本 https://www.t
Thumbnail
●國內常見的傳統型指標看盤軟體不外下列幾款 1. TradingView 2. Goodinfo!台灣股市資訊網 3. 三竹股市 4. 嗨!投資(Hi Stock) 5. 財報狗選股 6. 籌碼K線 7. XQ全球贏家 9. 券商的看盤軟體   其中以TradingVie
Thumbnail
Mr.T今天要來介紹 Tradingview 上相當有名的腳本開發師LuxAlgo所開發的一個新策略Liquidity Price Depth Chart,在Tradingview 上是免費開源的社群腳本,廢話不多說,直接進入正題! ——————————————————— 先大概了解 要介紹什麼
Thumbnail
一般的旗型整理,可能三角,可能四方,比較罕見的是喇叭型 大致如圖所示,進場點在黃圈 三角形做簡單,罕見的喇叭型先不討論, 今天我們著重在四方旗型,特別是向下四方旗。 之所以難,因為它起初看似符合空頭特徵,是一種騙線洗盤手段,就算是老手都常常被唬弄。 實際案例如南電,看得出來嗎? 加上高/
Thumbnail
在上一篇我們做完macd指標之後,可以發現macd每次金叉死叉不會說很準 所以我們這時候可以再加上rsi進行指標的雙重判斷,這不僅僅增加指標的可信度 也加強我們在抓關鍵k棒的位置 step1: 在腳本上加上rsi指標 rsi在pine裡面的內建函式長這樣(收盤價,14) step2: 判斷rsi信號
Thumbnail
甚麼是 RSI 指標? RSI 指標的原理是通過計算過去某一段時間買賣雙方的力道,來判斷最近的漲跌屬於偏強還是偏弱。 使用 RSI 可以在市場中看出以下資訊: 該價格屬於偏強還是偏弱、價格反轉的警告訊號、多空力道的平衡 RSI 的超買與超賣判斷 超買: 當 RSI 值 > 70 以上,代表市場過熱,
Thumbnail
您知道什麼是 RSI 指標嗎!? 這是一部適合剛入門股市的新手 從 RSI 背離、RSI 黃金交叉、RSI 死亡交叉,各種情境全都看! 讓您一次瞭解各種情境的變化!