মুভিং এভারেজ ক্রসওভার এবং বলিঙ্গার ব্যান্ড ব্রেকআউট কৌশল


সৃষ্টির তারিখ: 2024-02-19 14:18:00 অবশেষে সংশোধন করুন: 2024-02-19 14:18:00
অনুলিপি: 0 ক্লিকের সংখ্যা: 636
1
ফোকাস
1617
অনুসারী

মুভিং এভারেজ ক্রসওভার এবং বলিঙ্গার ব্যান্ড ব্রেকআউট কৌশল

ওভারভিউ

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

কৌশল নীতি

এই কৌশলটি মূলত নিম্নলিখিত কয়েকটি সূচক নিয়ে গঠিতঃ

  1. আরএসআই সূচকঃ যখন আরএসআই সূচক লাইনটি সেট ওভারবই লাইনটি অতিক্রম করে বা ওভারসেল লাইনটি অতিক্রম করে, তখন যথাযথভাবে ওভার বা ডাউন অপারেশন করা হয়।

  2. বুলিন ব্যান্ডঃ যখন দাম বুলিন ব্যান্ডের উপরে উঠে যায় তখন ফাঁকা অপারেশন করা হয়; যখন দাম বুলিন ব্যান্ডের নিচে পড়ে তখন মাল্টি অপারেশন করা হয়।

  3. গড়রেখা: একটি নির্দিষ্ট সময়ের মধ্যে সর্বোচ্চ এবং সর্বনিম্ন মূল্য গণনা করা হয় (যেমন 5 টি চক্র), যখন দামটি সাম্প্রতিক 5 টি চক্রের সর্বোচ্চ পয়েন্টের চেয়ে বেশি হয়, তখন অতিরিক্ত করা হয়; যখন দাম সর্বশেষ 5 টি চক্রের সর্বনিম্ন পয়েন্টের চেয়ে কম হয়, তখন খালি করা হয়।

  4. MACD: দ্রুত লাইন, ধীর লাইন এবং MACD লাইনের গোল্ডেন ফর্ক ডেডফোর্ক গণনা করে, যা একটি সহায়ক বিচারক সূচক হিসেবে ব্যবহৃত হয়।

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

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

