
এই কৌশলটি MACD সূচকের উপর ভিত্তি করে, MACD সূচকের মধ্যে MACD লাইন এবং সংকেত লাইনের ক্রস ব্যবহার করে ট্রেডিং সংকেত নির্ধারণ করে। MACD লাইনে সিগন্যাল লাইন অতিক্রম করার সময় একটি মাল্টিসিগন্যাল তৈরি হয় এবং MACD লাইনের নীচে সিগন্যাল লাইন অতিক্রম করার সময় একটি ফাঁকা সিগন্যাল তৈরি হয়। একই সাথে পূর্ববর্তী K লাইনের সর্বনিম্ন মূল্যটি মাল্টিসিগন্যাল স্টপ হিসাবে ব্যবহার করা হয় এবং পূর্ববর্তী K লাইনের সর্বোচ্চ মূল্যটি খালি মাথা স্টপ হিসাবে ব্যবহার করা হয়।
MACD সূচকটি DIF লাইন এবং DEA লাইনের সমন্বয়ে গঠিত, DIF লাইনটি দ্রুত গড় এবং ধীর গড়ের পার্থক্য, DEA লাইনটি DIF লাইনের চলমান গড়। যখন DIF লাইনে DEA লাইনটি অতিক্রম করে, তখন শেয়ারের দাম ওভারসোল্ড অঞ্চল থেকে বেরিয়ে আসে এবং উপরের দিকে শুরু হয়, একটি মাল্টি-সিগন্যাল উত্পন্ন করে; যখন DIF লাইনের নীচে DEA লাইনটি অতিক্রম করে, তখন শেয়ারের দাম ওভারসোল্ড অঞ্চল থেকে বেরিয়ে আসে এবং নীচে শুরু হয়, একটি শূন্য-সিগন্যাল উত্পন্ন করে।
এই কৌশলটি MACD সূচকের উপর ভিত্তি করে, MACD লাইন এবং সিগন্যাল লাইনের ক্রস দ্বারা ট্রেডিং সিগন্যালের বিচার করে, এবং পূর্ববর্তী K লাইনের সর্বনিম্ন এবং সর্বোচ্চ মূল্যকে স্টপ লস হিসাবে ব্যবহার করে, স্টপ লসটি 4x এটিআর সেট করে। কৌশলটির যুক্তি পরিষ্কার, বাস্তবায়ন করা সহজ, এবং শেয়ারের দামের প্রবণতা আরও ভালভাবে ক্যাপচার করতে পারে। তবে, এই কৌশলটির কিছু ঝুঁকিও রয়েছে, যেমন সূচকটি পিছনে, স্টপ লস সেটিং সহজ ইত্যাদি। ভবিষ্যতে অন্যান্য সূচক যুক্ত করা, স্টপ লস সেটিং অপ্টিমাইজ করা, পজিশন ম্যানেজমেন্ট যোগ করা ইত্যাদির ক্ষেত্রে অপ্টিমাইজেশন বিবেচনা করা যেতে পারে, কৌশলটির স্থায়িত্ব এবং লাভজনকতা বাড়ানোর জন্য।
/*backtest
start: 2023-05-05 00:00:00
end: 2024-05-10 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("MACD Strategy", overlay=true)
// Define MACD
[macdLine, signalLine, _] = macd(close, 12, 26, 9)
// Define conditions for long entry
longCondition = crossover(macdLine, signalLine)
// Define conditions for short entry
shortCondition = crossunder(macdLine, signalLine)
// Define stop loss for long entry
longStopLoss = low[1] // Previous candle low
// Define stop loss for short entry
shortStopLoss = high[1] // Previous candle high
// Define take profit for both long and short entries
takeProfit = close + (close - longStopLoss) * 4 // 4 x ATR
// Execute long entry
if (longCondition)
strategy.entry("Buy", strategy.long)
strategy.exit("TP/SL", "Buy", stop=longStopLoss, limit=takeProfit)
// Execute short entry
if (shortCondition)
strategy.entry("Sell", strategy.short)
strategy.exit("TP/SL", "Sell", stop=shortStopLoss, limit=takeProfit)