এই কৌশলটি প্রবণতা অনুসরণ এবং বিপরীত ট্রেডিং বাস্তবায়নের জন্য এমএসিডি, ইএমএ এবং আরএসআই সূচকগুলিকে একত্রিত করে। এটি যখন এমএসিডি সিগন্যাল লাইনের মাধ্যমে উঠে যায় এবং বন্ধের মূল্য ইএমএর উপরে থাকে তখন এটি ক্রয় সংকেত উত্পন্ন করে; এবং যখন এমএসিডি সিগন্যাল লাইনের নীচে পড়ে এবং বন্ধের মূল্য ইএমএর নীচে থাকে তখন প্রবণতা ক্যাপচার করার জন্য সংকেত বিক্রি করে। এদিকে, যখন আরএসআই ওভারকপ বা ওভারসোল্ড স্তরে পৌঁছে যায় তখন এটি বিপরীত ট্রেড করে।
ম্যাকড ডিফ এবং ইএমএ গণনা করুন।
fastMA = ema(close, fast)
slowMA = ema(close, slow)
macd = fastMA - slowMA
signal = sma(macd, 9)
ema = ema(close, input(200))
ক্রয় সংকেত উৎপন্ন করুনঃ এমএসিডি ডিফ (এমএসিডি - সংকেত) শূন্যের উপরে যায় এবং বন্ধের মূল্য ইএমএর উপরে থাকে।
delta = macd - signal
buy_entry= close>ema and delta > 0
বিক্রয় সংকেত উৎপন্ন করুনঃ এমএসিডি ডিফ 0 এর নিচে যায় এবং বন্ধের মূল্য ইএমএর নিচে থাকে।
sell_entry = close<ema and delta<0
যখন RSI অতিরিক্ত ক্রয় বা অতিরিক্ত বিক্রয়ের স্তরে পৌঁছায় তখন ট্রেড বিপরীতমুখী হয়।
if (rsi > 70 or rsi < 30)
reversal := true
সমাধান:
এই কৌশলটি প্রবণতা অনুসরণ এবং বিপরীত ট্রেডিং জৈবিকভাবে বাস্তবায়নের জন্য এমএসিডি, ইএমএ এবং আরএসআইকে একত্রিত করে। এমএসিডি প্রবণতা দিকনির্দেশগুলি বিচার করে, ইএমএ গোলমাল ফিল্টার করে এবং আরএসআই বিপরীত পয়েন্টগুলি ক্যাপচার করে। এই জাতীয় বহু-সূচক সংমিশ্রণটি বাজারের চলাচল আরও ভালভাবে নির্ধারণ করতে পারে, মিথ্যা সংকেত হ্রাস করার সময় লাভজনকতা উন্নত করতে পারে। অপ্রয়োজনীয় ক্ষতি হ্রাস করতে পরামিতি অপ্টিমাইজেশন এবং স্টপ লস ম্যানেজমেন্ট আরও উন্নত করা যেতে পারে। সামগ্রিকভাবে, এটি স্থিতিশীল লাভের সম্ভাবনা সহ একটি শক্ত কৌশল কাঠামো।
/*backtest start: 2023-11-17 00:00:00 end: 2023-12-17 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © mbuthiacharles4 //Good with trending markets //@version=4 strategy("CHARL MACD EMA RSI") fast = 12, slow = 26 fastMA = ema(close, fast) slowMA = ema(close, slow) macd = fastMA - slowMA signal = sma(macd, 9) ema = ema(close, input(200)) rsi = rsi(close, input(14)) //when delta > 0 and close above ema buy delta = macd - signal buy_entry= close>ema and delta > 0 sell_entry = close<ema and delta<0 var bought = false var sold = false var reversal = false if (buy_entry and bought == false and rsi <= 70) strategy.entry("Buy",true , when=buy_entry) bought := true strategy.close("Buy",when= delta<0 or rsi > 70) if (delta<0 and bought==true) bought := false //handle sells if (sell_entry and sold == false and rsi >= 30) strategy.entry("Sell",false , when=sell_entry) sold := true strategy.close("Sell",when= delta>0 or rsi < 30) if (delta>0 and sold==true) sold := false if (rsi > 70 or rsi < 30) reversal := true placing = rsi > 70 ? high :low label.new(bar_index, placing, style=label.style_flag, color=color.blue, size=size.tiny) if (reversal == true) if (rsi < 70 and sold == false and delta < 0) strategy.entry("Sell",false , when= delta < 0) sold := true reversal := false else if (rsi > 30 and bought == false and delta > 0) strategy.entry("Buy",true , when= delta > 0) bought := true reversal := false