এই কৌশলটির বেশ কিছু সুবিধা রয়েছেঃ

  1. একাধিক সূচক সমন্বয়, সঠিক বিচার। আরএসআই, বুলিন ব্যান্ড, গড় লাইন ইত্যাদি সূচকগুলি একে অপরকে যাচাই করে, ট্রেডিং সংকেতকে আরও নির্ভরযোগ্য করে তোলে।

  2. প্রবণতা প্রবণতা ব্যবহার করে ব্রিন ব্যান্ড, সমন্বয় প্রবণতা ব্যবহার করে গড় লাইন, RSI ব্যবহার করে অতিরিক্ত ওভার-বিক্রয় প্রবণতা, বিভিন্ন প্রবণতা মোকাবেলা করতে পারে।

  3. অপারেশন ফ্রিকোয়েন্সি মাঝারি ৷ সূচক প্যারামিটার সেট করা হয় সাবধানতার সাথে, খুব ঘন ঘন ট্রেডিং এড়ানো ৷

  4. প্রোগ্রামের কাঠামো পরিষ্কার। কোড লিখতে সহজ, পড়তে সহজ এবং দ্বিতীয় বিকাশ।

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

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

  1. প্যারামিটার সেট করার ঝুঁকি। সূচক প্যারামিটার সেট করার ভুলটি ট্রেডিং সিগন্যালের ত্রুটির কারণ হতে পারে। প্যারামিটার অপ্টিমাইজেশনের জন্য বারবার পরীক্ষা করা প্রয়োজন।

  2. মাল্টি হেড শূন্য স্যুইচিং ঝুঁকি। বাজারের বিপর্যয় বিন্দুতে মাল্টি হেড শূন্য স্যুইচিং আরও ঘন ঘন হতে পারে, লেনদেনের ব্যয় বাড়বে। আপনি যথাযথভাবে পোজিশনের সময়টি সামঞ্জস্য করতে পারেন।

  3. প্রোগ্রামিং বাস্তবায়ন ঝুঁকিপূর্ণ। কোডের মধ্যে এমন কিছু লজিক্যাল ত্রুটি থাকতে পারে যা সনাক্ত করা কঠিন, যার ফলে অস্বাভাবিক লেনদেন হয়। অস্বাভাবিকতা হ্যান্ডলিং এবং লগ রেকর্ডিং উন্নত করা প্রয়োজন।

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

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

  1. লাভের জন্য লকডাউন এবং ক্ষতি হ্রাস করার জন্য স্টপ লস কৌশল যুক্ত করুন।

  2. ট্রেডিং ভলিউম ইন্ডিকেটরের সাথে মিলে, ভুয়া সংকেত এড়ানো যায়। উদাহরণস্বরূপ, ব্রিন ব্যান্ডটি ভেঙে যাওয়ার সময় ট্রেডিং ভলিউম পরীক্ষা করা যায়।

  3. মেশিন লার্নিং অ্যালগরিদম যোগ করা, ঐতিহাসিক তথ্য প্রশিক্ষণ ব্যবহার করা, এবং স্বয়ংক্রিয়ভাবে প্যারামিটার অপ্টিমাইজ করা।

  4. এটি একটি গ্রাফিকাল উপস্থাপনা যোগ করে যা কৌশলগত কার্যকারিতা প্রদর্শন করে।

  5. রিটার্নিং অপ্টিমাইজেশান, সর্বোত্তম প্যারামিটার সমন্বয় নির্বাচন করুন।

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2024-01-19 00:00:00
end: 2024-02-15 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("MD strategy", overlay=true)
lengthrsi = input( 14 )
overSold = input( 30 )
overBought = input( 70 )
price = close
source = close
lengthbb = input(20, minval=1)
mult = input(2.0, minval=0.001, maxval=50)
direction = input(0, title = "Strategy Direction",minval=-1, maxval=1)
fastLength = input(12)
slowlength = input(26)
MACDLength = input(9)
consecutiveBarsUp = input(3)
consecutiveBarsDown = input(3)
lengthch = input( minval=1, maxval=1000, defval=5)
upBound = highest(high, lengthch)
downBound = lowest(low, lengthch)



ups = price > price[1] ? nz(ups[1]) + 1 : 0
dns = price < price[1] ? nz(dns[1]) + 1 : 0
MACD = ema(close, fastLength) - ema(close, slowlength)
aMACD = ema(MACD, MACDLength)
delta = MACD - aMACD

strategy.risk.allow_entry_in(direction == 0 ? strategy.direction.all : (direction < 0 ? strategy.direction.short : strategy.direction.long))

basis = sma(source, lengthbb)
dev = mult * stdev(source, lengthbb)

upper = basis + dev
lower = basis - dev

vrsi = rsi(price, lengthrsi)

if (not na(vrsi))
    if (crossover(vrsi, overSold))
        strategy.entry("RsiLE", strategy.long, comment="RsiLE")
    if (crossunder(vrsi, overBought))
        strategy.entry("RsiSE", strategy.short, comment="RsiSE")

if (crossover(source, lower))
    strategy.entry("BBandLE", strategy.long, stop=lower, oca_name="BollingerBands",  comment="BBandLE")
else
    strategy.cancel(id="BBandLE")

if (crossunder(source, upper))
    strategy.entry("BBandSE", strategy.short, stop=upper, oca_name="BollingerBands",  comment="BBandSE")
else
    strategy.cancel(id="BBandSE")
    
    
if (not na(close[lengthch]))
    strategy.entry("ChBrkLE", strategy.long, stop=upBound + syminfo.mintick, comment="ChBrkLE")
    strategy.entry("ChBrkSE", strategy.short, stop=downBound - syminfo.mintick, comment="ChBrkSE")
    
    
//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)