এমএসিডি এবং বোলিংজার ব্যান্ডের উপর ভিত্তি করে গতির প্রবণতা কৌশল

লেখক:চাওঝাং, তারিখঃ ২০২৪-০২-২৯ ১৩ঃ৪৯ঃ০৩
ট্যাগঃ

img

সারসংক্ষেপ

এই কৌশলটির নাম মোমেন্টাম ট্রেন্ড। এটি একটি ট্রেন্ড ট্র্যাকিং কৌশল বাস্তবায়নের জন্য এমএসিডি সূচক এবং বলিংজার ব্যান্ডের সুবিধাগুলিকে একত্রিত করে। কৌশলটি বলিংজার ব্যান্ড তৈরির জন্য এমএসিডি দ্রুত লাইন এবং ধীর লাইন ব্যবহার করে। বলিংজার ব্যান্ডের মাঝারি লাইনটি এমএসিডি সিগন্যাল লাইন। এটি যখন দাম বলিংজার ব্যান্ডের উপরের রেলের মাধ্যমে ভেঙে যায় তখন এটি সংক্ষিপ্ত হয় এবং যখন দাম বলিংজার ব্যান্ডের নিম্ন রেলের মাধ্যমে ভেঙে যায় তখন দীর্ঘ হয়। এটি মাঝারি-দীর্ঘমেয়াদী প্রবণতা ট্র্যাক করার জন্য বাজারে প্রবেশের আগে বলিংজার ব্যান্ডের মাঝারি লাইনটি পরীক্ষা করার জন্য pullback এর জন্য অপেক্ষা করে।

কৌশল নীতি

এই কৌশলটির মূল সূচক হল এমএসিডি এবং বলিংজার ব্যান্ড। এমএসিডি সূচকটি দ্রুত লাইন, ধীর লাইন এবং এমএসিডি হিস্টোগ্রাম নিয়ে গঠিত। দ্রুত লাইনটি সাধারণত 12 দিনের ইএমএ এবং ধীর লাইনটি 26 দিনের ইএমএ। তাদের মধ্যে পার্থক্য হল এমএসিডি হিস্টোগ্রাম। এই কৌশলটি বলিংজার ব্যান্ডের বেস মিডল লাইন হিসাবে দ্রুত লাইন এবং ধীর লাইনের মধ্যে পার্থক্য ব্যবহার করে। উপরের এবং নীচের রেলগুলি বলিংজার ব্যান্ডগুলি তৈরি করতে মধ্যরেখার চারপাশে সেট করা হয়।

একটি ক্রয় সংকেত উত্পন্ন হয় যখন মূল্য বোলিঞ্জার ব্যান্ডের নীচের রেল দিয়ে উপরে যায়। একটি বিক্রয় সংকেত উত্পন্ন হয় যখন মূল্য বোলিঞ্জার ব্যান্ডের উপরের রেল দিয়ে নীচে যায়। ফাঁদে পড়া এবং বিপরীতমুখী সুযোগগুলি মিস করার ঝুঁকি হ্রাস করার জন্য, এই কৌশলটি ব্রেকআউটের পরে অবিলম্বে বাজারে প্রবেশ করে না। পরিবর্তে, এটি প্রবেশের আগে বোলিঞ্জার ব্যান্ডের মাঝারি রেখাটি পরীক্ষা করার জন্য প্রত্যাহারের জন্য অপেক্ষা করে।

এছাড়াও, উপরের এবং নীচের রেলগুলি যথাক্রমে প্রতিরোধ এবং সমর্থন হিসাবেও ব্যবহার করা যেতে পারে। যখন দাম বেড়ে যায়, তখন উপরের রেলটি প্রতিরোধ এবং নিম্ন রেলটি সমর্থন। যখন দাম কমে যায়, তখন উপরের রেলটি সমর্থন হয়ে যায় এবং নিম্ন রেলটি প্রতিরোধে পরিণত হয়।

সুবিধা বিশ্লেষণ

এই কৌশলটি নিম্নলিখিত শক্তিগুলির সাথে প্রবণতা ট্র্যাকিং অর্জনের জন্য MACD এবং বোলিংজার ব্যান্ডের সুবিধাগুলি একত্রিত করেঃ

  1. এমএসিডিতে প্রবণতা মূল্যায়নের শক্তিশালী ক্ষমতা রয়েছে। বলিংজার ব্যান্ডগুলি স্বয়ংক্রিয়ভাবে নিজেকে সামঞ্জস্য করতে পারে। সংমিশ্রণটি প্রবণতা বিপরীত পয়েন্টগুলি কার্যকরভাবে নির্ধারণ করতে পারে।

  2. পলব্যাক এন্ট্রি কার্যকরভাবে স্টপ লস ঝুঁকি এড়াতে পারে এবং মাঝারি ও দীর্ঘমেয়াদী প্রবণতা ট্র্যাক করতে পারে।

  3. বোলিংজার ব্যান্ডে প্রতিরোধ এবং সমর্থন ব্যবহার করলে লাভ বাড়তে পারে।

  4. ম্যাকডি এবং বোলিংজার ব্যান্ডের পরামিতিগুলি বিভিন্ন বাজারের পরিবেশে উপযুক্ত করার জন্য নমনীয়ভাবে সামঞ্জস্য করা যেতে পারে।

ঝুঁকি বিশ্লেষণ

