এই কৌশলটি একটি প্রবণতা অনুসরণকারী কৌশল যা মূল্য গতির সূচক ব্যবহার করে। এটি একটি নির্দিষ্ট সময়ের মধ্যে বন্ধের মূল্য পরিবর্তন গণনা করে বাজার প্রবণতা বিচার করে এবং যখন একটি ধ্রুবক আপ বা ডাউন মূল্য প্রবণতা থাকে তখন সংশ্লিষ্ট দীর্ঘ বা সংক্ষিপ্ত এন্ট্রি করে।
এই কৌশলটির মূল সূচক হ'ল মূল্য গতি। গতির হিসাব করা হয়ঃ
momentum = close - close[n]
যেখানে n হল গতির সময়কালের দৈর্ঘ্য। যখন গতি > 0, এর অর্থ হল যে বর্তমান সময়ের মধ্যে দাম বেড়েছে। যখন গতি < 0, এর অর্থ হল বর্তমান সময়ের মধ্যে দাম কমেছে।
কৌশলটি প্রথমে একটি কনফার্মবার্স প্যারামিটার সেট করে, যা ট্রেডগুলি সম্পাদনের আগে প্রবণতা বিচারের জন্য প্রয়োজনীয় মোমবাতিগুলির সংখ্যাকে উপস্থাপন করে। ব্যাকটেস্ট পরিসরের মধ্যে, যদি কনফার্মবারস মোমবাতিগুলির জন্য গতি > 0 অব্যাহত থাকে তবে একটি দীর্ঘ এন্ট্রি করা হয়। যদি কনফার্মবারস মোমবাতিগুলির জন্য গতি < 0 অব্যাহত থাকে তবে একটি সংক্ষিপ্ত এন্ট্রি করা হয়।
কৌশলটির প্রবণতা রায়ের মূল চাবিকাঠি হ'ল ধারাবাহিক মোমবাতিগুলির সংখ্যা গণনা করা যেখানে গতি 0 এর চেয়ে বড় বা কম, যা bcount এবং ডিসকাউন্ট ভেরিয়েবলের মাধ্যমে সম্পন্ন হয়। যখন সংশ্লিষ্ট শর্ত পূরণ হয় তখন তারা 1 দ্বারা বৃদ্ধি পায় এবং শর্তটি পূরণ না হলে 0 এ পুনরায় সেট করা হয়। যখন গণনাটি কনফার্মবারগুলিতে পৌঁছে যায়, তখন সংশ্লিষ্ট দীর্ঘ বা সংক্ষিপ্ত বাণিজ্য কার্যকর করা হয়।
এটি একটি তুলনামূলকভাবে সহজ প্রবণতা যা নিম্নলিখিত সুবিধাগুলির সাথে কৌশল অনুসরণ করেঃ
এই কৌশলের কিছু ঝুঁকিও রয়েছে:
কৌশলটি বেশ কয়েকটি দিক থেকে অপ্টিমাইজ করা যেতে পারেঃ
সংক্ষেপে, এই গতির ব্রেকআউট কৌশলটি একটি সহজ এবং ব্যবহারিক প্রবণতা অনুসরণকারী কৌশল যা একটি প্রারম্ভিক পরিমাণ ট্রেডিং কৌশল হিসাবে উপযুক্ত। প্রয়োগে, বাণিজ্যের ফ্রিকোয়েন্সি নিয়ন্ত্রণ এবং ওভারট্রেডিং রোধে মনোযোগ প্রয়োজন। এদিকে, পরামিতি এবং ফিল্টারগুলি সর্বোচ্চ পারফরম্যান্স অর্জনের জন্য কৌশলটির প্রকৃত পণ্য এবং বাজারের পরিবেশের উপর ভিত্তি করে সামঞ্জস্য এবং অনুকূলিত করা দরকার।
/*backtest start: 2024-01-09 00:00:00 end: 2024-01-16 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Momentum Strategy [TS Trader]", overlay=true) confirmBars = input(1) momentumLength = input(14, title="Momentum Length") price = close momentum = close - close[momentumLength] // === INPUT BACKTEST RANGE === fromYear = input.int(2019, title="Backtest Start Year") fromMonth = input.int(1, title="Backtest Start Month", minval=1, maxval=12) fromDay = input.int(1, title="Backtest Start Day", minval=1, maxval=31) toYear = input.int(2023, title="Backtest End Year") toMonth = input.int(12, title="Backtest End Month", minval=1, maxval=12) toDay = input.int(31, title="Backtest End Day", minval=1, maxval=31) startTimestamp = timestamp(fromYear, fromMonth, fromDay, 00, 00) endTimestamp = timestamp(toYear, toMonth, toDay, 23, 59) inBacktestRange = true // === STRATEGY LOGIC === bcond = momentum > 0 bcount = 0 bcount := bcond ? nz(bcount[1]) + 1 : 0 if (bcount == confirmBars and inBacktestRange) strategy.entry("Buy", strategy.long, comment="Long") scond = momentum < 0 scount = 0 scount := scond ? nz(scount[1]) + 1 : 0 if (scount == confirmBars and inBacktestRange) strategy.entry("Sell", strategy.short, comment="Short") // Plotting Momentum plot(momentum, title="Momentum", color=color.purple)