ডিসট্রেনড প্রাইস অ্যাসিললেটর পরিমাণগত ট্রেডিং কৌশল

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

কৌশল ওভারভিউ

এই কৌশলটির নাম Detrended Price Oscillator Quantitative Trading Strategy। এটি Detrended Price Oscillator সূচকের উপর ভিত্তি করে ট্রেডিং সিগন্যাল তৈরি করে, যা একটি সাধারণ প্রযুক্তিগত সূচক কৌশল।

কৌশলগত যুক্তি

এই কৌশলটির মূলটি হ'ল ডিট্রেন্ডেড প্রাইস অ্যাসিললেটর (ডিপিও) সূচক। ডিপিও চলমান গড়ের অনুরূপ, যা চক্রীয় ওঠানামা আরও স্পষ্ট করতে দামের দীর্ঘমেয়াদী প্রবণতা ফিল্টার করতে পারে। বিশেষত, ডিপিও তাদের এন-দিনের সহজ চলমান গড়ের সাথে দামের তুলনা করে। যখন দাম চলমান গড়ের উপরে থাকে, ডিপিও ইতিবাচক হয়; যখন দাম চলমান গড়ের নীচে থাকে, ডিপিও নেতিবাচক হয়। এর ফলে একটি দোলক 0 অক্ষের চারপাশে ওঠানামা করে। আমরা প্রবণতার তুলনায় দামের উত্থান / পতন বিচার করতে ডিপিওর ইতিবাচক / নেতিবাচক ব্যবহার করতে পারি।

এই কৌশলটি প্যারামিটার এন 14 এ সেট করে এবং 14 দিনের ডিপিও সূচক তৈরি করে। যখন ডিপিও ইতিবাচক হয়, তখন একটি দীর্ঘ সংকেত জারি করা হয়। যখন ডিপিও নেতিবাচক হয়, তখন একটি সংক্ষিপ্ত সংকেত জারি করা হয়।

সুবিধা

  • ডিপিও মূলত একটি ফিল্টারিং সূচক যা মূল্যের মধ্যমেয়াদী চক্রগুলি কার্যকরভাবে সনাক্ত করতে পারে। এটি তুলনামূলকভাবে লুকানো ট্রেডিং সুযোগগুলি আবিষ্কার করতে খুব সহায়ক।
  • ডিপিওর নির্মাণ সহজ এবং বোঝা সহজ। প্যারামিটার নির্বাচনও তুলনামূলকভাবে নমনীয়।
  • দামের তুলনায়, ডিপিও সূচক প্যাটার্নটি আরও মানসম্মত এবং বিচার করা সহজ, যা এটিকে নিয়ম তৈরির জন্য উপযুক্ত করে তোলে।

ঝুঁকি

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

ঝুঁকি হ্রাস করার জন্য, নিম্নলিখিত দিকগুলিতে অপ্টিমাইজেশান বিবেচনা করা যেতে পারেঃ

  1. একক ক্ষতি নিয়ন্ত্রণের জন্য স্টপ লস মেকানিজম যোগ করুন।

  2. অপ্টিমাম প্যারামিটার খুঁজতে প্যারামিটার N এর মান সামঞ্জস্য করুন।

  3. উল্লেখযোগ্য প্রবণতা থেকে ট্রেডিং এড়াতে প্রবণতা সূচক অন্তর্ভুক্ত করুন।

সিদ্ধান্ত

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


/*backtest
start: 2023-11-16 00:00:00
end: 2023-11-20 08:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 31/03/2017
// The Detrend Price Osc indicator is similar to a moving average, 
// in that it filters out trends in prices to more easily identify 
// cycles. The indicator is an attempt to define cycles in a trend 
// by drawing a moving average as a horizontal straight line and 
// placing prices along the line according to their relation to a 
// moving average. It provides a means of identifying underlying 
// cycles not apparent when the moving average is viewed within a 
// price chart. Cycles of a longer duration than the Length (number 
// of bars used to calculate the Detrend Price Osc) are effectively 
// filtered or removed by the oscillator.
//
// You can change long to short in the Input Settings
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy(title="Detrended Price Oscillator", shorttitle="DPO")
Length = input(14, minval=1)
Series = input(title="Price",  defval="close")
reverse = input(false, title="Trade reverse")
hline(0, color=green, linestyle=line)
xPrice = close
xsma = sma(xPrice, Length)
nRes = xPrice - xsma
pos = iff(nRes > 0, 1,
	     iff(nRes < 0, -1, nz(pos[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)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(nRes, color=red, title="Detrended Price Oscillator")

আরো