Multi-timeframe MACD Indicator Crossover Trading Strategy adalah strategi mengikuti tren. Ini menghasilkan sinyal perdagangan ketika harga menembus indikator MACD yang dihitung dengan pengaturan parameter yang berbeda, memungkinkan perdagangan otomatis saham, indeks, forex dan produk keuangan lainnya.
Strategi ini menghitung 3 rata-rata bergerak secara bersamaan: satu rata-rata bergerak tertimbang WMA dan dua rata-rata bergerak eksponensial EMA. Parameter dari tiga rata-rata bergerak ini ditetapkan secara berbeda, yaitu masing-masing 25 hari, 50 hari dan 100 hari. Hal ini memungkinkan rata-rata bergerak untuk menutupi pergerakan harga selama periode yang berbeda.
Setelah rata-rata bergerak dihitung, strategi memantau apakah harga melanggar atau jatuh di bawah rata-rata bergerak.
Sebagai contoh, sinyal beli dihasilkan ketika harga berada di atas semua 3 moving average pada saat yang sama. sinyal jual dihasilkan ketika harga jatuh di bawah semua 3 moving average pada saat yang sama. memantau harga relatif terhadap moving average dapat menentukan titik pembalikan pergerakan harga.
Dengan menilai secara silang dengan indikator multi-frame waktu, beberapa sinyal palsu dapat disaring, membuat sinyal perdagangan lebih dapat diandalkan.
Strategi dapat dioptimalkan dalam aspek berikut:
Multi-timeframe MACD Indicator Crossover Trading Strategy memiliki aliran logika yang jelas. Ini menentukan tren harga selama beberapa periode menggunakan moving average dan menghasilkan sinyal perdagangan ketika terjadi pembalikan yang signifikan. Strategi ini memiliki ruang optimasi yang besar dan parameter dapat disesuaikan untuk produk dan siklus pasar yang berbeda, memungkinkan kinerja perdagangan yang baik. Ini cocok untuk perdagangan otomatis saham tren, indeks dan forex.
/*backtest start: 2024-01-19 00:00:00 end: 2024-02-18 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("TC - MACDoscillator v2", overlay=true) // ___________ .__ _________ .__ __ .__ // \__ ___/____ | | ____ ____ \_ ___ \_____ ______ |__|/ |______ | | // | | \__ \ | | / ___\ / _ \ / \ \/\__ \ \____ \| \ __\__ \ | | // | | / __ \| |__/ /_/ > <_> ) \ \____/ __ \| |_> > || | / __ \| |__ // |____| (____ /____/\___ / \____/ \______ (____ / __/|__||__| (____ /____/ // \/ /_____/ \/ \/|__| \/ // // MACDoscillator Strategy v2 // Josh Breitfeld 2016 // /// INPUTS START /// //tradeSize = input(title="Shares Per Trade", defval=2500, step=1) WMALength = input(title="WMA Length", defval=25, step=1) EMA1Length = input(title="EMA1 Length", defval=50, step=1) EMA2Length = input(title="EMA2 Length", defval=100, step=1) //security = input(title="Alternate Security", type=string, defval="SPX500") //inverse = input(title="Inverse Signals", type=bool, defval=true) /// INPUTS END /// /// ALGORITHM START /// /// Define calculations WMA = wma(close,WMALength) EMA1 = ema(close,EMA1Length) EMA2 = ema(close,EMA2Length) /// Grab values from alternate security dWMA = WMA dEMA1 = EMA1 dEMA2 = EMA2 aClose = close /// Crossover signal system /// Long crosses lc1 = aClose > dWMA ? true : false lc2 = aClose > dEMA1 ? true : false lc3 = aClose > dEMA2 ? true: false /// Short crosses sc1 = aClose < dWMA ? true : false sc2 = aClose < dEMA1 ? true : false sc3 = aClose < dEMA2 ? true : false //plot(lc1,color=green) //plot(lc2,color=green) //plot(lc3,color=green) //plot(sc1,color=red) //plot(sc2,color=red) //plot(sc3,color=red) /// ALGO ORDER CONDITIONS START /// pBuyToOpen = (lc1 and lc2 and lc3 ? true : false) pSellToOpen = (sc1 and sc2 and sc3 ? true : false) pSellToClose = (lc1 ? true : false) and not pBuyToOpen pBuyToClose = (sc1 ? true : false) and not pSellToOpen //plot(pBuyToOpen,color=lime) //plot(pBuyToClose,color=lime) //plot(pSellToOpen,color=red) //plot(pSellToClose,color=red) /// INVERT SIGNALS //buyToOpen = inverse ? -pBuyToOpen : pBuyToOpen //sellToOpen = inverse ? -pBuyToOpen : pSellToOpen //sellToClose = inverse ? -pSellToClose : pSellToClose //buyToClose = inverse ? -pBuyToClose : pBuyToClose /// ALGO ORDER CONDITIONS END /// /// ALGORITHM END /// /// DEFINE PLOTS /// plot(dWMA,"WMA",lime,1,line) plot(dEMA1,"EMA1",blue,2,line) plot(dEMA2,"EMA2",red,3,line) //plot(aClose,"Close",orange,4,line) /// PLOTS END /// /// ORDER BLOCK /// //strategy.entry("My Long Entry Id", strategy.long) /// OPENING ORDERS START /// if(pBuyToOpen) strategy.entry("BTO", strategy.long, comment="BTO") if(pSellToOpen) strategy.entry("STO", strategy.short, comment="STO") /// OPENING ORDERS END /// /// CLOSING ORDERS START /// strategy.close("BTO", pBuyToClose) strategy.close("STO", pSellToClose) /// CLOSING ORDERS END /// /// END ORDER BLOCK /// // Josh Breitfeld - Talgo Capital 2016 /// STRATEGY END ///