
এই কৌশলটি আরএসআই, গড় ম্যাকড, বুলিন ব্যান্ড এবং ক্যাচ স্টপ ফ্যাক্টর ব্যবহার করে মাল্টি ফ্যাক্টর ডায়নামিক ঘূর্ণনশীল ট্রেডিংয়ের জন্য। কৌশলটি প্রথমে বিচার করে যে একাধিক প্রযুক্তিগত সূচক একই সাথে ক্রয় বা বিক্রয় সংকেত দেয় কিনা এবং যদি তা হয় তবে সংশ্লিষ্ট ক্রয় বা বিক্রয় ক্রিয়াকলাপ পরিচালনা করে। তদুপরি, কৌশলটি মুনাফা লক করতে এবং ঝুঁকি নিয়ন্ত্রণ করতে মোবাইল স্টপ এবং স্টপ লস ব্যবহার করে।
এই নীতিমালার প্রধান অংশগুলো হলঃ
বিচারক
প্রবেশ ও প্রস্থান
কৌশল অপ্টিমাইজেশন
এই কৌশলটি কেবলমাত্র একক প্রযুক্তিগত সূচককে বিবেচনা করে না, তবে আরএসআই, এমএসিডি, টিডি সিরিজের মতো একাধিক কারণকে একত্রিত করে যাতে একক সূচকের কারণে মিথ্যা সংকেত হ্রাস করা যায় এবং প্রবেশের নির্ভুলতা বাড়ানো যায়।
RSI, MACD ইত্যাদির মতো সূচকগুলির আরও স্পষ্ট গতিশীল বৈশিষ্ট্য রয়েছে, যা শেয়ারের দামের প্রবণতা পরিবর্তনকে ধরতে পারে। গড়ের মতো প্রবণতা-ট্র্যাকিং সূচকের তুলনায় এই সূচকগুলি বিপরীত দিকে আরও সংবেদনশীল।
মোবাইল স্টপগুলি মুনাফা আরও ভালভাবে লক করার জন্য মুনাফার সাথে চলমান স্টপগুলিকে কার্যকর করতে পারে। স্টপ লস সেটিংগুলি একক ক্ষতি নিয়ন্ত্রণ করতে পারে।
এই নীতিটি সাধারণ প্রযুক্তিগত সূচকগুলির সাথে মিলিত এবং কিছু সাধারণতা রয়েছে। নিয়মগুলি তুলনামূলকভাবে সহজ, পরিষ্কার এবং সহজেই বোঝা এবং পরিচালনা করা যায়।
এই কৌশলটি বিপরীতমুখী বাজার চালনার উপর ভিত্তি করে, এটি একটি বিপরীতমুখী কৌশল। একটি ষাঁড়ের বাজারে, এই কৌশলটি ব্যবহার করা প্রায়শই ক্ষতিগ্রস্থ হতে পারে এবং এর কার্যকারিতা ভাল নয়।
যদি প্যারামিটারগুলি খুব সংবেদনশীলভাবে সেট করা হয়, তবে ট্রেডিং ফ্রিকোয়েন্সি খুব বেশি হতে পারে, যার ফলে ট্রেডিং খরচ এবং স্লাইড পয়েন্টের ক্ষতি হতে পারে।
এই কৌশলটি একাধিক সূচকের একই দিকের সংকেতের উপর নির্ভর করে, তবে কখনও কখনও সূচকগুলি বিভক্ত হতে পারে, যার ফলে ভুল সংকেত দেওয়া হয়।
একটি স্থির স্টপ পয়েন্ট সেট করা হলে এটি ভেঙে যেতে পারে, এই ঝুঁকি এড়াতে গতিশীল স্টপ সেট করা বা শেয়ার পরিবর্তন করা বিবেচনা করা যেতে পারে।
RSI এর প্যারামিটার এবং গড়ের পিরিয়ড প্যারামিটার পরীক্ষা করে কম ট্রেডিং ফ্রিকোয়েন্সির সমন্বয় খুঁজে বের করা যায়।
স্টকগুলির নিজস্ব পরিসংখ্যানগত বৈশিষ্ট্য যেমন অস্থিরতা, তরলতা ইত্যাদির সাথে প্যারামিটারগুলি সেট করতে পারে, কৌশলটির কার্যকারিতা বাড়ায়।
এই প্যারামিটারগুলিকে ভিআইএক্স এবং অন্যান্য বিশ্বব্যাপী আতঙ্ক সূচকের উপর ভিত্তি করে কৌশলগতভাবে সামঞ্জস্য করা যেতে পারে, যা বাজারের আতঙ্কের সময় ট্রেডিং ফ্রিকোয়েন্সি হ্রাস করে।
বিভিন্ন পজিশন হোল্ডিং পিরিয়ড পরীক্ষা করে দেখা যায় যে, দীর্ঘমেয়াদী হোল্ডিং বা স্বল্পমেয়াদী ঘূর্ণন কৌশলগত কার্যকারিতার উপর প্রভাব ফেলে কিনা।
এটি আরও উন্নত গতিশীল থামানো ক্ষতির পদ্ধতির উপর গবেষণা করতে পারে, যা এর কার্যকারিতা পরীক্ষা করে।
এই কৌশলটি একাধিক প্রযুক্তিগত সূচককে সামগ্রিকভাবে বিবেচনা করে, উচ্চতর প্রবেশের নির্ভুলতা নিশ্চিত করার ভিত্তিতে মুনাফা লক এবং ঝুঁকি নিয়ন্ত্রণের জন্য মোবাইল স্টপ লস ব্যবহার করে। কৌশলটি সহজ, সহজেই বোঝা যায়, প্যারামিটার অপ্টিমাইজেশন এবং সূচক পছন্দ করে আরও কার্যকরতা বাড়ানো যায়। তবে এই কৌশলটি বিপরীত বাজার এবং অস্থিরতার জন্য আরও উপযুক্ত, ক্রমাগত উত্থান চলাকালীন কার্যকারিতা কম হতে পারে। এই কৌশলটি একটি আদর্শ মাল্টি ফ্যাক্টর ডায়নামিক ভলিউম বিপরীত কৌশল হিসাবে, এটি শেয়ারের ঘূর্ণায়মান ব্যবসায়ের জন্য ধারণা এবং রেফারেন্স সরবরাহ করতে পারে।
/*backtest
start: 2023-09-24 00:00:00
end: 2023-10-24 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy("RSI, TD Seq, MACD, BB Strategy - Calculation Trailing Profit",overlay=true)
RSIDifference = input(-7, minval=-50, maxval=50, title="RSI Difference")
TD = close > close[4] ?nz(TD[1])+1:0
TS = close < close[4] ?nz(TS[1])+1:0
TDUp = TD - valuewhen(TD < TD[1], TD , 1 )
TDDn = TS - valuewhen(TS < TS[1], TS , 1 )
TDcheckUP = iff(TD == 2, true, false)
TDCheckDOWN = iff(TS == 2, true, false)
[_, _, histLine] = macd(close, 12, 26, 9)
MACDCheckDown = iff(histLine > 0 and histLine[1] > 0 and histLine[2] > 0 and histLine[3] > 0 and histLine[4] > 0, true, false)
MACDCheckUp = iff(histLine < 0 and histLine[1] < 0 and histLine[2] < 0 and histLine[3] < 0 and histLine[4] < 0, true, false)
RSICal = rsi(close, 14)
RSICalNewUp = 50 + RSIDifference
RSICalNewDown = 50 - RSIDifference
RSICheckUp = iff(RSICal <= RSICalNewUp, true, false)
RSICheckDown = iff(RSICal >= RSICalNewDown, true, false)
basis = sma(close, 20)
dev = 2 * stdev(close, 20)
upperBB = basis + dev
lowerBB = basis - dev
BBCheckUp = iff(close > upperBB, true, false)
BBCheckDown = iff(close < lowerBB, true, false)
//BBCheckUp = false
//BBCheckDown = false
BuyCheck = iff(TDcheckUP == true and MACDCheckUp == true and RSICheckUp == true and BBCheckUp == false, true, false)
SellCheck = iff(TDCheckDOWN == true and MACDCheckDown == true and RSICheckDown == true and BBCheckDown == false, true, false)
ProfitStratA = input(50, minval=0, maxval=10000, title="Profit", step=0.5)
ProfitTrailingA = input(10, minval=0, maxval=10000, title="Profit", step=0.5)
useStopLoss = input(false, title="Use Stop Loss?")
LossstratA = input(145, minval=0, maxval=10000, title="Stop Loss", step=0.5)
colB = input(100, minval=0, maxval=100, title="0-show / 100-hide Strategy", step=100)
ProfitStrat = ProfitStratA * 10
ProfitTrailing = ProfitTrailingA * 10
Lossstrat = useStopLoss ? LossstratA * 10 : 1000000
if (strategy.position_size > 0)
strategy.exit("BuyClose", "Buy", trail_points=ProfitStrat, trail_offset=ProfitTrailing, loss=Lossstrat)
if (strategy.position_size < 0)
strategy.exit("SellClose", "Sell", trail_points=ProfitStrat, trail_offset=ProfitTrailing, loss=Lossstrat)
if (BuyCheck == true and strategy.position_size == 0)
strategy.entry("Buy", strategy.long, comment="Long Entry")
if (SellCheck == true and strategy.position_size == 0)
strategy.entry("Sell", strategy.short, comment="Short Entry")
plotshape(BuyCheck, color=blue, transp=colB, style=shape.arrowup, text="Buy\n", location=location.belowbar)
plotshape(SellCheck, color=orange, transp=colB, style=shape.arrowdown, text="Sell\n", location=location.abovebar)