
এই কৌশলটি একাধিক চক্রের স্বনির্ধারিত মুভিং এভারেজ এবং ডিফ্র্যাগমেন্ট ঝুঁকি মূল্যায়ন সূচক ব্যবহার করে, বাজারের চলমান বিন্দুগুলির সাথে মিলিত ট্রেডিং সিগন্যালের আউটপুটের সাথে চলমান পূর্বাভাস দেয়। কৌশলটির নাম হল মাল্টি-চক্রের স্বনির্ধারিত চলমান পূর্বাভাস কৌশল।
কৌশলটির কেন্দ্রীয় যুক্তিটি দুটি মূল লাইনে বিভক্ত। প্রথমটি হল বিভিন্ন প্যারামিটারের সাথে একটি স্বনির্ধারিত চলমান গড় nAMA ব্যবহার করে একটি বহু-চক্রের ফিল্টারিং বিচার ব্যবস্থা তৈরি করা, দ্বিতীয়টি হল বিভিন্ন প্যারামিটারের সাথে একটি ছাড়ের ঝুঁকি মূল্যায়ন সিস্টেম out ব্যবহার করে একটি বহু-চক্রের ঝুঁকি মূল্যায়ন সিস্টেম তৈরি করা। অবশেষে, দুটি মূল লাইনকে একত্রিত করা হয়, যখন সংক্ষিপ্ত চক্রের চক্রটি দীর্ঘ চক্রের চেয়ে বেশি হয় তখন একটি কেনার সংকেত উত্পন্ন হয়। যখন সংক্ষিপ্ত চক্রের চক্রটি দীর্ঘ চক্রের চেয়ে কম হয় তখন একটি বিক্রয় সংকেত উত্পন্ন হয়।
বিশেষত, প্রথম মূল লাইনে, যথাক্রমে 10 টি পিরিয়ড এবং 4.24 প্যারামিটারের একটি স্বনির্ধারিত চলমান গড় সেট করুন। দ্বিতীয় মূল লাইনে, যথাক্রমে 7 টি পিরিয়ড এবং 4.300 প্যারামিটারের একটি ওভারলাইনের ঝুঁকি মূল্যায়ন লাইন সেট করুন। অবশেষে, প্রথম মূল লাইনের 10 টি পিরিয়ড লাইনটি দ্বিতীয় মূল লাইনের 31 টি পিরিয়ড লাইনের সাথে তুলনা করা হয়, একটি লেনদেন গঠন করে। যখন 10 টি পিরিয়ড লাইনের 31 টি পিরিয়ড লাইন অতিক্রম করে তখন একটি ক্রয় সংকেত তৈরি হয়। যখন 10 টি পিরিয়ড লাইনের নীচে 31 টি পিরিয়ড লাইন অতিক্রম করে তখন একটি বিক্রয় সংকেত তৈরি হয়।
এছাড়াও, কৌশলটিতে একটি পরিমাণের মূল্য নিশ্চিতকরণ মডিউল রয়েছে। লেনদেনের পরিমাণ 6 টি চক্রের গড় লেনদেনের পরিমাণের চেয়ে বেশি হলেই লেনদেনের সংকেত কার্যকর হয়। এটি ভুয়া সংকেতগুলিকে কিছুটা পরিসরে ফিল্টার করতে পারে। অবশেষে, কৌশলটিতে বিভিন্ন চক্রের স্তরের শ্রেণিবদ্ধকরণ পয়েন্টগুলি রেফারেন্স সংকেত হিসাবে আঁকা হয়।
এই কৌশলটির সবচেয়ে বড় সুবিধা হ’ল বহু-চক্রের স্ব-অনুকূলিতকরণ কাঠামোর ব্যবহার, যা বাজারের চলমান স্ব-অনুকূলিতকরণ প্যারামিটার, গতিশীল সামঞ্জস্যের চক্রের উপর নির্ভর করে। প্রবণতা অধ্যায় বা ঝড়ের অঞ্চলে উভয় ক্ষেত্রেই উপযুক্ত প্যারামিটার চক্রের সমন্বয় পাওয়া যায়, যার ফলে কৌশলটির অগ্রগতি ক্যাপচার ক্ষমতা বাড়ায়।
উপরন্তু, কৌশলটি একাধিক চক্রের একত্রীকরণ ফিল্টারিংয়ের জন্য বিপরীত লাইন ঝুঁকি মূল্যায়ন সিস্টেম ব্যবহার করে, যা কার্যকরভাবে লেনদেনের ঝুঁকি নিয়ন্ত্রণ করতে পারে এবং উচ্চ ঝুঁকির পর্যায়ে অবস্থান স্থাপনের এড়াতে পারে। একই সাথে, কৌশলটি পরিমাণের ফিল্টারিংয়ের শর্তগুলিও সেট করে যাতে পরিমাণের অভাবের সময় ভুল সংকেত তৈরি না হয়।
এই কৌশলটির সবচেয়ে বড় ঝুঁকিটি হ’ল একাধিক পিরিয়ড লাইনের সমান্তরাল বিচার প্রয়োজন, তাই স্বল্পমেয়াদী বিপরীতমুখী বাজারের দুর্বলতা ধরা যায়। সংক্ষিপ্ত পিরিয়ড লাইন এবং দীর্ঘ পিরিয়ড লাইন একই সাথে পরিবর্তিত হলে অস্পষ্ট সংকেত তৈরি করা সহজ। প্যারামিটার চক্রটি সংক্ষিপ্ত করে অপ্টিমাইজ করা যেতে পারে।
উপরন্তু, স্বনির্ধারিত চলমান গড় এবং বিভাজক ঝুঁকি মূল্যায়ন সিস্টেমের প্রধান চক্রটি বড় মাপের তুলনায় সংক্ষিপ্ত এবং দীর্ঘতর স্তরের ড্রাইভের অধীনে কিছু পিছিয়ে রয়েছে। প্রধান চক্রটি যথাযথভাবে প্রসারিত করা যেতে পারে।
স্বতঃস্ফূর্ত মুভিং এভারেজ এবং বিপরীতমুখী ঝুঁকি মূল্যায়ন লাইনের প্রধান চক্রের প্যারামিটারগুলিকে সংক্ষিপ্ত করে, 5 টি চক্র এবং 20 টি চক্রের পরিবর্তে, স্বল্পমেয়াদী বাজার রিভার্সিংয়ের ক্যাপচারের জন্য উন্নত।
প্রধান চক্রের প্যারামিটারগুলিকে 20 এবং 50 চক্রের মধ্যে বৃদ্ধি করুন, যা দীর্ঘতর স্তরের বাজার চালিত পিছিয়ে পড়া হ্রাস করে।
ট্রেডিং চ্যানেলের প্যারামিটারগুলিকে অপ্টিমাইজ করা হয়েছে, এটিকে 0.5x এটিআর চ্যানেলের সাথে পরিবর্তিত করা হয়েছে, যাতে গোলমালের লেনদেনের সম্ভাবনা কম থাকে।
ফলাফল যাচাইকরণ সূচক যেমন MACD যোগ করা, সংকেতের নির্ভরযোগ্যতা বাড়ানো।
এই কৌশলটি স্বনির্ধারিত চলমান গড়, ডিসকাউন্ট ঝুঁকি মূল্যায়ন এবং পরিমাণ বিশ্লেষণের মতো একাধিক প্রযুক্তিগত সূচকগুলিকে সমন্বিত করে একটি বহু-চক্রের স্বনির্ধারিত লেনদেনের সিদ্ধান্ত গ্রহণের সিস্টেম তৈরি করে। প্যারামিটারগুলির অনুকূলিতকরণ দ্বারা, এটি বিভিন্ন ধরণের বাজারে প্রয়োগ করা যেতে পারে, স্বয়ংক্রিয়ভাবে প্রবণতা এবং অঞ্চলগুলি সনাক্ত করতে পারে। কৌশলটির যুক্তি স্পষ্ট, মূল্যটি খননযোগ্য এবং এটি একটি প্রস্তাবিত পরিমাণ পদ্ধতি।
/*backtest
start: 2023-01-25 00:00:00
end: 2024-01-31 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy("Best Rabbit Strategy", shorttitle="Rabbit God",overlay=true)
Length = input(10, minval=1)
xPrice = close
xvnoise = abs(xPrice - xPrice[1])
Fastend = input(2)
Slowend = input(30)
nfastend = 2/(Fastend + 1)
nslowend = 2/(Slowend + 1)
nsignal = abs(xPrice - xPrice[Length])
nnoise = sum(xvnoise, Length)
nefratio = iff(nnoise != 0, nsignal / nnoise, 0)
nsmooth = pow(nefratio * (nfastend - nslowend) + nslowend, 2)
nAMA = nz(nAMA[1]) + nsmooth * (xPrice - nz(nAMA[1]))
Length2 = input(10, minval=1)
xPrice2 = close
xvnoise2 = abs(xPrice2 - xPrice2[1])
Fastend2 = input(4)
Slowend2 = input(24)
nfastend2 = 2/(Fastend2 + 1)
nslowend2 = 2/(Slowend2 + 1)
nsignal2 = abs(xPrice2 - xPrice2[Length2])
nnoise2 = sum(xvnoise, Length2)
nefratio2 = iff(nnoise2 != 0, nsignal2 / nnoise2, 0)
nsmooth2 = pow(nefratio2 * (nfastend2 - nslowend2) + nslowend2, 2)
nAMA2 = nz(nAMA2[1]) + nsmooth2 * (xPrice2 - nz(nAMA2[1]))
price = input(hl2)
len = input(defval=7,minval=1)
FC = input(defval=4,minval=1)
SC = input(defval=300,minval=1)
len1 = len/2
w = log(2/(SC+1))
H1 = highest(high,len1)
L1 = lowest(low,len1)
N1 = (H1-L1)/len1
H2 = highest(high,len)[len1]
L2 = lowest(low,len)[len1]
N2 = (H2-L2)/len1
H3 = highest(high,len)
L3 = lowest(low,len)
N3 = (H3-L3)/len
dimen1 = (log(N1+N2)-log(N3))/log(2)
dimen = iff(N1>0 and N2>0 and N3>0,dimen1,nz(dimen1[1]))
alpha1 = exp(w*(dimen-1))
oldalpha = alpha1>1?1:(alpha1<0.01?0.01:alpha1)
oldN = (2-oldalpha)/oldalpha
N = (((SC-FC)*(oldN-1))/(SC-1))+FC
alpha_ = 2/(N+1)
alpha = alpha_<2/(SC+1)?2/(SC+1):(alpha_>1?1:alpha_)
out = (1-alpha)*nz(out[1]) + alpha*price
price2 = input(hl2)
len2 = input(defval=31,minval=1)
FC2 = input(defval=40,minval=1)
SC2 = input(defval=300,minval=1)
len12 = len2/2
w2 = log(2/(SC2+1))
H12 = highest(high,len12)
L12 = lowest(low,len12)
N12 = (H1-L1)/len12
H22 = highest(high,len2)[len12]
L22 = lowest(low,len2)[len12]
N22 = (H22-L22)/len12
H32 = highest(high,len2)
L32 = lowest(low,len2)
N32 = (H32-L32)/len2
dimen12 = (log(N12+N22)-log(N32))/log(2)
dimen2 = iff(N12>0 and N22>0 and N32>0,dimen12,nz(dimen12[1]))
alpha12 = exp(w*(dimen2-1))
oldalpha2 = alpha12>1?1:(alpha12<0.01?0.01:alpha12)
oldN2 = (2-oldalpha2)/oldalpha2
N4 = (((SC2-FC2)*(oldN2-1))/(SC2-1))+FC2
alpha_2 = 2/(N4+1)
alpha2 = alpha_2<2/(SC2+1)?2/(SC2+1):(alpha_2>1?1:alpha_2)
out2 = (1-alpha2)*nz(out2[1]) + alpha2*price2
tf = input(title="Resolution", defval = "current")
vamp = input(title="VolumeMA", defval=6)
vam = sma(volume, vamp)
up = high[3]>high[4] and high[4]>high[5] and high[2]<high[3] and high[1]<high[2] and volume[3]>vam[3]
down = low[3]<low[4] and low[4]<low[5] and low[2]>low[3] and low[1]>low[2] and volume[3]>vam[3]
fractalup = up ? high[3] : fractalup[1]
fractaldown = down ? low[3] : fractaldown[1]
fuptf = request.security(syminfo.tickerid,tf == "current" ? timeframe.period : tf, fractalup)
fdowntf = request.security(syminfo.tickerid,tf == "current" ? timeframe.period : tf, fractaldown)
plot(fuptf, "FractalUp", color=lime, linewidth=1, style=cross, transp=0, offset =-3, join=false)
plot(fdowntf, "FractalDown", color=red, linewidth=1, style=cross, transp=0, offset=-3, join=false)
buyEntry= nAMA[0]>nAMA2[0] and out[0]>out2[0]
sellEntry= nAMA[0]<nAMA2[0] and out[0]<out2[0]
if (buyEntry)
strategy.entry("Buy", strategy.long, comment="Long Position Entry")
if (sellEntry)
strategy.entry("Sell", strategy.short, comment="Short Position Entry")