বোলিংজার ব্যান্ডের প্রস্থ স্কেলিং ডাবল মুভিং এভারেজ ট্রেন্ড ফিল্টার কৌশল

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

img

এই কৌশলটি বোলিংজার ব্যান্ড এবং ডাবল চলমান গড়ের উপর ভিত্তি করে ট্রেডিং সংকেত তৈরি করে, উচ্চ জয় হার এবং ভাল মুনাফা-হানি অনুপাতের লক্ষ্যে প্রবণতা ফিল্টারিং সহ।

কৌশলগত যুক্তি

  1. লং/শর্ট সিগন্যাল জেনারেশনের জন্য বোলিংজার ব্যান্ডের উপরের, মাঝের এবং নীচের ব্যান্ড ব্যবহার করুন। যখন দাম উপরের ব্যান্ড স্পর্শ করে তখন বিক্রি করুন, যখন নিম্ন ব্যান্ড স্পর্শ করে তখন কিনুন।

  2. ট্রেন্ডের দিকনির্দেশনা নির্ধারণের জন্য 20 পিরিয়ডের মাঝারি মেয়াদী এবং 60 পিরিয়ডের দীর্ঘমেয়াদী চলমান গড় ব্যবহার করুন। যখন সংক্ষিপ্ত এমএ দীর্ঘ এমএ অতিক্রম করে তখন আপট্রেন্ড, নীচে অতিক্রম করার সময় ডাউনট্রেন্ড।

  3. বোলিংজার ব্যান্ডের প্রস্থের উপর ভিত্তি করে গতিশীলভাবে স্টপ লস অবস্থান সামঞ্জস্য করুন। যখন প্রস্থ 0.5% এর বেশি হয়, তখন নিম্ন ব্যান্ডে স্টপ লস। যখন 0.5% এর কম হয়, তখন স্টপ লসকে অর্ধেক নিম্ন ব্যান্ড পরিসরে হ্রাস করুন।

  4. এন্ট্রি শর্তাবলীঃ আপট্রেন্ডের সময় ক্রয় সংকেত হিসাবে নিম্ন ব্যান্ড ভাঙ্গুন। ডাউনট্রেন্ডের সময় বিক্রয় সংকেত হিসাবে উপরের ব্যান্ড ভাঙ্গুন।

  5. প্রস্থান শর্তাবলীঃ লং ট্রেডের উপর উপরের ব্যাণ্ড বা সংক্ষিপ্ত এমএ স্পর্শ করার সময় মুনাফা নিন। শর্ট ট্রেডের উপর নিম্ন ব্যান্ড বা সংক্ষিপ্ত এমএ স্পর্শ করার সময় মুনাফা নিন।

  6. স্টপ লস শর্তাবলীঃ যখন দাম লংয়ের নীচের ব্যান্ড ডায়নামিক রেঞ্জের নীচে ভাঙবে তখন স্টপ আউট করুন। যখন দাম শর্টসের উপরের ব্যান্ড ডায়নামিক রেঞ্জের নীচে ভাঙবে তখন স্টপ আউট করুন।

সুবিধা

  1. প্রবণতা নির্ধারণের জন্য ডাবল এমএ ব্যবহার করে প্রবণতাহীন বা পরিসীমা সীমাবদ্ধ বাজার থেকে গোলমাল ফিল্টার করতে সহায়তা করে।

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

  3. বিবি প্রস্থের উপর ভিত্তি করে স্টপ লস পরিসীমা সামঞ্জস্য করা স্টপকে যুক্তিসঙ্গত রাখার সময় বন্ধ হওয়ার সম্ভাবনা হ্রাস করে।

  4. প্রবণতার দিক দিয়ে ট্রেডিং উচ্চতর জয়ের হার নিয়ে আসে।

ঝুঁকি

  1. ডাবল এমএ প্রায়ই মিথ্যা ব্রেকআউট সৃষ্টি করতে পারে, ট্রেন্ড টার্নিং পয়েন্ট মিস করে। এমএ সময়কাল সংক্ষিপ্ত করতে পারে।

  2. বিবিগুলি অস্থির, অ-ট্রেন্ডিং বাজারে হ্রাস পেতে পারে, ট্রেডিং ফ্রিকোয়েন্সি হ্রাস করতে পারে।

  3. সমর্থন/প্রতিরোধের স্তরের কাছাকাছি স্টপ লস বন্ধ করা যায়। বৃহত্তর স্টপ লস পরিসীমা অনুমতি দিতে পারে।

  4. স্বল্পমেয়াদী প্রত্যাহারে কার্যকরভাবে লাভবান হতে পারে না।

