
এই কৌশলটি তিনটি প্রযুক্তিগত সূচকের সমন্বয় করেঃ বোল্ডিং সূচক (CCI), দিকনির্দেশক সূচক (DMI) এবং চলমান গড় বিচ্ছিন্নতা সূচক (MACD), যা বাজারের ওভারব্লড ওভারসেলের অবস্থা এবং প্রবণতার দিকনির্দেশের বিচার করে। CCI যখন ওভারব্লড অঞ্চল থেকে উপরে উঠে যায় এবং DI+ DI- এর চেয়ে বড় হয় এবং MACD সিগন্যাল লাইনের চেয়ে বড় হয়, তখন একটি কেনার সংকেত উত্পন্ন হয়। CCI যখন ওভারব্লড অঞ্চল থেকে নীচে উঠে যায় এবং DI- এর চেয়ে বড় হয় এবং MACD সংকেত লাইনের চেয়ে ছোট হয়, তখন একটি বিক্রয় সংকেত উত্পন্ন হয়।
এই কৌশলটি সিসিআই, ডিএমআই এবং এমএসিডি এর তিনটি প্রযুক্তিগত সূচককে একত্রিত করে বাজারের ওভারব্রিড ওভারসেলের স্থিতি, প্রবণতা দিক এবং প্রবণতা শক্তির বিষয়ে একটি সমন্বিত বিচার করে, একটি ক্রয়-বিক্রয় সংকেত উত্পন্ন করে। কৌশলগত ধারণাটি পরিষ্কার এবং বাস্তবায়নের জন্য সহজ, তবে কৌশলগত প্যারামিটারগুলি অনুকূলিতকরণের দিকে মনোযোগ দেওয়া প্রয়োজন, কৌশলটির স্থায়িত্ব এবং লাভজনকতা বাড়ানোর জন্য ট্রেডিং ফ্রিকোয়েন্সি এবং ঝুঁকি নিয়ন্ত্রণ করুন।
/*backtest
start: 2024-03-01 00:00:00
end: 2024-03-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("CCI, DMI, and MACD Strategy", overlay=true)
// Define inputs
cci_length = input(14, title="CCI Length")
overbought_level = input(100, title="Overbought Level")
oversold_level = input(-100, title="Oversold Level")
// Calculate CCI
cci_value = ta.cci(close, cci_length)
// Calculate DMI
[di_plus, di_minus, _] = ta.dmi(14, 14)
// Calculate MACD
[macd_line, signal_line, _] = ta.macd(close, 24, 52, 9)
// Define buy and sell conditions
buy_signal = ta.crossover(cci_value, oversold_level) and di_plus > di_minus and macd_line > signal_line // CCI crosses above -100, Di+ > Di-, and MACD > Signal
sell_signal = ta.crossunder(cci_value, overbought_level) and di_minus > di_plus and macd_line < signal_line // CCI crosses below 100, Di- > Di+, and MACD < Signal
// Define exit conditions
buy_exit_signal = ta.crossover(cci_value, overbought_level) // CCI crosses above 100
sell_exit_signal = ta.crossunder(cci_value, oversold_level) // CCI crosses below -100
// Execute trades based on conditions
strategy.entry("Buy", strategy.long, when=buy_signal)
strategy.close("Buy", when=buy_exit_signal)
strategy.entry("Sell", strategy.short, when=sell_signal)
strategy.close("Sell", when=sell_exit_signal)
// Plot CCI
plot(cci_value, title="CCI", color=color.blue)
// Plot DMI
plot(di_plus, title="DI+", color=color.green)
plot(di_minus, title="DI-", color=color.red)
// Plot MACD and Signal lines
plot(macd_line, title="MACD", color=color.orange)
plot(signal_line, title="Signal", color=color.purple)
// Plot overbought and oversold levels
hline(overbought_level, "Overbought", color=color.red)
hline(oversold_level, "Oversold", color=color.green)