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

閱讀時間約 5 分鐘
  • 文內如有投資理財相關經驗、知識、資訊等內容,皆為創作者個人分享行為。
  • 有價證券、指數與衍生性商品之數據資料,僅供輔助說明之用,不代表創作者投資決策之推介及建議。
  • 閱讀同時,請審慎思考自身條件及自我決策,並應有為決策負責之事前認知。
  • 方格子希望您能從這些分享內容汲取投資養份,養成獨立思考的能力、判斷、行動,成就最適合您的投資理財模式。
首先先來介紹一下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指標策略程式碼逐行解說
inputs: lenRSI(14), lenFILTER(12);
vars: valueRSI(0), filterRSI(0);
宣告「參數(inputs)」以及宣告「變數(vars)」
在運作程式碼的時候不會改變的,我們稱作「參數(inputs)」
會隨著程式碼運作而改變的,我們稱作「變數(vars)」

valueRSI = RSI(C, lenRSI);
filterRSI = XAverage(C, lenFILTER);
除了使用Multicharts內建的技術指標RSI函數
我們又為這個策略加上了一個簡單的濾網filterRSI
我們首先介紹 RSI內建指標函數valueRSI = RSI(C, lenRSI);
valueRSI 是我們自己取名用來存放RSI數值的變數(vars)
RSI(c, lenRSI) 函數中的RSI是Multicharts內建的名字,不能更改
用RSI()內建函數,Multicharts會直接帶入上段的公式,直接算出RSI的值
C值 是引用當根K棒的收盤價(O是當根開盤價H是當根最高價L是當根最低價)
lenRSI 則是我們自行宣告的參數,就是n根K棒內的n,這個範例設定為12
接著我們來介紹這個簡單的濾網filterRSI = XAverage(C, lenFILTER);
filterRSI 是我們自行取名宣告的變數,用來存放數值
XAverage() 是Multicharts的內建指數平均函數
相較於我們在一般看盤軟體看到的普通均線
指數平均 更能及時反映行情的均線,因為它的公式,會把更近期的價格權重加重
C值 依然是我們當根K棒的收盤價
lenFILTER 則是我們自行宣告的參數,n根K棒的指數平均的n值,範例設定為12

if valueRSI>80 and C>filterRSI then buy next bar market;
if valueRSI<20 and C<filterRSI then sellshort next bar market;
這段程式碼則是我們的進出場訊號
我們用 <if...then...> 條件式撰寫訊號
if valueRSI>80 and C>filterRSI then buy next bar market;
"如果RSI值大於80 而且 收盤價大於12根K棒指數平均 則 在下根K棒用市價做多"
if valueRSI<20 and C<filterRSI then sellshort next bar market;
"如果RSI值小於20 而且 收盤價小於12根K棒指數平均 則 在下根K棒用市價做空"
有些人會在 next bar 後面加上 at,然後才是market;
其實兩個寫法都是對的,at 在語法運用上沒有作用,是輔助我們便於閱讀的!

這樣,我們就完成了最基本的RSI指標策略
接著我們可以用這樣簡單的進出場條件
Multicharts去做績效回測
看看原始的RSI指標策略是不是真的能夠賺錢?
並且使用Multicharts的強項最佳化參數,去修正我們的策略參數
當然還有不可或缺的停損停利以及交易濾網
都將在之後一一介紹!

最後把上面分段的程式碼整理在一起
方便投資朋友直接複製貼在PowerLanguage Editor上!
inputs: lenRSI(14), lenFILTER(12);
vars: valueRSI(0), filterRSI(0);
valueRSI = RSI(C, lenRSI);
filterRSI = XAverage(C, lenFILTER);
if valueRSI>80 and C>filterRSI then buy next bar market;
if valueRSI<20 and C<filterRSI then sellshort next bar market;

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

⭐目前凱龍承接三大項業務,歡迎洽詢:
  1. 金融量化系列|凱龍下單機租用 & TradngView & MultiCharts 程式碼諮詢撰寫
  2. Line官方系列|凱龍Line官方模組租用 & Line官方機器人全系列諮詢架設
  3. 網站SaaS平台|凱龍雲端應用 & 網站SaaS平台諮詢架設
