মুভিং এভারেজ রিভার্স ক্রসিং কৌশল একটি প্রযুক্তিগত বিশ্লেষণ কৌশল। এটি মুভিং এভারেজের দিক এবং শেয়ারের দামের সাথে সম্পর্ক ব্যবহার করে একটি পজিশনে প্রবেশ বা প্রস্থান করার সময় নির্ধারণ করে। বিশেষত, যখন শেয়ারের দাম 45 দিনের মুভিং এভারেজকে উপরে থেকে নীচে অতিক্রম করে তখন শূন্য থাকে; যখন খালি পজিশনটি 8 দিন পরে পজিশনটি প্লেইন করে; এবং তারপরে আবার শেয়ারের দাম 45 দিনের মুভিং এভারেজকে অতিক্রম করে নীচে নেমে যাওয়ার সংকেত দেয় তখন শূন্য হতে পারে।
এই কৌশলটির মূল যুক্তি হলঃ
বিশেষ করে:
এই যুক্তি অনুসারে, আপনি মুভিং এভারেজগুলিকে উল্লেখযোগ্যভাবে নীচে নামানোর সময় শূন্য করতে পারেন এবং নির্দিষ্ট সময়ের পরে একটি cutoff loss করতে পারেন।
এই কৌশলটির কিছু সুবিধা রয়েছেঃ
অন্যান্য কৌশলগুলির তুলনায়, এই কৌশলটি বোঝা সহজ এবং বাস্তবায়নের জন্য সহজ প্রোগ্রামিং। একই সাথে, এটি শেয়ারের দামের প্রবণতা নির্ধারণের জন্য একটি পরিচিত প্রযুক্তিগত সূচক, চলমান গড় ব্যবহার করে। যখন দাম চলমান গড়কে ভেঙে দেয়, তখন প্রায়শই স্বল্পমেয়াদী প্রবণতা বিপরীত হয়। তাই কিছু বিপরীত সুযোগ ধরা যায়।
এছাড়াও, কৌশলটিতে প্রবেশের নিয়ম এবং 8 দিনের স্থির ক্ষতির পদ্ধতি রয়েছে, যা ঝুঁকি নিয়ন্ত্রণকে আরও স্পষ্ট করে তোলে। ভুয়া ভাঙ্গার ঘটনাগুলিও কিছুটা পরিসরে ফিল্টার করা হয়। সামগ্রিকভাবে, কৌশলটি সহজ, ব্যবহারিক এবং সহজেই আয়ত্ত করা যায়।
কিন্তু এই কৌশলটির কিছু ঝুঁকিও রয়েছেঃ
বিশেষ করে, মুভিং এভারেজ নিজেই দামের পরিবর্তনের সাথে পিছিয়ে থাকে, তাই এটির সংকেত দেওয়ার সময়টি সঠিক হতে পারে না। কিছু বিচ্ছিন্নতা অস্থায়ী হতে পারে এবং প্রকৃতপক্ষে বিপরীত দিকটি ধরে রাখতে পারে না।
এছাড়া, ৮ দিনের পোজিশনের সময়কাল তুলনামূলকভাবে কম। বড় স্টক মার্কেটে, এই ধরনের স্টপ লস সেটিংটি খুব বেশি আগ্রাসী হতে পারে, যা বড় বিপর্যয়কে ধারাবাহিকভাবে ধরতে পারে না। এটি বাজারে পুনরাবৃত্তির লেনদেনের সংখ্যাও বৃদ্ধি করে।
কৌশলগতভাবে, ব্রেকিং সিগন্যালের বিচার কেবলমাত্র দামের সাথে চলমান গড়ের সম্পর্কের উপর নির্ভর করে। সংকেতগুলিকে ফিল্টার করার জন্য আরও নিশ্চিতকরণ সূচক বা শর্তগুলি সেট করা হয় না। এটি এমন একটি পরিস্থিতিতে ঘটে যখন কিছু পরিমাণে মিথ্যা ব্রেকিং হয়।
অবশেষে, কোনও স্টপ-অফ পয়েন্ট সেট করা হয়নি যাতে মুনাফা লক করা যায়। এইভাবে, ক্ষতি বন্ধ হওয়ার আগে মুনাফা কেটে ফেলা হতে পারে।
উপরের ঝুঁকি বিশ্লেষণের ভিত্তিতে, এই কৌশলটি নিম্নলিখিত দিকগুলি থেকে অপ্টিমাইজ করা যেতে পারেঃ
উদাহরণস্বরূপ, অন্যান্য প্রযুক্তিগত সূচক যেমন এমএসিডি, কেডি কনফিগার করা যেতে পারে, যখন তারাও একটি নির্দিষ্ট সংকেত প্রদর্শিত হয় তখন ট্রেন্ড রিভার্স সনাক্ত করা যায়। অথবা ট্রেডিং ভলিউমের বিস্ফোরক বৃদ্ধি কনফিগার করা যেতে পারে।
উদাহরণস্বরূপ, যখন দাম একটি নির্দিষ্ট স্থির মাত্রা অতিক্রম করে তখনই বন্ধ হয়ে যায়। অথবা যখন অন্যান্য সূচকগুলি (যেমন MACD) সংকেত দেয় তখনই বন্ধ হয়ে যায়।
অর্থাৎ, দামের একটি নির্দিষ্ট অনুপাতে চলার পর ধীরে ধীরে স্টপ-অফ পয়েন্টগুলোকে সরিয়ে নিলে মুনাফা লক করা যায়।
বিভিন্ন দিনের পরামিতি চেষ্টা করুন এবং পরীক্ষা করুন, সর্বোত্তম প্যারামিটার খুঁজুন। দ্বৈত চলমান গড় সিস্টেম কনফিগার করা যেতে পারে।
এই অপ্টিমাইজেশানগুলির মাধ্যমে, কৌশলটি সহজ এবং কার্যকর রাখার ভিত্তিতে, সংকেতের গুণমান উন্নত করা যায়, মিথ্যা বিরতির সম্ভাবনা হ্রাস করা যায়; প্রবণতা থেকে আরও বেশি লাভ পাওয়া যায়; এবং আরও শক্তিশালী ঝুঁকি নিয়ন্ত্রণের ক্ষমতা রয়েছে। যার ফলে সম্ভবত আরও ভাল কৌশলগত পারফরম্যান্স পাওয়া যায়।
চলমান গড় বিপরীত ক্রসিং কৌশলটি একটি খুব সহজ এবং ব্যবহারিক সংক্ষিপ্ত লাইন ট্রেডিং কৌশল। এটি চলমান গড়, একটি সুপরিচিত প্রযুক্তিগত সূচক ব্যবহার করে, শেয়ারের দামের স্বল্পমেয়াদী প্রবণতা বিপরীত হওয়ার সংকেত রয়েছে কিনা তা নির্ধারণ করে। এটি সহজে বোঝা, বাস্তবায়ন সহজ, ঝুঁকি নিয়ন্ত্রণযোগ্য ইত্যাদির মতো সুবিধাগুলি রয়েছে। তবে কিছু অপ্টিমাইজযোগ্য সমস্যা রয়েছে, যেমন ভুয়া ব্রেকিং, পজিশন হোল্ডিং সময় ইত্যাদি। যুক্তিসঙ্গত প্রযুক্তিগত সূচক বা প্যারামিটার কনফিগারেশনের মাধ্যমে, কৌশলটির কার্যকারিতা এবং ঝুঁকি নিয়ন্ত্রণের ক্ষমতা আরও বাড়ানো যেতে পারে, তার সহজ এবং কার্যকর বৈশিষ্ট্য বজায় রেখে।
/*backtest
start: 2023-11-23 00:00:00
end: 2023-11-28 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Moving Average Reverse Crossover Strategy", overlay=true)
// Calculate the 45-day moving average
ma_length = 45
ma = ta.sma(close, ma_length)
// Track position entry and entry bar
var bool in_short_position = na
var int entry_bar = na
var int exit_bar = na
// Entry condition: Close price crosses below the 45-day moving average to enter the short position
if (not in_short_position and ta.crossunder(close, ma) and not na(ma[1]) and close < ma and close[1] > ma[1])
in_short_position := true
entry_bar := bar_index
// Exit condition: Close the short position after holding for 8 trading days
if (in_short_position and bar_index - entry_bar >= 8)
in_short_position := false
exit_bar := bar_index
// Re-entry condition: Wait for price to cross below the 45-day moving average again
if (not in_short_position and ta.crossunder(close, ma) and not na(ma[1]) and close < ma and close[1] < ma[1] and (na(exit_bar) or bar_index - exit_bar >= 8))
in_short_position := true
entry_bar := bar_index
// Execute short entry and exit
if (in_short_position)
strategy.entry("Short", strategy.short)
if (not in_short_position)
strategy.close("Short")