এই কৌশলটি একটি বিপরীত পদ্ধতির (ডাইপ কেনার) সাথে প্রবণতা অনুসরণকারী যুক্তির সাথে একত্রিত করে (শুধুমাত্র যখন দাম MA200 এর উপরে থাকে) । কৌশলটি লাভজনক হওয়ার সম্ভাবনা রয়েছে এমন ডাইপ কেনার সেরা সময়টি খুঁজে বের করার লক্ষ্যে। দীর্ঘমেয়াদী চলমান গড়ের উপরে দাম গতি নির্দেশ করে যা স্বল্পমেয়াদী দুর্বলতার সময় সম্পদ কেনার থেকে লাভের সম্ভাবনা বাড়ায়।
এই কৌশলটি রিটার্ন পিরিয়ডের সময় মূল্যের সামগ্রিক শতাংশ পরিবর্তন গণনা করে তা নির্ধারণ করতে যে দামটি আপেক্ষিক ডুপে রয়েছে কিনা। যখন সামগ্রিক পরিবর্তন শতাংশ -3% এর নিচে থাকে, তখন দামটি ডুপে বিবেচনা করা হয়। উপরন্তু, কৌশলটি প্রবণতা বিচার করার জন্য একটি সূচক হিসাবে 200 দিনের সহজ চলমান গড়ও সেট করে। যখন দাম 200 দিনের চলমান গড়ের উপরে থাকে তখনই কিনতে সংকেত ট্রিগার করা হয়। গড় রিভার্সন নীতি এবং দীর্ঘ-স্বল্প জোড়া উভয়ই ব্যবহার করে, কৌশলটি মুনাফা অর্জনের জন্য একটি উত্থান প্রবণতার সময় ডুপটি কিনে।
এই কৌশলটি ট্রেন্ড ট্রেডিং এবং বিপরীত ট্রেডিং উভয়েরই সুবিধাগুলি একত্রিত করে। একদিকে, প্রবণতা নির্ধারণের জন্য দীর্ঘমেয়াদী চলমান গড় ব্যবহার করা হ্রাসের প্রবণতার সময় অন্ধভাবে কেনা এড়ায়। অন্যদিকে, ক্রয় ডাইপগুলি স্বল্পমেয়াদী সংশোধনগুলির সময় আরও ভাল প্রবেশের সুযোগ সরবরাহ করে। সংমিশ্রণটি ট্রেডিং সুরক্ষা এবং উচ্চ মুনাফার সম্ভাবনা উভয়ই নিশ্চিত করে। তদতিরিক্ত, কৌশলটিতে প্যারামিটারগুলির জন্য বড় অপ্টিমাইজেশন স্পেস রয়েছে যা বিভিন্ন বাজারের সাথে খাপ খাইয়ে নিতে পারে, এটিকে শক্তিশালী অভিযোজনযোগ্যতা দেয়।
সর্বাধিক ঝুঁকি হ'ল ক্রয়ের সংকেতটি ট্রিগারের পরে দামটি হ্রাস পেতে পারে, যা বৃহত্তর ক্ষতির দিকে পরিচালিত করে। এছাড়াও, যদি বাজারটি দীর্ঘ সময়ের জন্য পরিসীমা সীমাবদ্ধ থাকে এবং দামটি চলমান গড়টি ভেঙে ফেলতে ব্যর্থ হয় তবে কৌশলটিও ব্যর্থ হবে। এই জাতীয় ঝুঁকিগুলি প্রশমিত করতে, চলমান গড় সময়কাল যথাযথভাবে সংক্ষিপ্ত করা যেতে পারে এবং পর্যাপ্ত সুরক্ষার মার্জিন নিশ্চিত করতে ক্রয় মানদণ্ডগুলি অনুকূলিত করা যেতে পারে।
কৌশলটি বেশ কয়েকটি দিক থেকে অনুকূলিত করা যেতে পারেঃ 1) বিভিন্ন বাজারের সাথে খাপ খাইয়ে নেওয়ার জন্য চলমান গড় সময়ের অনুকূলিতকরণ; 2) পর্যাপ্ত মার্জিন নিশ্চিত করার জন্য ক্রয়ের মানদণ্ডগুলি অনুকূলিতকরণ; 3) ক্ষতি নিয়ন্ত্রণের জন্য স্টপ লস যুক্ত করুন; 4) সঠিকতা উন্নত করতে প্রবণতা এবং ড্রপগুলি বিচার করার জন্য অন্যান্য সূচকগুলি একত্রিত করুন।
সাধারণভাবে, এটি একটি সাধারণ কৌশল যা প্রবণতা অনুসরণ এবং বিপরীত ট্রেডিং ধারণা একত্রিত করে। এটি শক্তিশালী ব্যবহারিক মূল্য সহ, ট্রেডিং সুরক্ষা এবং উচ্চতর জয়ের সম্ভাবনা উভয়ই নিশ্চিত করে। প্যারামিটার অপ্টিমাইজেশন এবং স্টপ লস অপ্টিমাইজেশনের মাধ্যমে স্থিতিশীলতা এবং বাস্তব ট্রেডিং প্রভাবগুলিতে আরও উন্নতি অর্জন করা যেতে পারে।
/*backtest start: 2023-12-08 00:00:00 end: 2024-01-07 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Buy The Dips - MA200 Optimised", overlay=false) //Moving average MAinp = input(defval = 100, title = "MA", type = input.integer, minval = 1, step = 1) MA=sma(close, MAinp) //Percent change inp_lkb = input(1, title='Lookback Period') perc_change(lkb) => overall_change = ((close[0] - close[lkb]) / close[lkb]) * 100 // Call the function overall = perc_change(inp_lkb) // === INPUT BACKTEST RANGE === fromMonth = input(defval = 1, title = "From Month", type = input.integer, minval = 1, maxval = 12) fromDay = input(defval = 1, title = "From Day", type = input.integer, minval = 1, maxval = 31) fromYear = input(defval = 2020, title = "From Year", type = input.integer, minval = 1970) thruMonth = input(defval = 1, title = "Thru Month", type = input.integer, minval = 1, maxval = 12) thruDay = input(defval = 1, title = "Thru Day", type = input.integer, minval = 1, maxval = 31) thruYear = input(defval = 2112, title = "Thru Year", type = input.integer, minval = 1970) showDate = input(defval = true, title = "Show Date Range", type = input.bool) start = timestamp(fromYear, fromMonth, fromDay, 00, 00) // backtest start window finish = timestamp(thruYear, thruMonth, thruDay, 23, 59) // backtest finish window window() => true // create function "within window of time" //Entry/Exit strategy.entry(id="long", long = true, when = window() and overall<-3 and close > MA) strategy.close(id="long", when = window() and overall>1) bgcolor(color = showDate and window() ? color.gray : na, transp = 90) plot(overall, color=color.black, title='Overall Percentage Change', linewidth=3) band1 = hline(1, "Upper Band", color=#C0C0C0) band0 = hline(-2, "Lower Band", color=#C0C0C0) fill(band1, band0, color=#9915FF, transp=90, title="Background") hline(0, title='Center Line', color=color.orange, linestyle=hline.style_solid, linewidth=2)