
এই কৌশলটির নাম হল বুলিন-বেসড প্রাইস অ্যাকশন স্ট্র্যাটেজি। এটি মূল্য আচরণ বিশ্লেষণ এবং বুলিন-বেসড সূচকগুলিকে একত্রিত করে এবং ট্রেডিং সংকেত তৈরি করতে সমন্বিত শর্তাদি ব্যবহার করে।
এই কৌশলটি প্রথমে ব্রিন বন্ডের উপরের এবং নীচের ট্র্যাকগুলি গণনা করে এবং তারপরে সিদ্ধান্ত নেয় যে শেষ কে লাইনটি ব্রিন বন্ডের নীচের ট্র্যাকটি ভেঙে দিয়েছে কিনা। একই সাথে, এটি সিদ্ধান্ত নেবে যে শেষ কে লাইনের সত্তাটি পূর্ববর্তী কে লাইনের সত্তার অর্ধেকই রয়েছে কিনা। যখন এই দুটি শর্ত পূরণ হয়, তখন একটি লেনদেনের সংকেত দেওয়া হয়।
বিশেষত, কৌশলটি নেমে যাওয়ার ক্ষেত্রে লাল কে-লাইন সত্তার ক্ষয়কে কেবলমাত্র পূর্ববর্তী কে-লাইন সত্তার অর্ধেকের পরিমাণে ব্যবহার করে এবং সর্বশেষ কে-লাইন বন্ধের দামটি বুলিন বন্ডের ট্র্যাকের নীচে ভেঙে যাওয়ার জন্য মাল্টি-সিগন্যাল হিসাবে কাজ করে। বিপরীতে, উত্থানের ক্ষেত্রে সবুজ কে-লাইন সত্তার ক্ষয়কে কেবলমাত্র পূর্ববর্তী কে-লাইন সত্তার অর্ধেকের পরিমাণে ব্যবহার করে এবং সর্বশেষ কে-লাইন বন্ধের দামটি বুলিন বন্ডের ট্র্যাকের নীচে ভেঙে যাওয়ার জন্য একটি ফাঁকা সংকেত হিসাবে কাজ করে।
এই কৌশলটি প্রযুক্তিগত সূচক এবং মূল্যের আচরণের বিচারকে একত্রিত করে, যা কার্যকরভাবে ভুয়া বিরতিগুলিকে ফিল্টার করতে পারে। একই সময়ে, এটি কেবলমাত্র প্রবণতা বিপরীত বিন্দুতে সংকেত দেয়, প্রবণতা মধ্যে পুনরাবৃত্তি ট্রেডিং এড়াতে। উপরন্তু, কৌশলটি কে-লাইন সত্তার ছোট হওয়ার বৈশিষ্ট্যটি ব্যবহার করে, যা সামান্য সংশোধন করার পরে প্রবণতা বিপরীত বিন্দুতে লক করতে পারে। এই সুবিধাগুলি কৌশলটির স্থায়িত্ব এবং মুনাফা বৃদ্ধি করতে পারে।
এই কৌশলটির প্রধান ঝুঁকি হ’ল ভুলভাবে বুলিং ব্যান্ডের প্যারামিটার সেট করা এবং বিরতির ব্যর্থতা। যদি বুলিং ব্যান্ডের প্যারামিটারটি খুব বড় বা খুব ছোট সেট করা হয় তবে এটি ভুল সিদ্ধান্তের দিকে পরিচালিত করে। এছাড়াও, দামটি বুলিং ব্যান্ডটি ভেঙে ফেললেও, এটি একটি ভুয়া বিরতি হতে পারে, যা সত্যিকারের প্রবণতা বিপরীত হতে পারে না। এই ঝুঁকিগুলি কৌশলটির ব্যবসায়ের ক্ষতির কারণ হতে পারে। এই ঝুঁকিগুলি হ্রাস করার জন্য, বুলিং ব্যান্ডের প্যারামিটারটি যথাযথভাবে সামঞ্জস্য করা যেতে পারে, বা সংমিশ্রণ যাচাইয়ের জন্য অন্যান্য সূচক যুক্ত করা যেতে পারে।
এই কৌশলটি নিম্নলিখিত দিকগুলি থেকে উন্নত করা যেতে পারেঃ
প্রবণতা এবং ওঠানামা আরও কার্যকরভাবে ধরার জন্য ব্রিনের প্যারামিটারগুলিকে অপ্টিমাইজ করা হয়েছে।
মুনাফা লক করার জন্য এবং ঝুঁকি পরিচালনা করার জন্য মোবাইলে স্টপ লস বাড়ানো।
এটি MACD, RSI ইত্যাদির মতো অন্যান্য সূচকগুলির সাথে মিলিত হয় যাচাই করার জন্য এবং মিথ্যা সংকেতগুলি ফিল্টার করার জন্য।
মেশিন লার্নিং অ্যালগরিদম যুক্ত করুন, বড় ডেটা প্রশিক্ষণ মডেল ব্যবহার করুন, যাতে কৌশলগত প্যারামিটার এবং সূচক ওজনের গতিশীলতা অপ্টিমাইজ করা যায়।
এই কৌশলটি সফলভাবে দামের ক্রিয়াকলাপ এবং ব্রিন-ব্যান্ডের সূচকগুলিকে একত্রিত করে, কম ঝুঁকির ক্ষেত্রে উচ্চ মুনাফা অর্জন করে। এটি কেবলমাত্র মূল পয়েন্টগুলিতে সংকেত দেয় এবং গোলমালের হস্তক্ষেপকে এড়ায়। প্যারামিটার এবং ফিল্টারিংয়ের অবস্থার ক্রমাগত অপ্টিমাইজেশনের মাধ্যমে এই কৌশলটি আরও স্থিতিশীল অতিরিক্ত লাভের প্রত্যাশায় রয়েছে। এটি পরিমাণগত ব্যবসায়ের অনুশীলনের জন্য একটি নির্ভরযোগ্য টেমপ্লেট সরবরাহ করে।
/*backtest
start: 2022-12-13 00:00:00
end: 2023-12-19 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
// main codebody taken from Trader Noro - Noro's Crypto Pattern for H1
// Intraday strategy- Exit at EOD at all cost
strategy(title = "Price Action + Bollinger Strategy ",overlay=true)
bar = close > open ? 1 : close < open ? -1 : 0
body = abs(close - open)
avgbody = sma(body, 100)
//calculate simple moving average bollinger bands
b_sma = input(21,minval=1,title=" SMA candle")
b_sma_no_of_deviations = 2.1
b_sma_signal = sma(close, b_sma)
b_sma_deviation = b_sma_no_of_deviations * stdev(close, b_sma)
b_sma_upper= b_sma_signal + b_sma_deviation
b_sma_lower= b_sma_signal - b_sma_deviation
up1 = body < body[1] / 2 and bar[1]==1 and bar == -1 and close[1] > b_sma_upper
dn1 = body < body[1] / 2 and bar[1]==-1 and bar == 1 and close[1] < b_sma_lower
up2 = false
dn2 = false
up2 := (up1[1] or up2[1]) and close < close[1]
dn2 := (dn1[1] or dn2[1]) and close > close[1]
plotarrow(up1 or up2 ? 1 : na, colorup = color.black, colordown = color.black, transp = 0)
plotarrow(dn1 or dn2 ? -1 : na, colorup = color.black, colordown = color.black, transp = 0)
strategy.entry("Buy", true, when = dn1)
strategy.exit("exit", "Buy", profit = 3, loss = 1.5)
strategy.entry("Short", false, when = up1)
strategy.exit("exit", "Short", profit = 3, loss = 1.5)