এই কৌশলটি বর্তমান প্রবণতার দিকনির্দেশ এবং স্টপ লস এর জন্য এক্সপোনেন্সিয়াল মুভিং মিডিয়ার নির্ধারণ এবং প্রবণতা কার্যকরভাবে ধরার জন্য মুনাফা পরিচালনা করতে বোলিংজার ব্যান্ড ব্যবহার করে।
কৌশলটি প্রথমে বলিংজার ব্যান্ডের মাঝারি রেখা, উপরের ব্যান্ড এবং নীচের ব্যান্ড গণনা করে। মাঝারি রেখাটি n দিনের মধ্যে বন্ধের দামের সহজ চলমান গড়। উপরের এবং নীচের ব্যান্ডগুলি মাঝারি রেখার থেকে দুটি স্ট্যান্ডার্ড বিচ্যুতি দ্বারা উপরে এবং নীচে স্থানান্তরিত হয়। যখন বন্ধের দাম উপরের ব্যান্ডের উপরে থাকে, তখন এটি একটি আপট্রেন্ড নির্দেশ করে। যখন বন্ধের দাম নিম্ন ব্যান্ডের নীচে থাকে, তখন এটি একটি ডাউনট্রেন্ড নির্দেশ করে।
কৌশলটি বর্তমান প্রবণতা দিকের বিচার করে বন্ধের মূল্য এবং বলিংজার ব্যান্ডের উপরের / নীচের ব্যান্ডগুলির মধ্যে সম্পর্কের তুলনা করে। যদি বন্ধের মূল্য উপরের ব্যান্ডটি ভেঙে যায় তবে দীর্ঘ যান। যদি বন্ধের মূল্য নীচের ব্যান্ডটি ভেঙে যায় তবে সংক্ষিপ্ত যান।
অতিরিক্তভাবে, এক্সপোনেন্সিয়াল মুভিং এভারেজটি স্টপ লস এবং লাভ নেওয়ার জন্য একটি ট্রেলিং স্টপ হিসাবে চালু করা হয়। বিশেষত, যদি দাম দীর্ঘ যাওয়ার পরে নেমে যায় তবে স্টপ লস লাইনটি সেই অনুযায়ী নেমে যাবে, লাভের লকিং সর্বাধিক করার জন্য ধীরে ধীরে স্টপ লস দূরত্বকে শক্ত করে তুলবে। যদি দাম বাড়তে থাকে তবে স্টপ লস লাইনটিও মুনাফা চলতে দেওয়ার জন্য উপরে চলে যাবে। স্টপ লস প্রক্রিয়াটি শর্ট পজিশনের জন্য বিপরীতভাবে কাজ করে।
ট্রেন্ডের দিকনির্দেশনা এবং স্টপ লস/টেক প্রফিট ম্যানেজমেন্টের জন্য ইএমএ-র জন্য বোলিংজার ব্যান্ডের সংমিশ্রণ কৌশলটির নিম্নলিখিত সুবিধাগুলি রয়েছেঃ
বোলিংজার ব্যান্ড ব্যবহার করে ট্রেন্ডের দিকনির্দেশ কার্যকরভাবে নির্ধারণ করা যায় এবং ব্রেকআউটে দ্রুত প্রতিক্রিয়া জানানো যায়।
ইএমএ-ভিত্তিক স্টপ লস/টেক প্রফিট ঝুঁকি নিয়ন্ত্রণের সময় লাভের লকিং সর্বাধিক করতে পারে।
কৌশলটির কয়েকটি পরামিতি রয়েছে যা সহজেই বাস্তবায়ন করা যায় - কেবলমাত্র একটি বিবি এবং একটি ইএমএর জন্য, খুব সহজ।
এটি শক্তিশালী অভিযোজনযোগ্যতার সাথে বিভিন্ন পণ্যগুলিতে ব্যাপকভাবে প্রয়োগ করা যেতে পারে।
এই কৌশলটির কিছু ঝুঁকিও রয়েছেঃ
বিবি উপরের / নীচের ব্যান্ডগুলি ভেঙে ফেলা মিথ্যা ব্রেকআউটগুলির ঝুঁকি পুরোপুরি এড়াতে পারে না। সংকেতগুলি ফিল্টার করতে ভলিউম ইত্যাদির সাথে একত্রিত করার বিষয়টি বিবেচনা করুন।
ইএমএ পরামিতি সেটিং নির্দিষ্ট পণ্য অনুযায়ী সাবধানে পরীক্ষা প্রয়োজন। খুব ছোট ইএমএ সময়কাল স্টপ লস সময় বাড়িয়ে তুলতে পারে। খুব দীর্ঘ ট্রেইলিং কার্যকারিতা হ্রাস করবে।
অতিরিক্ত অপ্টিমাইজেশান এড়ানো দরকার। বিবি এবং ইএমএ পরামিতিগুলির অত্যধিক সংমিশ্রণ অতিরিক্ত ফিটিংয়ের দিকে পরিচালিত করতে পারে।
ঝুঁকি মোকাবেলা এবং অপ্টিমাইজেশান দিক বিবেচনা করা যেতে পারেঃ
ভূল ব্রেকআউট সংকেত ফিল্টার করতে ভলিউম বা এমএসিডি ইত্যাদি যোগ করুন।
নির্দিষ্ট পণ্যের জন্য সবচেয়ে উপযুক্ত প্যারামিটার খুঁজে পেতে পরীক্ষার মাধ্যমে EMA সময়কাল অপ্টিমাইজ করুন।
অতিরিক্ত অপ্টিমাইজেশনের কারণে অতিরিক্ত ফিটিং ঝুঁকি এড়াতে BB এবং EMA পরামিতিগুলি যতটা সম্ভব স্থিতিশীল রাখার চেষ্টা করুন।
মাঝারি মেয়াদী প্রবণতা নির্ধারণের জন্য RSI ইত্যাদি ব্যবহার করার কথা বিবেচনা করুন।
এই কৌশলটি প্রবণতা নির্ধারণের জন্য বোলিংজার ব্যান্ড এবং স্টপ লস / টেক লাভ ম্যানেজমেন্টের জন্য ইএমএ ব্যবহার করে একটি তুলনামূলকভাবে সম্পূর্ণ প্রবণতা ট্র্যাকিং সিস্টেম গঠন করে। এটি স্টপ লস লাইনটি অবিচ্ছিন্নভাবে সামঞ্জস্য করে প্রবণতা দিকটি দ্রুত ক্যাপচার করতে এবং লাভকে লক করতে পারে। সামগ্রিকভাবে, কৌশলটি তুলনামূলকভাবে সহজ, ব্যবহারিক এবং অভিযোজিত, আরও পরীক্ষা এবং অপ্টিমাইজেশনের মূল্যবান। তবে ভুল বিচার এবং অতিরিক্ত অপ্টিমাইজেশান রোধ করতে প্যারামিটার সেটিংস এবং ঝুঁকি নিয়ন্ত্রণের বিষয়ে নোট করা দরকার। আরও উন্নতির জন্য অন্যান্য প্রযুক্তিগত সূচকগুলির সাথে একত্রিত করা ভবিষ্যতের দিক হবে।
/*backtest start: 2022-11-10 00:00:00 end: 2023-11-16 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © zxcv55602 //@version=4 strategy(shorttitle=" BB+EMA", title="Bollinger Bands", overlay=true) date1 = input(title="Start Date", type=input.time, defval=timestamp("2020-01-01T00:00:00")) date2 = input(title="Stop Date", type=input.time, defval=timestamp("2030-01-01T00:00:00")) length = input(40, minval=1) src = input(close, title="Source") mult = input(2.0,title="StdDev",step=0.1) basis = sma(src, length) dev = mult * stdev(src, length) upper = basis + dev lower = basis - dev //offset = input(0, "Offset", minval = -500, maxval = 500) offset=0 stopcon=input(title="stopcon/lot", type=input.bool, defval=true) lot1=input(title="lot",defval=1) stoploss=input(title="stopcon",defval=1000) emacon=input(title="emacon", type=input.bool, defval=true) ema_value=input(title="value",defval=30, minval=2,step=1) plot(basis, "Basis", color=#FF6D00, offset = offset) p1 = plot(upper, "Upper", color=color.new(color.blue,50), offset = offset) p2 = plot(lower, "Lower", color=color.new(color.blue,50), offset = offset) ema1=ema(close,ema_value) plot(ema1, "SMA", color=#2962FF) period() => true //----------- if period() if strategy.opentrades==0 and ema1<upper if close>upper lot_L=stoploss/((close-lower)/2) strategy.entry("OP_L",strategy.long,qty=stopcon==true?lot_L:lot1,stop=emacon==true?max(basis,ema1):basis) if strategy.opentrades==0 and ema1>lower if close<lower lot_S=stoploss/((upper-close)/2) strategy.entry("OP_S",strategy.short,qty=stopcon==true?lot_S:lot1,stop=emacon==true?min(basis,ema1):basis) if strategy.position_size>0 strategy.exit("OP_L",stop=emacon==true?max(basis,ema1):basis,comment="exit_L") if strategy.position_size<0 strategy.exit("OP_S",stop=emacon==true?min(basis,ema1):basis,comment="exit_S")