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

閱讀時間約 8 分鐘
  • 文內如有投資理財相關經驗、知識、資訊等內容,皆為創作者個人分享行為。
  • 有價證券、指數與衍生性商品之數據資料,僅供輔助說明之用,不代表創作者投資決策之推介及建議。
  • 閱讀同時,請審慎思考自身條件及自我決策,並應有為決策負責之事前認知。
  • 方格子希望您能從這些分享內容汲取投資養份,養成獨立思考的能力、判斷、行動,成就最適合您的投資理財模式。
我們首先,先介紹一下MACD的公式及原理
快線:12根價格指數平均線
慢線:26根價格指數平均線
macd: 快線-慢線
signal: 9根的macd指數平均線
柱狀體:macd-signal

MACD最原始的策略
當柱狀體由負值轉正,我們做多
當柱狀體由正值轉負,我們做空
但隨著時代的演進,MACD的運用早已變幻莫測
但我們今天先以原始型態來做介紹

在了解MACD交易理念後,我們就來一窺TradingView pine script語法
//@version=5
strategy(title="MACD strategy", overlay=false)
跟Multicharts不同的是,pine script不需要先宣告參數以及變數
"//"後的是註記文字,不會被編程,這裡的@version=5是註記使用版本五
版本五與版本四語法上會稍有不同,這裡介紹將以版本五為主
strategy( )函數是一個pine script內建函數,用來設定策略的基本設置
title="MACD strategy" 是將策略名稱設定為"MACD strategy"
overlay=false 是將MACD指標線置於圖表下方,不要重疊於圖表

