誠邀您參加全球知名外匯經紀商OANDA的自營交易(Prop Trader)
報名OANDA自營交易(Prop Trader),並通過我們的考核,您就可以使用OANDA提供的資金進行交易,獲得高達90%的交易利潤分成。
優化了挑戰塞交易規則
無最低交易天數限制等優化了挑戰賽的交易規則。
500,000美元交易資金
您可以使用最高500,000美元的資金進行交易。
豐富的交易商品
您可以交易包括外匯、黃金、原油、股票指數等多種商品。
使用Pine編輯器製作MACD的方法
本篇文章將介紹製作MACD指標的方法。
這次將會介紹2種,一種是簡單的版本,而另一種是稍作修改,可以顯示多週期的MACD指標。
下圖的下方是簡單版本,上方是可以顯示多週期的版本。
1.製作簡單版本MACD
首先介紹如何製作簡單版本。製作時可以使用事先已準備好可以繪製MACD的內置函數「ta.macd」。
整個腳本如下。
這個版本還可以修改一些最低限制的設定值。
1-1.關於腳本每個部分的說明
首先需要宣佈為指標,但是想要在指標窗口中顯示MACD,所以,在「indicator」中加入overlay = false ,命令在指標窗口中顯示。1-2.用變數宣佈在輸入介面中想要修改的內容
宣佈MACD的快速MA、慢速MA、信號的週期。1-3.MACD的內置函數「ta.macd」
這裡將會出現一種新的形式。MACD的內置函數「ta.macd」將會返回3個計算結果(返回值)。
①MACD線、②信號線、③柱狀圖。
為了接受這3個返回值,需要如下圖左邊的[①, ② , ③ ]一樣,記入接受的3個變數。
1-4.使用Plot函數繪製線條和柱狀圖
這樣就完成了MACD的製作。
2.製作可顯示多週期版本MACD
接下來繼續介紹如何製作可顯示多週期版本。在腳本中添加的內容如下。
- 2-1.顯示多週期MACD。
- 2-2.根據柱狀圖的正負位置區分繪製柱狀圖的顏色。
- ※雖然添加判斷區分繪製的公式,但是判斷公式並不使用if else語句。
2-1.顯示多週期MACD
首先進行MACD的計算。接下來進行多週期處理。
這裡將使用新的函數「request.security」。
這是可以要求其他品種/時間週期的函數。
這樣就完成了多週期計算。
2-2.根據柱狀圖的正負位置,區分繪製柱狀圖的顏色
區分繪製的判斷公式不使用if else語句。以下為想要判斷的內容。
當柱狀圖
-
●在零線上方時使用綠色系顏色
●在零線下方時使用紅色系顏色區分
-
●在上漲時使用較亮的顏色
●在下跌時使用較暗的顏色進行區分繪製
這種方式可以在一行中就可以表達出各種條件組合。
最後用Plot函數繪製就完成了。
這是完成後MACD指標。
在設置介面中,如下圖一樣可以設置多週期的時間。
這次只是介紹了如果製作簡單的指標。
在下篇以後的文章中,將會對內置函數等進行詳細介紹。
3.參考腳本 簡單版本
指標名稱:MACD_Base功能:
可以顯示MACD。
//@version=5
indicator("MACD Base",overlay = false)
SigLength = input.int(title='Signal 週期', defval = 9, minval = 1)
fastMA = input.int(title="Fast MA 週期", defval = 12, minval = 1)
slowMA = input.int(title="Slow MA 週期", defval = 26, minval = 1)
[macdLine, signalLine, histLine] = ta.macd(close, fastMA, slowMA, SigLength)
plot(macdLine, color=color.blue)
plot(signalLine, color=color.red)
plot(histLine, color=color.orange, style=plot.style_histogram)
4.參考腳本 多週期版本
指標名稱:MACD_mtf功能:
可以顯示多週期MACD。
可以根據柱狀圖的變化區分繪製顏色。
//@version=5
indicator("MACD mtf",overlay = false)
//設置MACD週期
SigLength = input.int(title='Signal 週期', defval = 9, minval = 1)
fastMA = input.int(title="Fast MA 週期", defval = 12, minval = 1)
slowMA = input.int(title="Slow MA 週期", defval = 26, minval = 1)
//MACD的計算
source = close
[_CurMACD,_Signal,_CurHistogram] = ta.macd(source[0], fastMA, slowMA, SigLength)
[_,_,_PreHistogram] = ta.macd(source[1], fastMA, slowMA, SigLength)
//設置多週期
IptPeriod = input.timeframe("D",title="多週期")
CurMACD = request.security(syminfo.tickerid, IptPeriod, _CurMACD)
Signal = request.security(syminfo.tickerid, IptPeriod, _Signal)
CurHistogram = request.security(syminfo.tickerid, IptPeriod, _CurHistogram)
PreHistogram = request.security(syminfo.tickerid, IptPeriod, _PreHistogram)
//指定柱狀圖的顏色 在正方時的2個顏色
his_colorUp1=color.new(color.lime, transp = 50)
his_colorUp2=color.new(color.green, transp = 50)
//指定柱狀圖的顏色 在負方時的2個顏色
his_colorDn1=color.new(color.maroon,transp = 50)
his_colorDn2=color.new(color.red, transp = 50)
//根據條件區分繪製柱狀圖
plotColor = CurHistogram > 0 ? CurHistogram > PreHistogram ? his_colorUp1 :
his_colorUp2 : CurHistogram < PreHistogram ? his_colorDn1: his_colorDn2
//每個數據的輸入
plot(CurMACD, title = "MACD", color = color.blue,linewidth = 2)
plot(Signal, title = "信號", color = color.red, linewidth = 2)
plot(CurHistogram, title = "柱狀圖", style = plot.style_histogram, color =
plotColor, linewidth = 3)
plot(0, title = "零線", color = color.gray,linewidth = 1)
誠邀您參加全球知名外匯經紀商OANDA的自營交易(Prop Trader)
報名OANDA自營交易(Prop Trader),並通過我們的考核,您就可以使用OANDA提供的資金進行交易,獲得高達90%的交易利潤分成。
優化了挑戰塞交易規則
無最低交易天數限制等優化了挑戰賽的交易規則。
500,000美元交易資金
您可以使用最高500,000美元的資金進行交易。
豐富的交易商品
您可以交易包括外匯、黃金、原油、股票指數等多種商品。