এটি একটি সাধারণ চলমান গড় ক্রসওভার ট্রেডিং কৌশল। এটি দ্রুত এবং ধীর চলমান গড়ের ক্রসওভার পয়েন্টগুলিকে ট্রেডিং সংকেত হিসাবে ব্যবহার করে। যখন দ্রুত চলমান গড় নীচে থেকে ধীর চলমান গড়ের উপরে অতিক্রম করে, তখন এটি কেনার সংকেত হিসাবে বিবেচিত হয়। যখন দ্রুত চলমান গড় উপরে থেকে ধীর চলমান গড়ের নীচে অতিক্রম করে, তখন এটি বিক্রয় সংকেত হিসাবে বিবেচিত হয়। এই কৌশলটি দুটি চলমান গড়কে একত্রিত করে এবং কার্যকরভাবে বাজার গোলমাল ফিল্টার করতে এবং প্রবণতা সনাক্ত করতে পারে।
এই কৌশলটির প্রধান ধাপগুলো হল:
দ্রুত চলমান গড় সময়ের fastMA এবং ধীর চলমান গড় সময়ের slowMA সেট করুন।
ইনপুট টাইপ টাইপ = 1 সহজ চলমান গড়, টাইপ = 2 এক্সপোনেনশিয়াল চলমান গড়।
ব্যাকটেস্ট সময় পরিসীমা শুরু এবং শেষ সেট করুন।
ক্রসওভার ফাংশন সংজ্ঞায়িত করুনঃ যখন দ্রুত গতির উপরে ধীর গতির ক্রস হয়, তখন ক্রয় সংকেত উৎপন্ন হয়; যখন দ্রুত গতির নীচে ক্রস হয়, তখন বিক্রয় সংকেত উৎপন্ন হয়।
যখন ক্রসওভার ফাংশনটি ট্রিগার করা হয়, যদি ব্যাকটেস্টের সময়সীমার মধ্যে থাকে, তাহলে লং ওপেন বা শর্ট ক্লোজ অর্ডার জারি করুন।
যখন ব্যাকটেস্ট উইন্ডো শেষ হয় বা ক্রসওভার ফাংশন নীচে অতিক্রম করে, দীর্ঘ অর্ডার বন্ধ করুন।
দ্রুত চলমান গড় দ্রুত এবং ধীর চলমান গড় ধীর গ্রাফ করুন।
এই কৌশলটি হোল্ডিং সময়ের মধ্যে প্রবণতা নির্ধারণ এবং তদনুসারে ট্রেডিং সংকেত উত্পন্ন করার জন্য দ্রুত এবং ধীর চলমান গড়ের ক্রসওভার ব্যবহার করে। ব্যাকটেস্ট সময় উইন্ডো বাস্তব ট্রেডিং অনুকরণ করে।
এই কৌশলটির সুবিধাঃ
চলমান গড়গুলি প্রবণতা নির্ধারণ এবং এলোমেলো ওঠানামা ফিল্টার করতে কার্যকর।
দ্রুত এবং ধীর গতির গড়ের সমন্বয় প্রবণতা পরিবর্তন সনাক্ত করতে পারে।
মুভিং মিডিয়ার পরামিতিগুলি বিভিন্ন সময়ের প্রবণতার সাথে খাপ খাইয়ে নেওয়ার জন্য সামঞ্জস্য করা যায়।
সহজ এবং এক্সপোনেন্সিয়াল চলমান গড়ের মধ্যে নমনীয় পছন্দ।
ব্যাকটেস্ট কার্যকারিতা কৌশল পরামিতি পরীক্ষা এবং অপ্টিমাইজ করার অনুমতি দেয়।
সহজ এবং সুস্পষ্ট যুক্তি, সহজেই বোঝা যায় এবং বাস্তবায়ন করা যায়।
চলমান গড় চার্ট আঁকা প্রবণতা এবং প্রভাবের চাক্ষুষ নির্ধারণের অনুমতি দেয়।
এই কৌশলটির কিছু ঝুঁকিঃ
পরিসীমা সীমাবদ্ধ সময়কালে মিথ্যা সংকেত তৈরি করতে পারে।
মুভিং মিডিয়ায় লেগিং এফেক্ট থাকে, হয়তো বাঁক পয়েন্ট মিস করতে পারে।
শুধুমাত্র চলমান গড় ক্রসওভারের উপর নির্ভর করে, অন্য কোন সূচক বা ফিল্টার নেই।
ট্রেডিং খরচ বিবেচনা করে না।
স্টপ লস কৌশল নেই।
অযৌক্তিক প্যারামিটার সেটিং কৌশল কর্মক্ষমতা প্রভাবিত করতে পারে।
ব্যাকটেস্টের সময়সীমার ভুল নির্বাচন অতিরিক্ত ফিটিংয়ের কারণ হতে পারে।
কৌশলটি নিম্নলিখিত দিকগুলিতে অপ্টিমাইজ করা যেতে পারেঃ
সিগন্যাল নিশ্চিত করতে এবং নির্ভুলতা বাড়াতে MACD, RSI এর মতো অন্যান্য সূচক যুক্ত করুন।
একক ক্ষতি নিয়ন্ত্রণের জন্য স্টপ লস কৌশল যোগ করুন।
বিভিন্ন সময়ের জন্য চলমান গড় প্যারামিটার অপ্টিমাইজ করুন।
বাজারের অবস্থার উপর ভিত্তি করে অবস্থান আকার যোগ করুন।
ট্রেডিং খরচ বিবেচনা করুন, এন্ট্রি এবং আউটপুট পয়েন্ট সামঞ্জস্য করুন।
অতিরিক্ত ফিটিং এড়াতে দীর্ঘ সময়সীমা পরীক্ষা করুন।
অগ্রগতি বিশ্লেষণ ব্যবহার করে পরামিতিগুলিকে ক্রমাগত অপ্টিমাইজ করুন।
চলমান গড় ক্রসওভার কৌশলটি একটি সহজ এবং ব্যবহারিক প্রবণতা অনুসরণকারী কৌশল। এটি এলোমেলো ওঠানামা ফিল্টার করতে পারে এবং প্রবণতার দিকনির্দেশগুলি সনাক্ত করতে পারে। তবে এর পিছনের প্রভাবের মতো কিছু সমস্যাও রয়েছে এবং এটি অন্যান্য সূচকগুলির সাথে একত্রিত করা উচিত। ক্রমাগত অপ্টিমাইজেশন এবং পরীক্ষা কৌশল কর্মক্ষমতা উন্নত করতে পারে এবং লাইভ ট্রেডিংয়ের জন্য এটি আরও নির্ভরযোগ্য করে তুলতে পারে। সামগ্রিকভাবে, এই কৌশলটি প্রবণতা নির্ধারণের জন্য অপেক্ষাকৃত কম প্রয়োজনীয়তার সাথে বিনিয়োগকারীদের উপযুক্ত।
/*backtest start: 2023-09-13 00:00:00 end: 2023-09-20 00:00:00 period: 30m basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 // strategy("MavCrossover v2", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100) // Revision: 1 // Author: @ToS_MavericK // === INPUT SMA === fastMA = input(defval = 13, title = "FastMA", minval = 1, step = 1) slowMA = input(defval = 144, title = "SlowMA", minval = 1, step = 1) Type = input(defval = 1, title = "Type (1 = SMA, 2 = EMA)", minval = 1, maxval = 2, step = 1) SlowMAIsFactor = input(false) slowMA := SlowMAIsFactor == true ? round(fastMA * slowMA) : slowMA // === INPUT BACKTEST RANGE === FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31) FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12) FromYear = input(defval = 2018, title = "From Year", minval = 2012) ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31) ToMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12) ToYear = input(defval = 2020, title = "To Year", minval = 2012) // === FUNCTION EXAMPLE === start = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window window() => true // create function "within window of time" // === MA SETUP === fast = Type == 1 ? sma(close, fastMA) : ema(close, fastMA) slow = Type == 1 ? sma(close, slowMA) : ema(close, slowMA) // === EXECUTION === strategy.entry("L", strategy.long, when = crossover(fast, slow) and window()) // buy long when "within window of time" AND crossover strategy.close("L", when = crossunder(fast, slow) or time > finish) // sell long when window ends OR crossunder plot(fast, title = 'FastMA', color = yellow, linewidth = 2, style = line) // plot FastMA plot(slow, title = 'SlowMA', color = aqua, linewidth = 2, style = line) // plot SlowMA