fastLen = input.int(title="Fast Length", defval=12)
slowLen = input.int(title="Slow Length", defval=26)
signalLen = input.int(title="Signal
Length", defval=9)
設置這個區域的程式碼,是為了讓我們能直接在版面上調整參數
input.int( )是設置了一個能輸入整數數字的參數輸入選項
title="" 是設置了這個參數的名稱
defval=12 則是為這個參數設置了Default Value,這個示範為12根K棒

fastMA = ta.ema(close, fastLen)
slowMA = ta.ema(close, slowLen)
macd = fastMA - slowMA
signal = ta.ema(macd, signalLen)
這個區塊的程式碼主要要介紹 ta.ema() 這個內建函數
"ta"是"Technical Analysis"的縮寫,是pine script內建的技術指標函數
而ema則與我們Multicharts的XAverage一樣,是指數平均函數
指數平均函數跟我們一般平均函數的差別是
指數平均函數會把近期的價格加權加重,如此一來會使得指數均線更加貼近行情
使用指數平均是MACD的預設設定

plot(macd, color=color.blue, title="MACD")
plot(signal, color=color.red, title="Signal")
plot( )跟Multicharts一樣是畫上指標的函數
plot(macd, color=color.blue, title="MACD")
第一個參數是欲使用的變數,第二個參數是指標顏色
也可以用color.rgb(***, ***, ***)來調整細節顏色
第三個參數則是為這個指標設定一個名稱

buySignal = ta.crossover(macd, signal)
if (buySignal)
strategy.entry("Buy", strategy.long)
sellSignal = ta.crossunder(macd, signal)
if (sellSignal)
strategy.entry("Sell", strategy.short)
buySignal = ta.crossover(macd, signal)
這段是程式碼是編寫買進訊號(buySignal),其輸出為布林值,即True和False
並運用pine script內建ta.crossover(macd, signal)函數
表達macd柱狀體由負值轉正,亦即macd大於signal的那個瞬間
ta.crossover(參數一, 參數二)
即是放在前面的參數一大於參數二的那個瞬間叫做crossover
前後位置預設的,編寫的時候要注意不要把前後順序搞錯了!
strategy.entry("Buy", strategy.long)則是如此表達
第一個參數"Buy"是會顯示在圖表上的名稱
第二個參數則是表達進場多單
這一區塊程式碼要特別注意的是
pine script的"if條件式"是不需要":"或者"then"等等的條件式編寫
甚至連在這個範例舉出的"if (buySignal)"中的"( )"都不是必要的!
但還是建議可以加上括號,避免在整理及維護的時候難於閱讀

那我們這裡就詳細的介紹完了這個用pine script撰寫的MACD策略
TradingView是一個非常非常強大的看盤軟體
在國際間享負盛名
在之後的文章中
除了用pine script介紹策略程式碼
也將介紹一些實用的TradingView使用小訣竅

最後把上面各段的程式碼整理並放在下面
方便各位複製直接貼在TradingView編輯介面,並按下右上角的「新增到圖表」
這樣就可以直接檢視這個MACD策略的績效
//@version=5
strategy(title="MACD strategy", overlay=false)
fastLen = input.int(title="Fast Length", defval=12)
slowLen = input.int(title="Slow Length", defval=26)
signalLen = input.int(title="Signal Length", defval=9)
fastMA = ta.ema(close, fastLen)
slowMA = ta.ema(close, slowLen)
macd = fastMA - slowMA
signal = ta.ema(macd, signalLen)
plot(macd, color=color.blue, title="MACD")
plot(signal, color=color.red, title="Signal")
buySignal = ta.crossover(macd, signal)
if (buySignal)
    strategy.entry("Buy", strategy.long)
sellSignal = ta.crossunder(macd, signal)
if (sellSignal)
    strategy.entry("Sell", strategy.short)

尚未註冊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
TradingView 是一個供交易者、投資人、教育者和市場愛好者交流、分享想法並討論市場的平臺,提供專業級的交易工具和即時的市場數據。它不僅僅是一個圖表軟件,更是一個強大的社群。本文介紹了 TradingView 的優勢和功能,以及如何使用它來提升投資決策。
Thumbnail
MACD指標是一個非常流行的技術指標,可用來分析股價的趨勢和動量。它的選股原則、優點和缺點都需要深入了解,才能充分利用它提供的訊號。如果您是投資人,建議使用MACD指標時搭配其他指標使用,以提高分析的精度和可靠性。
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
MACD指標並非萬靈丹,用他來預測短期漲跌不見得每次都準確,但至少勝過我們裏面那個豪無依據的,用感覺來預測漲跌,或用射飛標來預測漲跌還來得有把握些。
Thumbnail
MACD的快慢線? 不好意思,還是要再複習一下喔! DIF(快線) MACD(慢線) 柱狀圖=DIF-MACD 然後柱狀圖在零軸上是紅(紅豆芽),零軸下是綠(綠豆芽) 今天要講的是快線(如圖黃色)跟慢線(如圖藍色)的應用,不過依老爹的觀察,用快慢線判斷的人比較少!
Thumbnail
MACD 你如果常常聽到討論股票的人在講什麼綠豆芽啊!紅豆芽啊!你一定很好奇這是什麼啊🤔? 就是MACD這個指標,以前用的人少,現在APP或者劵商軟體就有了,只要按一按就出現了,使用方法如下: 1.按副圖的選項 2、選MACD 3、豆芽菜出來了 DIF(快線) MACD(慢線)
Thumbnail
這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
Thumbnail
TradingView 是一個供交易者、投資人、教育者和市場愛好者交流、分享想法並討論市場的平臺,提供專業級的交易工具和即時的市場數據。它不僅僅是一個圖表軟件,更是一個強大的社群。本文介紹了 TradingView 的優勢和功能,以及如何使用它來提升投資決策。
Thumbnail
MACD指標是一個非常流行的技術指標,可用來分析股價的趨勢和動量。它的選股原則、優點和缺點都需要深入了解,才能充分利用它提供的訊號。如果您是投資人,建議使用MACD指標時搭配其他指標使用,以提高分析的精度和可靠性。
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
MACD指標並非萬靈丹,用他來預測短期漲跌不見得每次都準確,但至少勝過我們裏面那個豪無依據的,用感覺來預測漲跌,或用射飛標來預測漲跌還來得有把握些。
Thumbnail
MACD的快慢線? 不好意思,還是要再複習一下喔! DIF(快線) MACD(慢線) 柱狀圖=DIF-MACD 然後柱狀圖在零軸上是紅(紅豆芽),零軸下是綠(綠豆芽) 今天要講的是快線(如圖黃色)跟慢線(如圖藍色)的應用,不過依老爹的觀察,用快慢線判斷的人比較少!
Thumbnail
MACD 你如果常常聽到討論股票的人在講什麼綠豆芽啊!紅豆芽啊!你一定很好奇這是什麼啊🤔? 就是MACD這個指標,以前用的人少,現在APP或者劵商軟體就有了,只要按一按就出現了,使用方法如下: 1.按副圖的選項 2、選MACD 3、豆芽菜出來了 DIF(快線) MACD(慢線)