交易策略程式碼教學 – 梅斯線

Yaonology Algorithmic Trading
分享在 facebook
分享在 twitter
分享在 linkedin
分享在 email
分享在 reddit

交易策略程式碼教學 – 梅斯線

演算法交易策略並不像大家想像中那麼困難, 文章中會以四個步驟來教大家如何使用演算法交易策略來寫梅斯線策略程式碼 所有的程式碼使用 pine script 頁面在the Tradingview 平台裡.

文章中會先顯示每步驟完整版的策略內容,在部分拆解解釋。

黑色部分為固定的程式碼部分,而黃色的部分可以根據個人的需求來做變化!

接下來,文章中將會介紹每一格代表的意思。

下方是完整的程式碼

//@version = 4

strategy("Yaonology Mass Index Tutorial", overlay=false, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, currency = currency.USD, initial_capital = 10000, commission_type = strategy.commission.percent, commission_value = 0)


length = input(title = "MASS", defval =25)


mavglength = input(title = "MAvg", defval = 9)


ma_9 = sma(close, 9)


prc_rg = high - low

ahl = ema(prc_rg,9)

dhl = ema(ahl,9)

mass_idx = sum(ahl/dhl,length)


z = 0


if z[1] == 1

z := 1

if mass_idx > 27

z := 1

if mass_idx < 26.5

z := 0


plot(mass_idx, color = z == 0 ? color.black : color.red, linewidth = 2)


plot(27, color = color.green)

plot(26.5, color = color.red)


if z == 0 and z[1] == 1 and ma_9 < ma_9[1]


strategy.entry(id = "mass", long = true)

if z == 0 and z[1] == 1 and ma_9 > ma_9[1]

strategy.close(id = "mass")

步驟一:初始設定

//@version=4

strategy(“Yaonology Mass Index Tutorial“, overlay=false, default_qty_type= strategy.percent_of_equity ,default_qty_value=100,currency=currency.USD,initial_capital=10000,commission_type=strategy.commission.percent,commission_value=0)

strategy : 策略名稱 (在此Yaonology 制定為Yaonology Mass Index Tuorial)

overlay : 不重疊 – False

default_qty_type : 此為設定交易量的單位形式 (此我們設定percent of equity)

default_qty_value : 設定量的多寡 –100

currency: 幣值 (此設為USD)

initial_capital : 最初交易的價格 (設定10000)

commission_type : 佣金的計算方式 –percent

commission_value : 佣金的價值 (此沒有佣金,因此設定0)

步驟二:參數設定

第一部分

length = input(title = MASS“, defval =25)

mavglength = input(title =MAvg, defval = 9)

常用設定天數為25天持續交易天數

常用的移動平均長度為9個交易日。

可以在設置->輸入中修改參數

第2部分:策略指數移動平均線

ma_9 = sma(close, 9)

sma: 移動平均線(9天)

prc_rg = high – low

high: 每日最高價

low: 每日最低價

high – low: 每日股票價格波動

ahl = ema(prc_rg,9)

ema: 指數移動平均線(9天股價波動)

dhl = ema(ahl,9)

ema: 指數移動平均線(9天的ahl)

mass_idx = sum(ahl/dhl,length)

sum: 9天內ahl和bhl的比率總和

z = 0

if z[1] == 1

z := 1

if mass_idx > 27

z := 1

if mass_idx < 26.5

z := 0

mass_index: 如果先前的z(之前的一個日期)等於1或質量指數超過27,則z等於1;如果指標低於26.5,則z等於0:(z [1])

步驟三:繪圖

plot(mass_idx, color = z == 0 ? color.black : color.red, linewidth = 2)

plot(27, color = color.green)- 梅斯線大於27的圖形顏色設為 綠色

plot(26.5, color = color.red)-梅斯線小於27的圖形顏色設為紅色

步驟四:買賣條件

最後,我們需要根據繪製的梅斯線指數來決定何時買入或賣出:

if z == 0 and z[1] == 1 and ma_9 < ma_9[1]

strategy.entry(id = “mass“, long = true)

=> [1] 表示前一天;

如果適用此條件,此時可以買入股票

Strategy.entry: 表示指令進入市場

id: 表示此單的名稱設定 在此我們將名稱設定為 mass

long: 表示看多市場趨勢,此時為進場狀態,因此設定為true

if z == 0 and z[1] == 1 and ma_9 > ma_9[1]

strategy.close(id = “mass“)

=>:[1] 表示前一天

如果適用此條件,此時可以賣出股票

Strategy.close:表示指令離開市場

而id 為和進場同一張單的指令,因此名字需設為同一個。

完成後圖形

交易策略程式碼教學 – 梅斯線
Source: Yaonology

Yaonology.com

SP500 Algo Trading Strategy

Bitcoin Algo Trading Strategy

#Algorithmtrading #codingtutorial #SPY500 #Massindicator

This website uses cookies to ensure you get the best experience on our website.

Read Privacy Policy