MACD বিতরণ ক্রসওভার কৌশল


সৃষ্টির তারিখ: 2023-12-13 16:58:15 অবশেষে সংশোধন করুন: 2023-12-13 16:58:15
অনুলিপি: 0 ক্লিকের সংখ্যা: 744
1
ফোকাস
1621
অনুসারী

MACD বিতরণ ক্রসওভার কৌশল

ওভারভিউ

MACD বিতরণ ক্রস কৌশলটি দ্রুত চলমান গড় এবং ধীর চলমান গড়ের পার্থক্য গণনা করে MACD গঠন করে, তারপরে MACD এর চলমান গড়টি বিতরণ লাইন গঠন করে, যখন MACD বিতরণ লাইনটি অতিক্রম করে বা অতিক্রম করে তখন একটি লেনদেনের সংকেত উত্পন্ন হয়। এই কৌশলটি দ্বি-রেখা সমান্তরাল চিন্তাভাবনাকে সংযুক্ত করে, শেয়ারের দামের মাঝারি সময়ের প্রবণতার বিপরীত পয়েন্টগুলিকে ক্যাপচার করে, যা একটি সাধারণ ট্র্যাকিং স্টপ-লস কৌশল।

কৌশল নীতি

এই কৌশলটি প্রথমে একটি দ্রুত চলমান গড় fastMA এবং একটি ধীর চলমান গড় slowMA গণনা করে। দ্রুত চলমান গড়ের প্যারামিটারটি 12 দিন এবং একটি ধীর চলমান গড়ের প্যারামিটারটি 26 দিন। তারপরে দুটি চলমান গড়ের পার্থক্য গণনা করে একটি MACD গঠন করে। তারপরে 9 দিনের প্যারামিটারটি MACD এর চলমান গড় গণনা করে এবং বিতরণ লাইন সংকেত পায়। যখন MACD বিতরণ লাইনটি অতিক্রম করে বা অতিক্রম করে তখন একটি লেনদেনের সংকেত দেওয়া হয়।

কৌশলটির সুবিধা হ’ল স্টক মূল্যের মাঝারি সময়ের প্রবণতার বিপরীত বিন্দুগুলি ক্যাপচার করা। দ্রুত এবং ধীর গড় লাইন সমন্বয়টি স্বল্পমেয়াদী মূল্যের ওঠানামা থেকে শব্দটি ফিল্টার করে এবং মাঝারি সময়ের মূল্যের প্রবণতা ধরে। স্টক মূল্যের মাঝারি সময়ের বিপরীত হওয়ার সময় MACD বিতরণ লাইনটি ভেঙে দেয় এবং আরও স্পষ্ট ট্রেডিং সংকেত তৈরি করে।

সামর্থ্য বিশ্লেষণ

MACD বিতরণ ক্রস কৌশলটি দ্বি-সমান্তরীয় চিন্তাভাবনার সাথে মিলিত, দ্রুত চলমান গড় এবং ধীর চলমান গড়ের সমন্বয় ব্যবহার করে স্বল্পমেয়াদী গোলমালগুলি ফিল্টার করে এবং কেবলমাত্র শেয়ারের দামের মাঝারি-দীর্ঘমেয়াদী প্রবণতা বিপরীত পয়েন্টগুলিকে ধরে। একক মূল্য সূচকের তুলনায় কম মিথ্যা সংকেত তৈরি করতে পারে।

ম্যাকড নিজেই সংবেদনশীল এবং দামের পরিবর্তনের প্রবণতাকে সংবেদনশীলভাবে প্রতিফলিত করতে পারে। ডেলিভারি লাইনের যোগদান আরও স্বল্পমেয়াদী মিথ্যা সংকেতগুলিকে ফিল্টার করতে পারে। কেবলমাত্র মাঝারি প্রবণতাটি স্পষ্টভাবে পরিবর্তিত হয় এবং ম্যাকড ডেলিভারি লাইনের উপরে বা নীচে ভেঙে যায় তখনই সংকেত তৈরি হয়।

টেকসই উত্থানের ক্ষেত্রে, MACD বেশিরভাগ সময় বিতরণ লাইনের উপরে থাকে, যাতে এটি একাধিক সুযোগ ক্যাপচার করতে পারে। একইভাবে, ক্রমাগত পতনের ক্ষেত্রে, MACD একাধিক খালি ফর্মও বজায় রাখতে পারে, সময়মতো খালি সংকেত দিতে পারে।

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

যেহেতু কৌশলগত ক্রয়-বিক্রয় পয়েন্ট সংকেত সম্পূর্ণরূপে চলমান গড়ের ক্রস-অভারেজের উপর নির্ভর করে, যদি বাজারটি বড় হয়, তবে আরও বেশি মিথ্যা সংকেত তৈরি হবে, যার ফলে ঘন ঘন ক্ষতি হবে। কৌশলগত প্রকৃত লাভ-ক্ষতি অনুকূল নয়।

