বিপরীত রৈখিক রিগ্রেশন কৌশল

লেখক:চাওঝাং, তারিখঃ ২৯ ডিসেম্বর ২০২৩ ১৭ঃ১৫ঃ০৭
ট্যাগঃ

img

সারসংক্ষেপ

বিপরীত রৈখিক রিগ্রেশন কৌশল হল মূল্যের ওঠানামা উপর ভিত্তি করে একটি বিপরীত ট্রেডিং কৌশল। এটি রৈখিক রিগ্রেশন বিশ্লেষণ এবং AVERAGE TRUE RANGE সূচককে একত্রিত করে, ক্রমাগত ক্রমবর্ধমান কে-লাইন বা ক্রমাগত ক্রমাগত ক্রমবর্ধমান কে-লাইনগুলির জন্য শর্তগুলি নির্ধারণ করে এবং যখন রৈখিক রিগ্রেশন বিশ্লেষণ মূল্য বিপরীত বিচার করে তখন বিপরীত অপারেশন করে।

কৌশল নীতি

কৌশলটি প্রথমে রৈখিক রিগ্রেশনের ঢাল গণনা করে। যখন রৈখিক রিগ্রেশনের ঢাল 0 এর চেয়ে বড় বা সমান হয়, তখন এটি নির্দেশ করে যে দামটি একটি উত্থান প্রবণতা রয়েছে; যখন এটি 0 এর চেয়ে কম হয়, তখন এটি দামের হ্রাসের প্রবণতা নির্দেশ করে। একই সাথে, শেষ কে-লাইনের বন্ধের দাম এবং উদ্বোধনী মূল্যের মধ্যে তুলনার সাথে মিলিত, শেষ কে-লাইনের উত্থান বা পতন হয়েছে কিনা তা বিচার করা হয়। যখন রৈখিক রিগ্রেশনের ঢাল 0 এর চেয়ে বড় বা সমান হয় এবং শেষ কে-লাইনের বন্ধের দাম খোলার দামের চেয়ে কম হয়, তখন একটি ক্রয় সংকেত উত্পন্ন হয়; যখন রৈখিক রিগ্রেশন ঢাল 0 এর চেয়ে কম হয় এবং শেষ কে-লাইনের বন্ধের দাম খোলার দামের চেয়ে বেশি হয়, তখন একটি বিক্রয় সংকেত উত্পন্ন হয়।

ক্রমাগত ক্রমবর্ধমান কে-লাইনের সংখ্যা এবং ক্রমাগত হ্রাসকারী কে-লাইনের সংখ্যা নির্ধারণের মাধ্যমে, ট্রেডিং ফ্রিকোয়েন্সি নিয়ন্ত্রণ করা যেতে পারে। যখন এটি নির্ধারিত হয় যে ক্রমাগত ক্রমবর্ধমান কে-লাইনের সংখ্যা সেট সংখ্যায় পৌঁছেছে, তখন একটি বিক্রয় সংকেত উত্পন্ন হয় শর্তে যে লিনিয়ার রিগ্রেশন ঢাল উচ্চতম পয়েন্টের কাছাকাছি বিপরীত ট্রেডিং অর্জনের জন্য 0 এর চেয়ে কম; যখন এটি নির্ধারিত হয় যে ক্রমাগত হ্রাসকারী কে-লাইনগুলি সেটিং সংখ্যায় পৌঁছেছে, যখন লিনিয়ার রিগ্রেশন ঢাল 0 এর চেয়ে বড় বা সমান হয়, তখন একটি ক্রয় সংকেত উত্পন্ন হয় নিম্নতম পয়েন্টের কাছে বিপরীত ট্রেডিং অর্জনের জন্য।

সুবিধা বিশ্লেষণ

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

সাধারণ বিপরীত কৌশলগুলির তুলনায়, এই কৌশলটি লেনদেনের সময়কে আরও সঠিকভাবে নিয়ন্ত্রণ করতে একাধিক প্রযুক্তিগত সূচককে একত্রিত করে, যা কার্যকরভাবে মিথ্যা বিরতির ঝুঁকি এড়াতে এবং লাভজনকতা বাড়িয়ে তুলতে পারে।

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