এই কৌশলটির জন্য কিছু ঝুঁকিও রয়েছেঃ

  1. অস্থির প্রবণতার ক্ষেত্রে, এমএসিডি এবং বোলিংজার ব্যান্ড একাধিক অবৈধ সংকেত তৈরি করতে পারে। বিশাল ক্ষতি এড়াতে পজিশনের আকার হ্রাস করা দরকার।

  2. খুব গভীর হ্রাসের কারণে ক্ষতির প্রসার এড়াতে পলব্যাক প্রবেশের সময় স্টপ লস সেট করা উচিত।

  3. বাজারের অস্থিরতার উপর ভিত্তি করে বোলিংজার ব্যান্ডের পরামিতিগুলি সামঞ্জস্য করা দরকার। অনুপযুক্ত পরামিতি সেটিং মিথ্যা ব্রেকআউটের সম্ভাবনা বাড়ায়।

  4. এই কৌশলটির জন্য ভাল ঝুঁকি ব্যবস্থাপনা এবং অবস্থানের আকার নির্ধারণ লাভ বজায় রাখার মূল চাবিকাঠি। কেবলমাত্র কৌশল সংকেতগুলির উপর নির্ভর করে সামগ্রিক ঝুঁকি উপেক্ষা করা হয়।

অপ্টিমাইজেশান নির্দেশাবলী

কৌশলটি নিম্নলিখিত দিকগুলিতেও অপ্টিমাইজ করা যেতে পারেঃ

  1. MACD পরামিতিগুলিকে ৮ দিনের দ্রুত লাইন এবং ২০ দিনের ধীর লাইনে অপ্টিমাইজ করুন। সূচকের সংবেদনশীলতা উন্নত করতে বিভিন্ন পণ্য এবং সময়সীমার উপর ভিত্তি করে সামঞ্জস্য করুন।

  2. বোলিংজার ব্যান্ডের প্যারামিটারগুলিকে অনুকূল করার জন্য উপরের এবং নীচের প্রবণতা রায় যোগ করুন, দোলনশীল বাজারে মিথ্যা সংকেত হ্রাস করুন।

  3. স্টপ লস কৌশল যোগ করুন। ঝুঁকি নিয়ন্ত্রণের জন্য বোলিংজার ব্যান্ডের উপরের এবং নীচের রেলগুলির সাথে স্টপ লস লাইন সেট করুন।

  4. কৌশল স্থিতিশীলতা উন্নত করতে যাচাই করার জন্য অন্যান্য সূচক অন্তর্ভুক্ত করুন।

সিদ্ধান্ত

এমএসিডি এবং বলিংজার ব্যান্ডের উপর ভিত্তি করে গতি প্রবণতা কৌশলটি সূচক কম্বোর মাধ্যমে মাঝারি-দীর্ঘমেয়াদী প্রবণতা ট্র্যাক করে এবং ঝুঁকি হ্রাস করার জন্য pullbacks প্রবেশ করে। এটি পরামিতি সেটিংগুলি অনুকূল করে এবং ঝুঁকি নিয়ন্ত্রণ করে। এটি ট্রেন্ডিং পণ্যগুলিতে ভাল সম্পাদন করে। তবে কোনও কৌশলই নিখুঁত নয়। সর্বদা পরিবর্তিত বাজারের পরিবেশের সাথে খাপ খাইয়ে নেওয়ার জন্য আমাদের একাধিক দৃষ্টিকোণ থেকে অপ্টিমাইজ এবং উন্নত করা দরকার।


/*backtest
start: 2023-02-22 00:00:00
end: 2024-02-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
//Simple strategy based on MACD and Bollinger Bands, where BBs are calculatend from macd signal.
strategy("Strategy MACD vs BB", overlay=false)

fast_length = input(title="Fast MA period", type=input.integer, defval=8)
slow_length = input(title="Slow MA period", type=input.integer, defval=21)
src = input(close,"Source")


// ----------MA calculation - ChartArt-------------
smoothinput = input(1, minval=1, maxval=4, title='Moving Average Calculation: (1 = SMA), (2 = EMA), (3 = WMA), (4 = Linear)')

fast_ma = smoothinput == 1 ? sma(src, fast_length):smoothinput == 2 ? ema(src, fast_length):smoothinput == 3 ? wma(src, fast_length):smoothinput == 4 ? linreg(src, fast_length,0):na
slow_ma = smoothinput == 1 ? sma(src, slow_length):smoothinput == 2 ? ema(src, slow_length):smoothinput == 3 ? wma(src, slow_length):smoothinput == 4 ? linreg(src, slow_length,0):na
//----------------------------------------------
macd = fast_ma - slow_ma
p1=plot(macd,"macd signal",color=color.blue)
length = input(40, minval=1)
mult = input(2.0,"BB multiplier")

basis = sma(macd, length)
dev = mult * stdev(macd, length)
plot(basis,"BB basis",color=color.orange)
upper = basis + dev
lower = basis - dev
p2=plot(upper,"BB upper",color=color.red)
p3=plot(lower,"BB basis",color=color.green)

longCondition = crossover(macd, lower)
shortCondition = crossunder(macd, upper)

plotshape(longCondition?lower:na, title="Long", style=shape.xcross, location=location.absolute, text="Long", color=color.green, transp=0, size=size.tiny)
plotshape(shortCondition?upper:na, title="Short", style=shape.xcross, location=location.absolute, text="Short", color=color.red, transp=0, size=size.tiny)
fill(p1,p3,color=macd<lower?color.green:na,transp=90,title="support")
fill(p1,p2,color=macd>upper?color.red:na,transp=90,title="resistance")

if longCondition
    strategy.entry("Long",strategy.long)
if shortCondition
    strategy.entry("Short",strategy.short)


আরো