উন্নতির সুযোগ

  1. বাজার অবস্থার জন্য সবচেয়ে উপযুক্ত সময় নির্ধারণের জন্য অনুমোদনের সময়সীমা অপ্টিমাইজ করা।

  2. স্টপ লসকে সামঞ্জস্য করার জন্য বিবি মাল্টিপ্লায়ার প্যারামিটারটি অপ্টিমাইজ করুন।

  3. সিগন্যালের গুণমান উন্নত করতে মাল্টি-ফ্যাক্টর নিশ্চিতকরণের জন্য অন্যান্য সূচক যুক্ত করুন।

  4. প্রবণতা নিশ্চিত করার জন্য ভলিউম/ইম্পোমেন্ট অন্তর্ভুক্ত করুন, বিচ্যুতি এড়ান।

  5. অর্থ পরিচালনার অপ্টিমাইজেশান যেমন একক বাণিজ্য ঝুঁকি নিয়ন্ত্রণের জন্য স্থির ভগ্নাংশ, স্থির স্টপ লস।

  6. দামের ধাক্কা মোকাবেলা যেমন বড় রাতারাতি ফাঁক।

সংক্ষিপ্তসার

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


/*backtest
start: 2022-10-18 00:00:00
end: 2023-10-24 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy(title="yuthavithi BB Scalper 2 strategy", overlay=true)

len = input(20, minval=1, title="Length")
multiplier = input(4, minval=1, title="multiplier")
trendTimeFrame = input(60, minval=1, title="Trend Time Frame")
useTrendFilter = input(true, type=bool, title = "Use Trend Filter")

src = input(close, title="Source")
out = sma(src, len)
//plot(out, title="SMA", color=blue)

stdOut = stdev(close, len)
bbUpper = out + stdOut * multiplier
bbLower = out - stdOut * multiplier
bbUpper2 = out + stdOut * (multiplier / 2)
bbLower2 = out - stdOut * (multiplier / 2)
bbUpperX2 = out + stdOut * multiplier * 2
bbLowerX2 = out - stdOut * multiplier * 2
bbWidth = (bbUpper - bbLower) / out


closeLongTerm = request.security(syminfo.tickerid, tostring(trendTimeFrame), close)
smaLongTerm = request.security(syminfo.tickerid, tostring(trendTimeFrame), sma(close,20))

//plot(smaLongTerm, color=red)

trendUp = useTrendFilter ? (closeLongTerm > smaLongTerm) : true
trendDown = useTrendFilter? (closeLongTerm < smaLongTerm) : true

bearish = ((cross(close,bbUpper2) == 1) or (cross(close,out) == 1)) and (close[1] > close) and trendDown
bullish = ((cross(close,bbLower2) == 1) or (cross(close,out) == 1)) and (close[1] < close) and trendUp


closeBuy = (high[1] > bbUpper[1]) and (close < bbUpper) and (close < open) and trendUp 
closeSell = (((low[1] < bbLower[1]) and (close > bbLower)) or ((low[2] < bbLower[2]) and (close[1] > bbLower[1]))) and (close > open) and trendDown


cutLossBuy = iff(bbWidth > 0.005, (low < bbLower) and (low[1] > bbLower[1]) and trendUp, (low < bbLowerX2) and (low[1] > bbLowerX2[1]) and trendUp)
cutLossSell = iff(bbWidth > 0.005, (high > bbUpper) and (high[1] < bbUpper[1]) and trendDown, (high > bbUpperX2) and (high[1] < bbUpperX2[1]) and trendDown)


if (bullish)
    strategy.entry("Buy", strategy.long, comment="Buy")

if (bearish)
    strategy.entry("Sell", strategy.short, comment="Sell")
    

strategy.close("Buy", closeBuy or cutLossBuy)
   
strategy.close("Sell", closeSell or cutLossSell)


আরো