শেয়ারের দাম ব্রেকডাউন লাইনের সাথে সম্পর্কিত, তবে এটি নিশ্চিত করে না যে মধ্য-মেয়াদী প্রবণতা পরিবর্তিত হবে। কেবলমাত্র একটি প্রযুক্তিগত সূচক একটি ক্রয় পয়েন্ট সংকেত হিসাবে কিছুটা অন্ধত্ব রয়েছে এবং সময় নির্ধারণের সময়টি ভুল হতে পারে।

দ্রুত পরিবর্তনশীল বাজারে, কেবলমাত্র ডাবল মিডলাইনের সূচকগুলির ক্রসকে স্থির থ্রেশহোল্ড হিসাবে ব্যবহার করে আরও বেশি ব্যবসায়ের সুযোগ মিস করা যেতে পারে। আরও জটিল শক্তিশালী পরিস্থিতিতে, এই কৌশলটিও স্পষ্টভাবে পিছিয়ে পড়ে।

অপ্টিমাইজেশান দিক

  1. তরলতা এবং অস্থিরতা ফিল্টারিং সূচক বৃদ্ধি করুন, পজিশন খোলার ফ্রিকোয়েন্সি হ্রাস করুন, অকার্যকর লেনদেন এড়িয়ে চলুন। যেমন লেনদেনের পরিমাণ বৃদ্ধি, গতিশীলভাবে চলমান গড় প্যারামিটারগুলি সামঞ্জস্য করুন ইত্যাদি।

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

  3. মেশিন লার্নিং অ্যালগরিদম যুক্ত করুন, বর্তমান বাজারের পরিবেশের সাথে আরও সামঞ্জস্যপূর্ণ প্যারামিটার এবং মনোযোগের থ্রেশহোল্ড প্রশিক্ষণ দিন, এবং মানুষের হস্তক্ষেপ হ্রাস করুন।

  4. VIX এর মতো আতঙ্কের সূচকগুলির সাথে মিলিত হয়ে পূর্ববর্তী বাজারের প্রবণতা এবং অস্থিরতার পূর্বাভাস দেওয়া, MACD সুযোগের আরও ভাল ব্যবহারের জন্য গতিশীল সমন্বয়কারী প্যারামিটারগুলি।

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2022-12-06 00:00:00
end: 2023-12-12 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@author : SudeepBisht
//@version=2
strategy(title="MACD with Signal", shorttitle="MACD_with_Signal")
source = close
useCurrentRes = input(true, title="Use Current Chart Resolution?")
resCustom = input(title="Use Different Timeframe? Uncheck Box Above", defval="60")
smd = input(true, title="Show MacD & Signal Line? Also Turn Off Dots Below")
sd = input(true, title="Show Dots When MacD Crosses Signal Line?")
sh = input(true, title="Show Histogram?")
macd_colorChange = input(true,title="Change MacD Line Color-Signal Line Cross?")
hist_colorChange = input(true,title="MacD Histogram 4 Colors?")

res = useCurrentRes ? timeframe.period : resCustom

fastLength = input(12, minval=1), slowLength=input(26,minval=1)
signalLength=input(9,minval=1)

fastMA = ema(source, fastLength)
slowMA = ema(source, slowLength)

macd = fastMA - slowMA
signal = sma(macd, signalLength)
hist = macd - signal

outMacD = request.security(syminfo.tickerid, res, macd)
outSignal = request.security(syminfo.tickerid, res, signal)
outHist = request.security(syminfo.tickerid, res, hist)

histA_IsUp = outHist > outHist[1] and outHist > 0
histA_IsDown = outHist < outHist[1] and outHist > 0
histB_IsDown = outHist < outHist[1] and outHist <= 0
histB_IsUp = outHist > outHist[1] and outHist <= 0

//MacD Color Definitions
macd_IsAbove = outMacD >= outSignal
macd_IsBelow = outMacD < outSignal

plot_color = hist_colorChange ? histA_IsUp ? green : histA_IsDown ? lime : histB_IsDown ? red : histB_IsUp ? maroon :yellow :gray
macd_color = macd_colorChange ? macd_IsAbove ? green : red : red
signal_color = macd_colorChange ? macd_IsAbove ? yellow : yellow : lime

circleYPosition = outSignal
 
plot(smd and outMacD ? outMacD : na, title="MACD", color=macd_color, linewidth=3)
plot(smd and outSignal ? outSignal : na, title="Signal", color=blue, style=line ,linewidth=1)
plot(sh and outHist ? outHist : na, title="", color=plot_color, style=columns, linewidth=4)
//plot(sd and cross(outMacD, outSignal) ? circleYPosition : na, title="Cross", style=circles, linewidth=4, color=macd_color)
hline(0, '0 Line',  linewidth=2, color=white)

macd_chk=smd and outMacD ? outMacD : na
checker=smd and outSignal ? outSignal : na
if (crossover(macd_chk,checker))
    strategy.entry("BBandLE", strategy.long)

if (crossunder(macd_chk, checker))
    strategy.entry("BBandSE", strategy.short)