【Multicharts】【MACD策略】程式碼逐條解說

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

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

inputs: fastLength(12), slowLength(26), MACDLength(9);
vars: emaFast(0), emaSlow(0), macd(0), signal(0);
宣告「參數(inputs)」以及「變數(vars)」
在運作程式碼的時候不會改變的,我們稱作「參數(inputs)」
會隨著程式碼運作而改變的,我們稱作「變數(vars)」

emaFast = XAverage(close, fastLength);
我們利用Multicharts內建的XAverage()函數計算12天(使用已宣告參數fastLength)的收盤價(close)指數平均

emaSlow = XAverage(close, slowLength);
我們利用Multicharts內建的XAverage()函數計算26天(使用已宣告參數slowLength)的收盤價(close)指數平均

macd = emaFast - emaSlow;
我們將上兩段程式碼求得的快線(emaFast)減去慢線(emaSlow)
得到變數macd值

signal = XAverage(macd, MACDLength);
我們用上一段程式碼求得的macd值,用內建函數XAverage()做9天(使用已宣告參數MACDLength)做指數平均,得到變數signal

if macd > signal and macd[1] <= signal[1] 
  then buy next bar market;
我們利用「if...then...」運算式,寫入做多進場訊號
「若今日的macd變數大於今日的signal變數 且 昨日的macd變數小於等於昨日的signal變數,我們在下一根K棒用市價做多一口」
亦即當今日柱狀體(macd-signal)轉正值,而且昨日的柱狀體(macd-signal)小於等於0,我們進場做多單
即是macd黃金交叉signal,做多

if macd < signal and macd[1] >= signal[1] 
  then sellshort next bar market;
「若今日的macd變數小於今日的signal變數 且 昨日的macd變數大於等於昨日的signal變數,我們在下一根K棒用市價做空一口」
亦即當今日柱狀體(macd-signal)轉負值,而且昨日的柱狀體(macd-signal)大於等於0,我們進場做空單
即是macd死亡交叉signal,做空

由於台灣的看盤軟體習慣用柱狀體表達(macd-signal)
所以在這裡沒有用cross over以及cross under去表達
這樣能更生動的表達出柱狀體的概念!

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

最後把上面所有程式碼整理到這裡
方便各位投資朋友複製程式碼貼在PowerLanguage Editor上
inputs: fastLength(12), slowLength(26), MACDLength(9);
vars: emaFast(0), emaSlow(0), macd(0), signal(0);
emaFast = XAverage(close, fastLength);
emaSlow = XAverage(close, slowLength);
macd = emaFast - emaSlow;
signal = XAverage(macd, MACDLength);
if macd > signal and macd[1] <= signal[1] 
  then buy next bar market;
if macd < signal and macd[1] >= signal[1] 
  then sellshort next bar market;

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

