দ্রুত এবং ধীর চলমান গড় ক্রসওভার কৌশল একটি সহজ চলমান গড় ভিত্তিক কৌশল। এটি দুটি চলমান গড় ব্যবহার করে, একটি দ্রুত এবং একটি ধীর। যখন দ্রুত চলমান গড় নীচে থেকে ধীর চলমান গড়ের উপরে অতিক্রম করে, এটি দীর্ঘ হয়, যা নির্দেশ করে যে দামগুলি বাড়তে পারে। যখন দ্রুত চলমান গড় উপরে থেকে ধীর চলমান গড়ের নীচে অতিক্রম করে, এটি তার অবস্থান থেকে বেরিয়ে আসে, যা নির্দেশ করে যে দামগুলি হ্রাস পেতে পারে। এটি ভবিষ্যতের মূল্য কর্মের পূর্বাভাস দেওয়ার জন্য একটি সূচক হিসাবে কাজ করতে পারে।
কৌশলটি দুটি চলমান গড় ব্যবহার করে, একটি দ্রুত এবং একটি ধীর। বিশেষত, ডিফল্ট দৈর্ঘ্যগুলি দ্রুত চলমান গড়ের জন্য 25 পিরিয়ড এবং ধীরের জন্য 62 পিরিয়ড। কৌশলটি এসএমএ, ইএমএ, ডাব্লুএমএ, আরএমএ এবং ভিডাব্লুএমএ সহ বিভিন্ন ধরণের চলমান গড় নির্বাচন করতে দেয়।
যখন দ্রুত চলমান গড় নীচে থেকে ধীর চলমান গড়ের উপরে অতিক্রম করে, এটি সংকেত দেয় যে স্বল্পমেয়াদী দামগুলি দীর্ঘমেয়াদী দামগুলি ভেঙে ফেলতে শুরু করেছে, যা একটি সাধারণ সোনার ক্রস সংকেত, যা নির্দেশ করে যে দামগুলি একটি আপট্রেন্ডে প্রবেশ করতে পারে। কৌশলটি এই মুহুর্তে দীর্ঘ হয়। যখন দ্রুত চলমান গড় উপরে থেকে ধীর চলমান গড়ের নীচে অতিক্রম করে, এটি সংকেত দেয় যে স্বল্পমেয়াদী দামগুলি দীর্ঘমেয়াদী দামগুলি ভেঙে ফেলতে শুরু করেছে, যা একটি মৃত্যু ক্রস সংকেত, যা নির্দেশ করে যে দামগুলি একটি ডাউনট্রেন্ডে প্রবেশ করতে পারে। কৌশলটি এই মুহুর্তে তার অবস্থান থেকে বেরিয়ে আসে।
দামের প্রবণতা এবং দিকনির্দেশনা নির্ধারণের জন্য দ্রুত এবং ধীর গতির গড়ের ক্রসওভার ব্যবহার করে এবং সংশ্লিষ্ট দীর্ঘ বা বন্ধ অবস্থানগুলি গ্রহণ করে মুনাফা অর্জন করা যায়।
এই কৌশলটির নিম্নলিখিত সুবিধা রয়েছে:
সংক্ষেপে, দ্রুত এবং ধীর চলমান গড় ক্রসওভারের সাথে মূল ট্রেডিং সিগন্যাল হিসাবে, কৌশলটি ভবিষ্যতের মূল্য প্রবণতা বিচার করার ক্ষেত্রে একটি শক্তিশালী ক্ষমতা রয়েছে। এর প্রবণতা অনুসরণকারী গুণাবলীর উপর ভিত্তি করে, শালীন মুনাফা অর্জন করা যেতে পারে, যা লাইভ ট্রেডিং অ্যাপ্লিকেশনগুলির জন্য এটি মূল্যবান করে তোলে।
এই কৌশলটির কিছু সম্ভাব্য ঝুঁকিও রয়েছেঃ
এই ঝুঁকিগুলি নিয়ন্ত্রণ এবং হ্রাস করার জন্য, নিম্নলিখিত পদ্ধতিগুলি গ্রহণ করা যেতে পারেঃ
কৌশলটি অপ্টিমাইজ করার প্রধান দিকগুলির মধ্যে রয়েছেঃ
দ্রুত এবং ধীর চলমান গড়ের জন্য সময়ের নির্বাচনঃ ডিফল্ট পরামিতিগুলি সর্বোত্তম নাও হতে পারে, সেরা কনফিগারেশন খুঁজে পেতে বিভিন্ন সময় পরীক্ষা করা যেতে পারে
চলমান গড়ের ধরন নির্বাচনঃ একাধিক ধরন প্রদান করা হয় এবং নির্দিষ্ট পণ্যের জন্য কোনটি সবচেয়ে ভাল কাজ করে তা পরীক্ষা করা যায়
অন্যান্য সূচক বা কৌশলগুলির সাথে সংমিশ্রণঃ পারফরম্যান্স উন্নত করার জন্য অস্থিরতা সূচক, ভলিউম-মূল্য সূচক বা প্রবণতা অনুসরণকারী কৌশলগুলির সাথে সংমিশ্রণ চেষ্টা করতে পারে
প্যারামিটার অভিযোজিত অপ্টিমাইজেশানঃ স্থিতিশীলতা উন্নত করার জন্য বাজারের অস্থিরতা এবং তরলতার উপর ভিত্তি করে চলমান গড়ের সময়কালকে স্বয়ংক্রিয়ভাবে সামঞ্জস্য করার অনুমতি দেয়
এআই মডেল সহায়তাঃ বড় পরিমাণে ডেটা বিশ্লেষণ এবং স্বয়ংক্রিয়ভাবে সর্বোত্তম ট্রেডিং নিয়ম অনুসন্ধান করতে মেশিন লার্নিং অ্যালগরিদম ব্যবহার করুন
এই অপ্টিমাইজেশান পদ্ধতিগুলির মাধ্যমে, কৌশলটির লাভজনকতা এবং স্থিতিশীলতার আরও উন্নতি আশা করা যেতে পারে।
সংক্ষেপে, দ্রুত এবং ধীর চলমান গড় ক্রসওভার কৌশলটি একটি খুব ব্যবহারিক প্রবণতা অনুসরণকারী কৌশল। এটি সম্ভাব্য ভবিষ্যতের মূল্য প্রবণতা এবং দিক নির্ধারণের জন্য ধীর চলমান গড়ের দ্রুত চলমান গড়ের ক্রসওভার ব্যবহার করে বিভিন্ন সময়সীমার মধ্যে মূল্য পরিবর্তনের নিদর্শনগুলি ক্যাপচার করে। কৌশল ধারণাটি সহজ এবং পরিষ্কার, বুঝতে এবং বাস্তবায়ন করা সহজ, নমনীয় কাস্টমাইজযোগ্য পরামিতি সরবরাহ করে এবং এতে উচ্চ নির্ভরযোগ্যতা, অটোমেশন ডিগ্রি, বিস্তৃত প্রয়োগযোগ্যতা এবং শক্তিশালী প্রসারণযোগ্যতা রয়েছে। অবশ্যই মিথ্যা সংকেতগুলির ঝুঁকি রয়েছে, সর্বাধিক প্রভাব অর্জনের জন্য অন্যান্য সূচকগুলির সাথে সংমিশ্রণের প্রয়োজন। অবিচ্ছিন্ন পরীক্ষার এবং অপ্টিমাইজেশনের সাথে, কৌশলটি লাইভ ট্রেডিংয়ে শালীন স্থিতিশীল মুনাফা অর্জনের সম্ভাবনা রয়েছে।
/*backtest start: 2023-02-20 00:00:00 end: 2024-02-26 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 //Author @divonn1994 initial_balance = 100 strategy(title='Fast v Slow Moving Averages Strategy', shorttitle = 'Fast v Slow', overlay=true, pyramiding=0, default_qty_value=100, default_qty_type=strategy.percent_of_equity, precision=7, currency=currency.USD, commission_value=0.1, commission_type=strategy.commission.percent, initial_capital=initial_balance) //Input for number of bars for moving average, Switch to choose moving average type, Display Options and Time Frame of trading---------------------------------------------------------------- fastBars = input.int(25, "Fast moving average length", minval=1) slowBars = input.int(62, "Slow moving average length", minval=1) strategy = input.string("EMA", "MA type", options = ["EMA", "VWMA", "SMA", "RMA", "WMA"]) redOn = input.string("On", "Red Background Color On/Off", options = ["On", "Off"], group='Display') greenOn = input.string("On", "Green Background Color On/Off", options = ["On", "Off"], group='Display') maOn = input.string("On", "Moving Average Plot On/Off", options = ["On", "Off"], group='Display') startMonth = input.int(title='Start Month 1-12 (set any start time to 0 for furthest date)', defval=1, minval=0, maxval=12, group='Beginning of Strategy') startDate = input.int(title='Start Date 1-31 (set any start time to 0 for furthest date)', defval=1, minval=0, maxval=31, group='Beginning of Strategy') startYear = input.int(title='Start Year 2000-2100 (set any start time to 0 for furthest date)', defval=2011, minval=2000, maxval=2100, group='Beginning of Strategy') endMonth = input.int(title='End Month 1-12 (set any end time to 0 for today\'s date)', defval=0, minval=0, maxval=12, group='End of Strategy') endDate = input.int(title='End Date 1-31 (set any end time to 0 for today\'s date)', defval=0, minval=0, maxval=31, group='End of Strategy') endYear = input.int(title='End Year 2000-2100 (set any end time to 0 for today\'s date)', defval=0, minval=0, maxval=2100, group='End of Strategy') //Strategy Calculations----------------------------------------------------------------------------------------------------------------------------------------------------------------------- inDateRange = true maMomentum = switch strategy "EMA" => (ta.ema(close, fastBars) >= ta.ema(close, slowBars)) ? 1 : -1 "SMA" => (ta.sma(close, fastBars) >= ta.sma(close, slowBars)) ? 1 : -1 "RMA" => (ta.rma(close, fastBars) >= ta.rma(close, slowBars)) ? 1 : -1 "WMA" => (ta.wma(close, fastBars) >= ta.wma(close, slowBars)) ? 1 : -1 "VWMA" => (ta.vwma(close, fastBars) >= ta.vwma(close, slowBars)) ? 1 : -1 => runtime.error("No matching MA type found.") float(na) fastMA = switch strategy "EMA" => ta.ema(close, fastBars) "SMA" => ta.sma(close, fastBars) "RMA" => ta.rma(close, fastBars) "WMA" => ta.wma(close, fastBars) "VWMA" => ta.vwma(close, fastBars) => runtime.error("No matching MA type found.") float(na) slowMA = switch strategy "EMA" => ta.ema(close, slowBars) "SMA" => ta.sma(close, slowBars) "RMA" => ta.rma(close, slowBars) "WMA" => ta.wma(close, slowBars) "VWMA" => ta.vwma(close, slowBars) => runtime.error("No matching MA type found.") float(na) //Enter or Exit Positions-------------------------------------------------------------------------------------------------------------------------------------------------------------------- if ta.crossover(maMomentum, 0) if inDateRange strategy.entry('long', strategy.long, comment='long') if ta.crossunder(maMomentum, 0) if inDateRange strategy.close('long') //Plot Strategy Behavior--------------------------------------------------------------------------------------------------------------------------------------------------------------------- plot(series = maOn == "On" ? fastMA : na, title = "Fast Moving Average", color = color.new(color.white,0), linewidth=2, offset=1) plot(series = maOn == "On" ? slowMA : na, title = "Slow Moving Average", color = color.new(color.purple,0), linewidth=3, offset=1) bgcolor(color = inDateRange and (greenOn == "On") and maMomentum > 0 ? color.new(color.green,75) : inDateRange and (redOn == "On") and maMomentum <= 0 ? color.new(color.red,75) : na, offset=1)