চলমান গড় ক্রসওভার ট্রেন্ড অনুসরণকারী কৌশল একটি পরিমাণগত ট্রেডিং কৌশল যা বাজারের প্রবণতা ট্র্যাক করে। কৌশলটি দ্রুত এবং ধীর চলমান গড় গণনা করে ট্রেডিং সংকেত উত্পন্ন করে এবং ক্রসওভার ঘটে যখন বাজারের প্রবণতার টার্নিং পয়েন্টগুলি ধরা পড়ে।
এই কৌশলটির মূল নীতি হ'ল বিভিন্ন পরামিতি সহ এক্সপোনেন্সিয়াল মুভিং এভারেজ (ইএমএ) ব্যবহার করে বাজারের প্রবণতা বিচার করা। কৌশলটি একটি দ্রুত ইএমএ এবং একটি ধীর ইএমএ সংজ্ঞায়িত করে। যখন দ্রুত ইএমএ ধীর ইএমএর উপরে অতিক্রম করে, এটি বাজারে একটি উত্থান প্রবণতা বিপরীত নির্দেশ করে। যখন দ্রুত ইএমএ ধীর ইএমএর নীচে অতিক্রম করে, এটি একটি হ্রাস প্রবণতা বিপরীত নির্দেশ করে।
উপরের ক্রসগুলিতে, কৌশলটি লং পজিশন খুলবে। নেমে যাওয়া ক্রসগুলিতে, কৌশলটি শর্ট পজিশন খুলবে। কৌশলটি তার অবস্থান ধরে রাখবে যতক্ষণ না লাভ বা স্টপ লস ট্রিগার হয়, বা বিপরীত দিকের ক্রসওভার আবার ঘটে।
এই কৌশলটির নিম্নলিখিত সুবিধা রয়েছে:
এই কৌশলের কিছু ঝুঁকিও রয়েছে:
ঝুঁকি হ্রাস করার জন্য, প্রবণতার ধরন নির্ধারণের জন্য অন্যান্য সূচককে একত্রিত করার কথা বিবেচনা করুন, অথবা বৃহত্তর স্টপ লস অনুপাত নির্ধারণ করুন।
কৌশলটি নিম্নলিখিত দিকগুলিতেও অপ্টিমাইজ করা যেতে পারেঃ
সংক্ষেপে, মুভিং এভারেজ ক্রসওভার ট্রেন্ড অনুসরণকারী কৌশলটি একটি সহজ এবং ব্যবহারিক ট্রেন্ড ট্রেডিং কৌশল। কৌশলটির মূল ধারণাগুলি পরিষ্কার এবং বাস্তবায়ন করা সহজ, এবং অপ্টিমাইজেশনের জন্যও জায়গা রয়েছে। পরামিতিগুলি সামঞ্জস্য করে, মাল্টি-টাইমফ্রেম বিশ্লেষণ যুক্ত করে, গতিশীল স্টপ ইত্যাদি, কৌশলটির স্থিতিশীলতা এবং লাভজনকতা ক্রমাগত উন্নত করা যেতে পারে।
/*backtest start: 2024-01-28 00:00:00 end: 2024-02-04 00:00:00 period: 5m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy('Zhukov trade', overlay=true, calc_on_every_tick=true, currency=currency.USD) // INPUT: // Options to enter fast and slow Exponential Moving Average (EMA) values emaFast = input.int(title='Fast EMA', defval=10, minval=1, maxval=9999) emaSlow = input.int(title='Slow EMA', defval=20, minval=1, maxval=9999) // Option to select trade directions tradeDirection = input.string(title='Trade Direction', options=['Long', 'Short', 'Both'], defval='Both') // Options that configure the backtest date range startDate = input(title='Start Date', defval=timestamp('01 Jan 2023 00:00')) endDate = input(title='End Date', defval=timestamp('31 Dec 2030 23:59')) // Set take profit and stop loss percentages take_profit_percent = input(1.0, title ="Take Profit Percent") / 100.0 stop_loss_percent = input(1.0, title ="Stop Loss Percent") / 100.0 // CALCULATIONS: // Use the built-in function to calculate two EMA lines fastEMA = ta.ema(close, emaFast) slowEMA = ta.ema(close, emaSlow) emapos = ta.ema(close, 200) // PLOT: // Draw the EMA lines on the chart plot(series=fastEMA, color=color.new(color.orange, 0), linewidth=2) plot(series=slowEMA, color=color.new(color.blue, 0), linewidth=2) plot(series=emapos, color=color.new(color.red, 0), linewidth=2) // CONDITIONS: // Check if the close time of the current bar falls inside the date range inDateRange = true // Translate input into trading conditions longOK = tradeDirection == 'Long' or tradeDirection == 'Both' shortOK = tradeDirection == 'Short' or tradeDirection == 'Both' // Decide if we should go long or short using the built-in functions longCondition = ta.crossover(fastEMA, slowEMA) and inDateRange shortCondition = ta.crossunder(fastEMA, slowEMA) and inDateRange // ORDERS: // Submit entry (or reverse) orders if longCondition and longOK strategy.entry(id='long', direction=strategy.long) if shortCondition and shortOK strategy.entry(id='short', direction=strategy.short) // Exit orders if strategy.position_size > 0 and longOK strategy.exit(id='exit long', from_entry='long', limit=strategy.position_avg_price * (1 + take_profit_percent), stop=strategy.position_avg_price * (1 - stop_loss_percent)) if strategy.position_size < 0 and shortOK strategy.exit(id='exit short', from_entry='short', limit=strategy.position_avg_price * (1 - take_profit_percent), stop=strategy.position_avg_price * (1 + stop_loss_percent))