💫凱龍下單機|TradingView|MultiCharts|凱龍客製化
💫凱龍官方LINE @979qbbfo|凱龍官網:https://www.kevinwtf524.com/
為什麼會看到廣告
15會員
12內容數
Kevin|凱龍負責人🤠 ⭐️凱龍下單機|TradingView自動下單台指期 ⭐️TradingView & MultiCharts|策略及指標撰寫 ⭐️凱龍官方LINE|@979qbbfo ⭐️凱龍官網|kevinwtf524.com
留言0
查看全部
發表第一個留言支持創作者!
你可能也想看
Multicharts 與 XQ 差異這篇來淺談Multicharts和XQ的基本差異 基本知識 在講差異前,先讓大家知道,程式交易或是量化分析的軟體,其實是有很多選擇的。 當然,每種選擇會有不同的上手難度,以及費用。 通常越底層的語言,上手難度會越難,相對的,靈活性也會比較高。 反之,越高階的語言,上手難度越低,但靈活度
Thumbnail
avatar
richard
2024-01-29
MultiCharts初體驗-訊號撰寫交易訊不會無中生有、憑空想像而出現,通常會將想要觀察的指標疊加在線圖上,再由圖上去找買賣規則的靈感,此篇就以前二篇開發連續創高或連續創低的指標來開發交易訊號。
Thumbnail
avatar
股市觀察家
2023-11-06
MultiCharts初體驗-指標撰寫在軟體工程中強調架構的延展性、維護性及重用性,將運算邏輯先寫成函式就是為了提高重用及維護,軟體界在這樣的發展下,開發出許多通用的套件,使得許多程式開發者可以利用套件來提升開發速度及穩定度,就如同現在的微波食品,想要煮一桌菜,不用自己從買食材開始、處理食材、料理食物、擺盤上桌⋯⋯等步驟,只需將買來的調
Thumbnail
avatar
股市觀察家
2023-11-05
MultiCharts初體驗-函式撰寫廣告常說:「男人過了四十歲,只剩一張嘴。」,連續二天的話當年後,要開始進入程式交易的主題,雖然前文描述是使用TradeStation為開發平台,但後來TS已轉為美國國內券商使用,在台灣MultiChart(以下簡稱MC)已成為主流的平台,雖然在使用上還是有許多雷區要避開,但平心而論,這平台算是程式初
Thumbnail
avatar
股市觀察家
2023-11-04
在桌角遇到MultiCharts 安裝好券商版的MultiCharts(以下簡稱MC)後,可在桌面上看到四個ICON,在筆者依初學者使用的頻率,由左至右排列,分別是MC主程式(MultiCharts 64)、MC程式編輯器(MultiCharts64 PowerLanguage Editor)、MC最佳化結果檢視器(Mult
Thumbnail
avatar
股市觀察家
2023-11-03
如何看MACD指標紀律進場?MACD指標並非萬靈丹,用他來預測短期漲跌不見得每次都準確,但至少勝過我們裏面那個豪無依據的,用感覺來預測漲跌,或用射飛標來預測漲跌還來得有把握些。
Thumbnail
avatar
麥子
2023-01-30
MACD的快慢線?MACD的快慢線? 不好意思,還是要再複習一下喔! DIF(快線) MACD(慢線) 柱狀圖=DIF-MACD 然後柱狀圖在零軸上是紅(紅豆芽),零軸下是綠(綠豆芽) 今天要講的是快線(如圖黃色)跟慢線(如圖藍色)的應用,不過依老爹的觀察,用快慢線判斷的人比較少!
Thumbnail
avatar
可轉債老爹
2022-08-24
孵豆芽的MACDMACD 你如果常常聽到討論股票的人在講什麼綠豆芽啊!紅豆芽啊!你一定很好奇這是什麼啊🤔? 就是MACD這個指標,以前用的人少,現在APP或者劵商軟體就有了,只要按一按就出現了,使用方法如下: 1.按副圖的選項 2、選MACD 3、豆芽菜出來了 DIF(快線) MACD(慢線)
Thumbnail
avatar
可轉債老爹
2022-08-22
8月19日WTI油價:MACD疲軟,油價缺乏上行動能,短線仍有震盪築底反彈的機會· WTI原油期貨價格自關鍵斐波回檔位支撐反彈後繼續走強 · 21日MA均線,兩個月下降趨勢線挑戰其上行勢頭 · MACD疲軟,RSI反彈增加交易過濾 最近幾週,布倫特原油價格迅速下跌。儘管如此,瑞銀(UBS)的策略師仍認為石油市場將繼續吃緊,並保持積極的價格前景。 技術分析: 關於JRFX
Thumbnail
avatar
JRFX_Official
2022-08-19
油價展望:WTI原油MACD信號看漲令原油多頭充滿希望週四(8月18日)亞歐時段,WTI美原油震盪微漲,目前交投於88美元/桶附近,仍接近逾半年低位。 英國7月份消費者價格通脹年率躍升至10.1%,為1982年2月以來的最高水準,加劇了家庭支出擠壓。全球高通脹引發了普遍的經濟衰退擔憂。經濟衰退將損害能源需求,原油價格過去幾個月下跌。 技術分析:
Thumbnail
avatar
JRFX_Official
2022-08-18