এই কৌশলটির প্রধান ঝুঁকি হ'ল বিপরীতমুখী ব্যর্থতা। যদি এটি বিচার করা হয় যে মূল্য বিপরীতমুখী সংকেত, দামটি মূল প্রবণতা বজায় রাখে, এটি ক্ষতির কারণ হবে। এছাড়াও, রৈখিক রিগ্রেশন বিশ্লেষণের পরামিতি এবং এটিআর সূচকগুলির সেটিং কৌশলএর আয়কেও প্রভাবিত করবে।

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

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

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

  1. বিচার সঠিকতা উন্নত করার জন্য অন্যান্য প্রযুক্তিগত সূচক যোগ করুন। উদাহরণস্বরূপ, এমএসিডি, বলিংজার ব্যান্ড ইত্যাদি।

  2. স্বয়ংক্রিয় পরামিতি অপ্টিমাইজেশান এবং ট্রেডিং নিয়মের গতিশীল সমন্বয় জন্য মেশিন লার্নিং উপাদান বৃদ্ধি।

  3. ট্রেডিং ঝুঁকি নিয়ন্ত্রণের জন্য মূলধন ব্যবস্থাপনা এবং স্টপ লস কৌশলগুলির মতো ঝুঁকি ব্যবস্থাপনা ব্যবস্থা অন্তর্ভুক্ত করুন।

  4. পোর্টফোলিও অপ্টিমাইজেশান যা সামগ্রিক ড্রাউনডাউন হ্রাস এবং স্থিতিশীলতা উন্নত করার জন্য অন্যান্য সম্পর্কিত কৌশলগুলির সাথে কৌশলগুলিকে একত্রিত করে।

  5. আরও বিভিন্ন জাতের জন্য সম্প্রসারণ করুন, কৌশলটিকে আরও বহুমুখী করার জন্য বিভিন্ন জাতের জন্য প্যারামিটার সেটিংস মূল্যায়ন করুন।

সংক্ষিপ্তসার

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


/*backtest
start: 2023-12-21 00:00:00
end: 2023-12-28 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Reverse Up/Down Strategy", currency=currency.USD, initial_capital=1000, pyramiding=2, default_qty_type=strategy.percent_of_equity, default_qty_value=100,overlay=true)

//User Options
consecutiveBarsUp   = input(title="Sell after how many bars up?",   type=input.integer, minval=1, defval=1)
consecutiveBarsDown = input(title="Buy after how many bars down?",  type=input.integer, minval=1, defval=1)
atrLength           = input(title="ATR Length",                     type=input.integer, minval=1, defval=14)
atrMult             = input(title="ATR Multiplier",                 type=input.float,   minval=0.1, defval=2.33)

//ATR Channel
adjustedATR     = sma(atr(atrLength),atrLength) * atrMult
longATR         = low - adjustedATR
shortATR        = high + adjustedATR
plot(shortATR,  title="Short ATR",  color=color.red)
plot(longATR,   title="Long ATR",   color=color.lime)


// This is the true linear regression slope rather than an approximation given by numerical differentiation
src = hlc3
len = input(defval=14, minval=1, title="Slope Length")
lrc = linreg(src, len, 0)
lrc1 = linreg(src, len,1)
lrs = (lrc-lrc1)

//Check if last candle was up or down
priceOpen = open
priceClose = close
longCondition = priceOpen > priceClose
shortCondition = priceOpen < priceClose
ups = 0.0
dns = 0.0

ups := shortCondition ? nz(ups[1]) + 1 : 0
dns := longCondition ? nz(dns[1]) + 1 : 0

if (shortCondition)
    strategy.close("buy", qty_percent=100, comment="Close")
    if (ups >= consecutiveBarsUp and lrs <= 0)
    	strategy.entry("sell", strategy.short, comment="Sell")
    	

if (longCondition)
    strategy.close("sell", qty_percent=100, comment="Close")
    if (dns >= consecutiveBarsDown and lrs >= 0)
	    strategy.entry("buy", strategy.long, comment = "Buy")


আরো