এই কৌশলটি ট্রেডিং সিগন্যাল তৈরির জন্য বিভিন্ন সময়ের সাথে দুটি এক্সপোনেনশিয়াল মুভিং এভারেজ (ইএমএ) এর ক্রসওভার ব্যবহার করে। যখন দ্রুত ইএমএ ধীর ইএমএর উপরে অতিক্রম করে, এটি একটি ক্রয় সংকেত তৈরি করে এবং যখন দ্রুত ইএমএ ধীর ইএমএর নীচে অতিক্রম করে, এটি একটি বিক্রয় সংকেত তৈরি করে। এই কৌশলটি বিভিন্ন আর্থিক যন্ত্র এবং সময় ফ্রেমে প্রয়োগ করা যেতে পারে, যেমন সোনার 2 ঘন্টা সময় ফ্রেমে সবচেয়ে কার্যকর এবং বিটকয়েন দৈনিক চার্টে সবচেয়ে কার্যকর ইত্যাদি।
এমএসিডি ক্রসওভার কৌশলটি প্রবণতা অনুসরণের উপর ভিত্তি করে একটি সহজ কৌশল। এর সুবিধাগুলি হ'ল সরলতা, ব্যবহারিকতা এবং বিস্তৃত প্রয়োগযোগ্যতা, যখন এর অসুবিধাগুলি হ'ল প্রবণতা বিপরীতমুখী এবং পরামিতি নির্বাচন বুঝতে অসুবিধা। প্রবণতা ফিল্টারিং, প্রবেশ এবং প্রস্থান পয়েন্টগুলি অনুকূলিতকরণ, পরামিতি অপ্টিমাইজেশন এবং অন্যান্য সূচকগুলি একত্রিত করার মাধ্যমে এই কৌশলটির কার্যকারিতা উন্নত করা যেতে পারে, যা আরও গবেষণা এবং পরীক্ষার মূল্যবান।
/*backtest start: 2023-04-12 00:00:00 end: 2024-04-17 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy('Advance EMA Crossover Strategy', overlay=true, precision=6) //****************************************************************************// // CDC Action Zone is based on a simple EMA crossover // between [default] EMA12 and EMA26 // The zones are defined by the relative position of // price in relation to the two EMA lines // Different zones can be use to activate / deactivate // other trading strategies // The strategy can also be used on its own with // acceptable results, buy on the first green candle // and sell on the first red candle //****************************************************************************// // Define User Input Variables xsrc = input(title='Source Data', defval=close) xprd1 = input(title='Fast EMA period', defval=12) xprd2 = input(title='Slow EMA period', defval=26) xsmooth = input(title='Smoothing period (1 = no smoothing)', defval=1) fillSW = input(title='Paint Bar Colors', defval=true) fastSW = input(title='Show fast moving average line', defval=true) slowSW = input(title='Show slow moving average line', defval=true) plotSigsw = input(title='Plot Buy/Sell Signals?', defval=true) //****************************************************************************// //Calculate Indicators xPrice = ta.ema(xsrc, xsmooth) FastMA = ta.ema(xPrice, xprd1) SlowMA = ta.ema(xPrice, xprd2) //****************************************************************************// // Define Color Zones and Conditions BullZone = FastMA > SlowMA and xPrice > FastMA // Bullish Zone BearZone = FastMA < SlowMA and xPrice < FastMA // Bearish Zone //****************************************************************************// // Strategy Entry and Exit Conditions if (BullZone and not BullZone[1]) strategy.entry("Buy", strategy.long) // Buy on the transition into BullZone if (BearZone and not BearZone[1]) strategy.close("Buy") // Sell on the transition into BearZone //****************************************************************************// // Display color on chart plotcolor = BullZone ? color.green : BearZone ? color.red : color.gray barcolor(color=fillSW ? plotcolor : na) //****************************************************************************// // Plot Fast and Slow Moving Averages plot(fastSW ? FastMA : na, color=color.red, title="Fast EMA", linewidth=2) plot(slowSW ? SlowMA : na, color=color.blue, title="Slow EMA", linewidth=2) //****************************************************************************// // Plot Buy and Sell Signals plotshape(series=plotSigsw and BullZone and not BullZone[1], location=location.belowbar, color=color.green, style=shape.labelup, title="Buy Signal") plotshape(series=plotSigsw and BearZone and not BearZone[1], location=location.abovebar, color=color.red, style=shape.labeldown, title="Sell Signal") //****************************************************************************//