Sumber daya yang dimuat... Pemuatan...

Strategi MACD + SMA 200

Penulis:ChaoZhang, Tanggal: 2022-05-07 17:13:32
Tag:MACD

Berikut adalah kombinasi dari MACD klasik (indikator divergensi konvergensi rata-rata bergerak) dengan SMA bergerak lambat klasik dengan periode 200 bersama sebagai strategi.

Strategi ini berjalan panjang jika histogram MACD dan momentum MACD keduanya berada di atas nol dan rata-rata bergerak MACD cepat berada di atas rata-rata bergerak MACD lambat. Sebagai filter panjang tambahan harga baru-baru ini harus berada di atas SMA 200. Jika logika terbalik benar, strategi berjalan pendek. Untuk kasus terburuk ada kerugian ekuitas intraday maksimum 50% filter.

Simpan $999 lagi dengan strategi gratisku.

Strategi ini bekerja pada backtest pada grafik harian Bitcoin, serta pada S&P 500 dan grafik harian Dow Jones Industrial Average. Kinerja saat ini pada 30 November 2015 pada harian SPX500 CFD adalah persentase menguntungkan: 68% sejak tahun 1970 dengan faktor keuntungan 6,4. Kinerja saat ini pada 30 November 2015 pada indeks DOWI harian adalah persentase menguntungkan: 51% sejak tahun 1915 dengan faktor keuntungan 10,8.

Semua perdagangan melibatkan risiko tinggi; kinerja masa lalu tidak selalu menunjukkan hasil masa depan. Hasil kinerja hipotetis atau simulasi memiliki keterbatasan inheren tertentu. Tidak seperti catatan kinerja yang sebenarnya, hasil simulasi tidak mewakili perdagangan yang sebenarnya. Juga, karena perdagangan tidak benar-benar dilaksanakan, hasilnya mungkin kurang atau terlalu dikompensasi untuk dampak, jika ada, dari faktor pasar tertentu, seperti kurangnya likuiditas. Program perdagangan simulasi pada umumnya juga tunduk pada fakta bahwa mereka dirancang dengan manfaat dari hindsight. Tidak ada representasi yang dibuat bahwa setiap akun akan atau cenderung mencapai keuntungan atau kerugian yang mirip dengan yang ditunjukkan.

backtest

img


/*backtest
start: 2021-05-06 00:00:00
end: 2022-05-05 23:59:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("MACD + SMA 200 Strategy (by ChartArt)", shorttitle="CA_-_MACD_SMA_strategy", overlay=true)

// ChartArt's MACD + SMA 200 Strategy
//
// Version 1.0
// Idea by ChartArt on November 30, 2015.
//
// Here is a combination of the MACD with the
// slow moving average SMA 200 as a strategy.
//
// This strategy goes long if the MACD histogram
// and the MACD momentum are both above zero and
// the fast MACD moving average is above the
// slow MACD moving average. As additional long filter
// the recent price has to be above the SMA 200.
// If the inverse logic is true, the strategy
// goes short. For the worst case there is a
// max intraday equity loss of 50% filter.


// Input
source = input(close)
fastLength = input(12, minval=1, title="MACD fast moving average")
slowLength=input(26,minval=1, title="MACD slow moving average")
signalLength=input(9,minval=1, title="MACD signal line moving average")
veryslowLength=input(200,minval=1, title="Very slow moving average")
switch1=input(true, title="Enable Bar Color?")
switch2=input(true, title="Enable Moving Averages?")
switch3=input(true, title="Enable Background Color?")

// Calculation
fastMA = ta.sma(source, fastLength)
slowMA = ta.sma(source, slowLength)
veryslowMA = ta.sma(source, veryslowLength)
macd = fastMA - slowMA
signal = ta.sma(macd, signalLength)
hist = macd - signal

// Colors
MAtrendcolor = change(veryslowMA) > 0 ? color.green : color.red
trendcolor = fastMA > slowMA and change(veryslowMA) > 0 and close > slowMA ? color.green : fastMA < slowMA and change(veryslowMA) < 0 and close < slowMA ? color.red : color.blue
bartrendcolor = close > fastMA and close > slowMA and close > veryslowMA and change(slowMA) > 0 ? color.green : close < fastMA and close < slowMA and close < veryslowMA and change(slowMA) < 0 ? color.red : color.blue
backgroundcolor = slowMA > veryslowMA and crossover(hist, 0) and macd > 0 and fastMA > slowMA and close[slowLength] > veryslowMA ? color.green : slowMA < veryslowMA and crossunder(hist, 0) and macd < 0 and fastMA < slowMA and close[slowLength] < veryslowMA ? color.red : na
//bgcolor(switch3?backgroundcolor:na,transp=80)
//barcolor(switch1?bartrendcolor:na)

// Output
F=plot(switch2?fastMA:na,color=trendcolor)
S=plot(switch2?slowMA:na,color=trendcolor,linewidth=2)
V=plot(switch2?veryslowMA:na,color=MAtrendcolor,linewidth=4)
//fill(F,V,color=gray)

// Strategy
buyprice = low
sellprice = high
cancelLong = slowMA < veryslowMA
cancelShort = slowMA > veryslowMA


if crossover(hist, 0) and macd > 0 and fastMA > slowMA and close[slowLength] > veryslowMA 
    strategy.entry("MACDLE", strategy.long, stop=buyprice, comment="Bullish")

else if crossunder(hist, 0) and macd < 0 and fastMA < slowMA and close[slowLength] < veryslowMA 
    strategy.entry("MACDSE", strategy.short, stop=sellprice, comment="Bearish")

//maxIdLossPcnt = input(50, "Max Intraday Loss(%)", type=float)
//strategy.risk.max_intraday_loss(maxIdLossPcnt, strategy.percent_of_equity)

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)

Berkaitan

Lebih banyak