
মাল্টি টাইমফ্রেম এমএসিডি কৌশল হল একটি পরিমাণগত ট্রেডিং কৌশল যা একাধিক টাইমফ্রেমে ট্রেন্ড ট্র্যাকিংয়ের জন্য এমএসিডি সূচক ব্যবহার করে। এই কৌশলটি বিভিন্ন সময়কালের (৩ মিনিট, ৫ মিনিট, ১৫ মিনিট, ৩০ মিনিট) উপর MACD সূচক গণনা করে ট্রেডিং সিগন্যাল প্রেরণ করে।
এই কৌশলটির কেন্দ্রীয় যুক্তি হল একাধিক সময় ফ্রেমের উপর MACD সূচকটির ক্রস-অবস্থান গণনা করা (যেমন 3 মিনিট, 5 মিনিট, 15 মিনিট, 30 মিনিট) । প্রথমে প্রতিটি সময় ফ্রেমের উপর MACD সূচক গণনা করা হয়, MACD সূচক অনুযায়ী সেই সময় ফ্রেমের দামের গতিবিধি বিচার করা হয় (উত্থান বা পতন) । তারপরে একাধিক সময় ফ্রেমের দামের গতিবিধি সমন্বিতভাবে বিচার করা হয়ঃ
ট্রেডিং সিগন্যালকে আরো নির্ভরযোগ্য করে তোলার জন্য, সময়সীমার মধ্যে ট্রেন্ডিংয়ের উপর নির্ভর করে, স্বল্পমেয়াদী বাজারের শব্দকে কার্যকরভাবে সরিয়ে ফেলা যায়।
এই কৌশলটির সুবিধাগুলো হলঃ
এই কৌশলটি নিম্নলিখিত ঝুঁকিগুলিও বহন করেঃ
সমাধানঃ
এই নীতিটি আরও উন্নত করার জন্য নিম্নলিখিত বিষয়গুলি বিবেচনা করা উচিতঃ
মাল্টি টাইম ফ্রেম MACD কৌশলটি MACD সূচকের প্রবণতা বিচারক ফাংশন ব্যবহার করে, সময় ফ্রেম জুড়ে মূল্য চলাচল সনাক্তকরণের জন্য, কার্যকরভাবে গোলমাল ফিল্টার করে, সংকেতের গুণমান উন্নত করে। এই কৌশলটি প্যারামিটার সামঞ্জস্য এবং নিয়মের মাধ্যমে অপ্টিমাইজ করা যায়, বিভিন্ন জাত এবং পরিস্থিতিতে নমনীয়ভাবে অভিযোজিত হয়, এটির খুব শক্তিশালী ব্যবহার রয়েছে।
/*backtest
start: 2023-10-28 00:00:00
end: 2023-11-27 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy("[RichG] Easy MTF Strategy", overlay=false)
TF_1_time = input("3", "Timeframe 1")
TF_2_time = input("5", "Timeframe 2")
TF_3_time = input("15", "Timeframe 3")
TF_4_time = input("30", "Timeframe 4")
fastLen = input(title="Fast Length", defval=12)
slowLen = input(title="Slow Length", defval=26)
sigLen = input(title="Signal Length", defval=9)
[macdLine, signalLine, _] = macd(close, fastLen, slowLen, sigLen)
width = 5
upcolor = green
downcolor = red
neutralcolor = blue
linestyle = line
TF_1 = request.security(syminfo.tickerid, TF_1_time, open) < request.security(syminfo.tickerid, TF_1_time, close) ? true:false
TF_1_color = TF_1 ? upcolor:downcolor
TF_2 = request.security(syminfo.tickerid, TF_2_time, open) < request.security(syminfo.tickerid, TF_2_time, close) ? true:false
TF_2_color = TF_2 ? upcolor:downcolor
TF_3 = request.security(syminfo.tickerid, TF_3_time, open) < request.security(syminfo.tickerid, TF_3_time, close) ? true:false
TF_3_color = TF_3 ? upcolor:downcolor
TF_4 = request.security(syminfo.tickerid, TF_4_time, open) < request.security(syminfo.tickerid, TF_4_time, close) ? true:false
TF_4_color = TF_4 ? upcolor:downcolor
TF_global = TF_1 and TF_2 and TF_3 and TF_4
TF_global_bear = TF_1 == false and TF_2 == false and TF_3 == false and TF_4 == false
TF_global_color = TF_global ? green : TF_global_bear ? red : white
TF_trigger_width = TF_global ? 6 : width
plot(1, style=linestyle, linewidth=width, color=TF_1_color)
plot(5, style=linestyle, linewidth=width, color=TF_2_color)
plot(10, style=linestyle, linewidth=width, color=TF_3_color)
plot(15, style=linestyle, linewidth=width, color=TF_4_color)
plot(25, style=linestyle, linewidth=4, color=TF_global_color)
exitCondition_Long = TF_global_bear
exitCondition_Short = TF_global
longCondition = TF_global
if (longCondition)
strategy.entry("MTF_Long", strategy.long)
shortCondition = TF_global_bear
if (shortCondition)
strategy.entry("MTF_Short", strategy.short)
strategy.close("MTF_Long", when=exitCondition_Long)
strategy.close("MTF_Short", when=exitCondition_Short)