মাল্টি-ইনডিকেটর সংযুক্ত বিপরীতমুখী ট্রেডিং কৌশল

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

এই কৌশলটির নাম Multi-indicator Combined Reversal Trading Strategy। এটি স্বল্পমেয়াদী মূল্য বিপরীতমুখী হওয়ার সুযোগগুলি চিহ্নিত করতে এবং মুনাফার পূর্ববর্তী প্রবণতার বিরুদ্ধে বাণিজ্য করার জন্য বিভিন্ন প্রযুক্তিগত সূচককে একীভূত করে।

প্রথমত, কৌশলটি 123 বিপরীতমুখী প্যাটার্ন ব্যবহার করে স্বল্পমেয়াদী প্রবণতা বিপরীতমুখী নির্ধারণ করতে। 123 প্যাটার্নটি যখন দামগুলি পরপর তিন দিনের মধ্যে উল্লেখযোগ্যভাবে ব্যবধান করে এবং তৃতীয় দিনটি পূর্ববর্তী দুই দিনের বিপরীত দিকে বন্ধ হয়। পরিসংখ্যানগতভাবে, 123 বিপরীতমুখী সংকেতগুলির সাথে ট্রেডিংয়ের উচ্চতর জয় হার রয়েছে।

দ্বিতীয়ত, RSI সূচকটি বিপরীত সংকেতগুলির নির্ভরযোগ্যতা মূল্যায়নের জন্য অন্তর্ভুক্ত করা হয়। 50 এর নীচে RSI অতিরিক্ত বিক্রয় অবস্থার প্রতিনিধিত্ব করে, যখন 50 এর উপরে এটি অতিরিক্ত কেনা হয়। RSI ব্যবহার করে কেবলমাত্র 123 প্যাটার্নের উপর ভিত্তি করে অত্যধিক অ-নির্ভরযোগ্য সংকেত উত্পন্ন করা এড়ানো হয়।

তৃতীয়ত, সিএমও সূচকএর বহু-অবধি ক্রসওভার চালু করা হয়। বিভিন্ন সময়ের এক্সপোনেন্সিয়াল মুভিং মিডিয়ার সমন্বয়কারী সিএমও ক্রসওভার গতির বিপরীত দিকগুলি বিচার করে। এর সংকেতগুলি 123 বিপরীত সময়ের আরও নিশ্চিতকরণ প্রদান করে।

একাধিক সূচকগুলির সমন্বিত প্রয়োগ অত্যধিক অনিশ্চিত সংকেতগুলি এড়ানোর মাধ্যমে দামের বিপরীতমুখীতা ধরা সাফল্যের হার বৃদ্ধি করে। কেবলমাত্র যখন আরএসআই এবং সিএমও উভয়ই 123 প্যাটার্নকে সমর্থন করে তখন একটি শক্তিশালী বিপরীতমুখী ট্রেড সংকেত আবির্ভূত হবে।

এই কৌশলটি স্বল্পমেয়াদী দামের ওঠানামা ক্যাপচার করতে ব্যাপ্তি, দোলনকারী বাজারগুলির জন্য উপযুক্ত। তবে, খুব বেশি সূচক একত্রিত করাও দ্বন্দ্বের দিকে পরিচালিত করতে পারে। পরামিতি অপ্টিমাইজেশান প্রয়োজন। প্রতি বাণিজ্যে সর্বাধিক ক্ষতি সীমাবদ্ধ করতে স্টপ লসও ব্যবহার করা উচিত।

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


/*backtest
start: 2023-01-01 00:00:00
end: 2023-03-11 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 25/02/2020
// This is combo strategies for get a cumulative signal. 
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The 
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close 
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. 
// The strategy sells at market, if close price is lower than the previous close price 
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// The related CMOaDisparity Index article is copyrighted material from Stocks & Commodities Dec 2009
// My strategy modification.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
    vFast = sma(stoch(close, high, low, Length), KSmoothing) 
    vSlow = sma(vFast, DLength)
    pos = 0.0
    pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
	         iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) 
	pos

CMOD(LengthFirst, LengthSecond, LengthThird) =>
    pos = 0.0
    xEMAFirst = ema(close,LengthFirst)
    xEMASecond  = ema(close,LengthSecond)
    xEMAThird  = ema(close,LengthThird)
    xResFirst = 100 * (close - xEMAFirst) / close
    xResSecond = 100 * (close - xEMASecond) / close
    xResThird = 100 * (close - xEMAThird) / close
    pos := iff(xResThird > xResFirst, -1,
             iff(xResThird < xResSecond, 1, nz(pos[1], 0)))     
    pos

strategy(title="Combo Backtest 123 Reversal & CMOaDisparity Index", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
LengthFirst = input(50, minval=1)
LengthSecond = input(25, minval=1)
LengthThird = input(10, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posCMOD = CMOD(LengthFirst, LengthSecond, LengthThird)
pos = iff(posReversal123 == 1 and posCMOD == 1 , 1,
	   iff(posReversal123 == -1 and posCMOD == -1, -1, 0)) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1 , 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )

আরো