⭐凱龍Line官方:@979qbbfo
⭐凱龍官方網站:https://kevinwtf524.com/
即將進入廣告,捲動後可繼續閱讀
為什麼會看到廣告
18會員
17內容數
嗨!我是凱龍負責人Kevin ⭐️軟體租用 《凱龍下單機.TradingView下單台指期》 $990起/月 《凱龍訂餐模組.Line@訂餐》 $690/月 ⭐️軟體客製項目 《金融程式交易策略》 《官方Line@機器人》 《網站SaaS平台》 ⭐️凱龍官方Line @979qbbfo
留言0
查看全部
發表第一個留言支持創作者!
你可能也想看
Google News 追蹤
Thumbnail
這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
Thumbnail
這篇來淺談Multicharts和XQ的基本差異 基本知識 在講差異前,先讓大家知道,程式交易或是量化分析的軟體,其實是有很多選擇的。 當然,每種選擇會有不同的上手難度,以及費用。 通常越底層的語言,上手難度會越難,相對的,靈活性也會比較高。 反之,越高階的語言,上手難度越低,但靈活度
Thumbnail
交易訊不會無中生有、憑空想像而出現,通常會將想要觀察的指標疊加在線圖上,再由圖上去找買賣規則的靈感,此篇就以前二篇開發連續創高或連續創低的指標來開發交易訊號。
Thumbnail
在軟體工程中強調架構的延展性、維護性及重用性,將運算邏輯先寫成函式就是為了提高重用及維護,軟體界在這樣的發展下,開發出許多通用的套件,使得許多程式開發者可以利用套件來提升開發速度及穩定度,就如同現在的微波食品,想要煮一桌菜,不用自己從買食材開始、處理食材、料理食物、擺盤上桌⋯⋯等步驟,只需將買來的調
Thumbnail
廣告常說:「男人過了四十歲,只剩一張嘴。」,連續二天的話當年後,要開始進入程式交易的主題,雖然前文描述是使用TradeStation為開發平台,但後來TS已轉為美國國內券商使用,在台灣MultiChart(以下簡稱MC)已成為主流的平台,雖然在使用上還是有許多雷區要避開,但平心而論,這平台算是程式初
Thumbnail
安裝好券商版的MultiCharts(以下簡稱MC)後,可在桌面上看到四個ICON,在筆者依初學者使用的頻率,由左至右排列,分別是MC主程式(MultiCharts 64)、MC程式編輯器(MultiCharts64 PowerLanguage Editor)、MC最佳化結果檢視器(Mult
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
RSI值 = [設定周期內的漲幅平均值 ÷( 設定周期內的漲幅平均值 +設定周期內的跌幅平均值 )] × 100 RSI1、RSI2、RSI3分別對應6日、12日、24日。 RSI值介乎0-100之间呈常态分配。6日RSI 在80以上或15以下,可能出现反转讯号。
Thumbnail
均線指標在明顯趨勢特別好用,但是盤整階段就很不適合使用趨勢指標。因此,判斷趨勢開始與結束,就是程式交易做趨勢策略的重中之重。今天我們使用CCI策略來搭配,幫助我們尋找趨勢波段的起點。
Thumbnail
這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
Thumbnail
這篇來淺談Multicharts和XQ的基本差異 基本知識 在講差異前,先讓大家知道,程式交易或是量化分析的軟體,其實是有很多選擇的。 當然,每種選擇會有不同的上手難度,以及費用。 通常越底層的語言,上手難度會越難,相對的,靈活性也會比較高。 反之,越高階的語言,上手難度越低,但靈活度
Thumbnail
交易訊不會無中生有、憑空想像而出現,通常會將想要觀察的指標疊加在線圖上,再由圖上去找買賣規則的靈感,此篇就以前二篇開發連續創高或連續創低的指標來開發交易訊號。
Thumbnail
在軟體工程中強調架構的延展性、維護性及重用性,將運算邏輯先寫成函式就是為了提高重用及維護,軟體界在這樣的發展下,開發出許多通用的套件,使得許多程式開發者可以利用套件來提升開發速度及穩定度,就如同現在的微波食品,想要煮一桌菜,不用自己從買食材開始、處理食材、料理食物、擺盤上桌⋯⋯等步驟,只需將買來的調
Thumbnail
廣告常說:「男人過了四十歲,只剩一張嘴。」,連續二天的話當年後,要開始進入程式交易的主題,雖然前文描述是使用TradeStation為開發平台,但後來TS已轉為美國國內券商使用,在台灣MultiChart(以下簡稱MC)已成為主流的平台,雖然在使用上還是有許多雷區要避開,但平心而論,這平台算是程式初
Thumbnail
安裝好券商版的MultiCharts(以下簡稱MC)後,可在桌面上看到四個ICON,在筆者依初學者使用的頻率,由左至右排列,分別是MC主程式(MultiCharts 64)、MC程式編輯器(MultiCharts64 PowerLanguage Editor)、MC最佳化結果檢視器(Mult
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
RSI值 = [設定周期內的漲幅平均值 ÷( 設定周期內的漲幅平均值 +設定周期內的跌幅平均值 )] × 100 RSI1、RSI2、RSI3分別對應6日、12日、24日。 RSI值介乎0-100之间呈常态分配。6日RSI 在80以上或15以下,可能出现反转讯号。
Thumbnail
均線指標在明顯趨勢特別好用,但是盤整階段就很不適合使用趨勢指標。因此,判斷趨勢開始與結束,就是程式交易做趨勢策略的重中之重。今天我們使用CCI策略來搭配,幫助我們尋找趨勢波段的起點。