মোমেন্টাম কৌশল
সারসংক্ষেপ
মোমেন্টাম কৌশল হলো এমন একটি কৌশল যা দামের পরিবর্তনের প্রবণতা অনুসরণ করে লেনদেন করে। এই কৌশলটি নির্দিষ্ট সময়সীমার মধ্যে দামের পরিবর্তন গণনা করে, দামের গতিবিধি বিচার করে এবং তারপর লেনদেনের সংকেত তৈরি করে। যখন দাম ঊর্ধ্বমুখী প্রবণতা দেখায়, তখন ক্রয় সংকেত তৈরি হয়; যখন দাম অধোগামী প্রবণতা দেখায়, তখন বিক্রয় সংকেত তৈরি হয়। এই কৌশলটি দ্বৈত মোমেন্টাম সূচকের ক্রসওভার ব্যবহার করে লেনদেনের সংকেত তৈরি করে।
কৌশলের মূলনীতি
এই কৌশলটি নির্দিষ্ট সময়সীমার মধ্যে ক্লোজিং মূল্যের পরিবর্তন গণনা করে দামের মোমেন্টাম নির্ণয় করে। বিশেষ করে, এটি বর্তমান ক্লোজিং মূল্যের তুলনায় N সময়কাল আগের ক্লোজিং মূল্যের পরিবর্তন গণনা করে।
প্রথমে প্রথম মোমেন্টাম সূচক MOM0 গণনা করা হয়, সূত্রটি হলো:
MOM0 = CLOSE - CLOSE[N]
এখানে, CLOSE বর্তমান সময়ের ক্লোজিং মূল্য এবং CLOSE[N] N সময়কাল আগের ক্লোজিং মূল্য নির্দেশ করে। এইভাবে MOM0>0 হলে বোঝায় বর্তমান সময়ের ক্লোজিং মূল্য N সময়কাল আগের ক্লোজিং মূল্যের চেয়ে বেড়েছে, এবং MOM0<0 হলে বোঝায় বর্তমান সময়ের ক্লোজিং মূল্য কমেছে।
তারপর দ্বিতীয় মোমেন্টাম সূচক MOM1 গণনা করা হয়, সূত্রটি হলো:
MOM1 = MOM0 - MOM0[1]
অর্থাৎ, বর্তমান সময়ের MOM0 মান থেকে পূর্ববর্তী সময়ের MOM0 মান বাদ দেওয়া হয়। MOM1>0 হলে বোঝায় MOM0 বাড়ছে, এবং MOM1<0 হলে বোঝায় MOM0 কমছে।
একই সাথে তৃতীয় মোমেন্টাম সূচক MOM2 গণনা করা হয়, সূত্রটি হলো:
MOM2 = CLOSE - CLOSE[1]
অর্থাৎ, বর্তমান সময়ের ক্লোজিং মূল্য থেকে পূর্ববর্তী সময়ের ক্লোজিং মূল্য বাদ দেওয়া হয়। MOM2>0 হলে বোঝায় ক্লোজিং মূল্য বেড়েছে, এবং MOM2<0 হলে বোঝায় ক্লোজিং মূল্য কমেছে।
যখন MOM0>0 এবং MOM1>0 হয়, তখন বোঝায় মোমেন্টাম ক্রমাগত বাড়ছে এবং ক্রয় সংকেত তৈরি হয়; যখন MOM0<0 এবং MOM2<0 হয়, তখন বোঝায় মোমেন্টাম ক্রমাগত কমছে এবং বিক্রয় সংকেত তৈরি হয়।
কোডে সময়ের শর্ত time_cond যোগ করা হয়েছে, যাতে শুধুমাত্র নির্ধারিত ব্যাকটেস্টিং সময়সীমার মধ্যে লেনদেনের সংকেত তৈরি হয়। এছাড়া অর্ডার দেওয়ার আগে আবার শর্তগুলো পরীক্ষা করা হয় যাতে সংকেত অদৃশ্য হওয়ার পরও অর্ডার না দেওয়া হয়।
সুবিধা বিশ্লেষণ
- মোমেন্টাম কৌশল দামের পরিবর্তনের প্রবণতা ধারণ করে, দাম নিজেই দ্বারা প্রভাবিত হয় না, তাই উচ্চ মূল্যে কেনা এবং নিম্ন মূল্যে বিক্রির ঝুঁকি এড়ানো যায়।
- দ্বৈত মোমেন্টাম সূচকের ক্রসওভার ব্যবহার করে মিথ্যা ব্রেকআউট ফিল্টার করা যায় এবং ভুল সংকেত এড়ানো যায়।
- সময় এবং শর্ত পরীক্ষা যোগ করে অকার্যকর লেনদেন কমানো যায়।
- সহজে বোধগম্য কৌশলের মূলনীতি, বাস্তবায়ন করা সহজ।
- প্যারামিটারগুলি নমনীয়ভাবে সামঞ্জস্য করা যায়, বিভিন্ন বাজার পরিবেশের জন্য উপযোগী।
ঝুঁকি বিশ্লেষণ
- মোমেন্টাম সূচকগুলিতে পিছিয়ে থাকার ধর্ম রয়েছে, তাই টার্নিং পয়েন্ট মিস হতে পারে।
- দ্বৈত সূচকের ক্রসওভার ফিল্টারিং প্রভাব বাড়ালেও কিছু সুযোগ মিস হতে পারে।
- দামের ঊর্ধ্বগতি বা অধোগতির তীব্রতা এবং গতি নির্ণয় করা যায় না।
- প্যারামিটার নির্বাচনে সতর্কতা প্রয়োজন; অতিরিক্ত সংবেদনশীল হলে লেনদেনের ফ্রিকোয়েন্সি এবং স্লিপেজ খরচ বাড়তে পারে।
- ফলাফল প্যারামিটার অপ্টিমাইজেশনের উপর নির্ভরশীল; বিভিন্ন সময়ে প্যারামিটার পরিবর্তন প্রয়োজন।
মোমেন্টাম সময়কাল সংক্ষিপ্ত করে, প্রবণতা বিচার যুক্ত করে, অথবা স্টপ-লস কনফিগার করে ঝুঁকি কমানো যায়। ট্রেডিং ভলিউম সূচক যোগ করেও ফিল্টারিং করা যেতে পারে।
অপ্টিমাইজেশনের দিকনির্দেশনা
- ROC, RSI-এর মতো বিভিন্ন মোমেন্টাম গণনা পদ্ধতি পরীক্ষা করা।
- প্রবণতা বিচার যোগ করে রিভার্সাল এবং রেঞ্জ বাজার এড়ানো।
- স্টপ-লস কৌশল কনফিগার করে প্রতি ট্রেডে ক্ষতি নিয়ন্ত্রণ করা।
- ট্রেডিং ভলিউম সূচক যুক্ত করে নিশ্চিত করা যে ভলিউম সমর্থন রয়েছে।
- মেশিন লার্নিং অ্যালগরিদম যোগ করে প্যারামিটারের গতিশীল অপ্টিমাইজেশন করা।
- মাল্টি-টাইমফ্রেম কৌশল, স্বল্পমেয়াদী এবং দীর্ঘমেয়াদী প্রবণতা পৃথক করা।
- আন্তঃবাজার আর্ভিট্রেজ বিবেচনা করে বিভিন্ন বাজারের মূল্য সম্পর্ক ব্যবহার করা।
সারসংক্ষেপ
মোমেন্টাম কৌশল দামের পরিবর্তনের প্রবণতা ট্র্যাক করে, দাম নিজেই নয়, তাই এটি কার্যকরভাবে বাজারের গরম দিক চিহ্নিত করতে পারে এবং দাম বৃদ্ধি ও হ্রাসের সুযোগ গ্রহণ করতে পারে। তবে মোমেন্টামে পিছিয়ে থাকার ধর্ম রয়েছে; প্যারামিটার নির্বাচন এবং সমন্বয় অপ্টিমাইজেশন কৌশলের ফলাফলের জন্য অত্যন্ত গুরুত্বপূর্ণ। এই কৌশলটি দ্বৈত মোমেন্টাম সূচকের ক্রসওভারের উপর ভিত্তি করে তৈরি, যা কিছু শব্দ ফিল্টার করতে পারে। ক্রমাগত প্যারামিটার অপ্টিমাইজ করে, নতুন প্রযুক্তিগত সূচক যোগ করে, মেশিন লার্নিং ব্যবহার করে ইত্যাদি পদ্ধতিতে কৌশলের কার্যকারিতা আরও বাড়ানো যায় এবং ঝুঁকি নিয়ন্ত্রণ করা যায়।
/*backtest
start: 2022-09-25 00:00:00
end: 2023-02-03 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Momentum Strategy", overlay = false, precision = 2, initial_capital = 10000, default_qty_value = 10000, default_qty_type = strategy.cash, commission_type = strategy.commission.percent, commission_value = 0, calc_on_every_tick = true)
// Calculate start/end date and time condition- 1
