গুরুত্বপূর্ণ পিভট পয়েন্ট বিপরীত কৌশল

লেখক:চাওঝাং, তারিখঃ 2024-01-29 14:58:15
ট্যাগঃ

img

সারসংক্ষেপ

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

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

মূল যুক্তিটি হ'ল উল্লেখযোগ্য পিক এবং ট্রল পিভট পয়েন্টগুলি সনাক্ত করা। উল্লেখযোগ্য পিক পিভটগুলি গণনা করার মূল পদক্ষেপগুলি হ'লঃ

  1. ATR গণনা করুন এবং ATR ফিল্টার ফ্যাক্টর atr_mult সেট করুন।
  2. বাম দিকে একটি নির্দিষ্ট সংখ্যক বার অতিক্রম করুন (বামবার দ্বারা সেট করা), যদি শীর্ষ পিভট বাম দিকে কোনও উচ্চ + ATR*atr_mult এর চেয়ে বেশি হয় তবে পিভটটি অবৈধ।
  3. ডানদিকে একটি নির্দিষ্ট সংখ্যক বার অতিক্রম করুন (ডানবার দ্বারা সেট), যদি শীর্ষ পিভট ডানদিকে কোনও উচ্চ + ATR*atr_mult এর চেয়ে বেশি হয় তবে পিভটটি অবৈধ।
  4. উপরের পরীক্ষার পরেও যদি পিক পিভটটি বৈধ থাকে, তবে এটি একটি গুরুত্বপূর্ণ পিক পিভট হিসাবে ফেরত দিন।

উল্লেখযোগ্য তল পিভট গণনা করার জন্য যুক্তি অনুরূপ।

গুরুত্বপূর্ণ পিভট পাওয়ার পর, যখন মূল্য একটি গুরুত্বপূর্ণ শীর্ষ পিভট ভেঙে যায় তখন শর্ট করুন এবং যখন এটি একটি গুরুত্বপূর্ণ নীচের পিভট ভেঙে যায় তখন লং করুন।

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

এই কৌশলটির প্রধান সুবিধাগুলো হল:

  1. ATR এবং atr_mult ফিল্টার অপ্রয়োজনীয় ট্রেড এড়ানোর জন্য অপ্রয়োজনীয় ওঠানামা দূর করতে পারে এবং শুধুমাত্র সত্যিকারের গুরুত্বপূর্ণ পিভট ট্রেড করতে পারে।
  2. ডায়নামিক এটিআর প্যারামিটারটি অস্থির বাজারে স্বয়ংক্রিয়ভাবে ট্রেডিং রেঞ্জ সামঞ্জস্য করতে পারে, যা অত্যধিক ট্রেডিং রোধ করে।
  3. পিভট পয়েন্ট বিপরীতকরণ নিজেই তুলনামূলকভাবে উচ্চ জয় হার এবং লাভজনকতা আছে।

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

প্রধান ঝুঁকিগুলি হলঃ

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

উপরের ঝুঁকিগুলি নিয়ন্ত্রণের জন্য, নিম্নলিখিত দিকগুলি থেকে অনুকূলিত করুনঃ

  1. পর্যাপ্ত বাণিজ্য সুযোগ নিশ্চিত করার জন্য ATR পরামিতিগুলি অপ্টিমাইজ করুন।
  2. যুক্তিসঙ্গত স্টপ লস এবং লাভের অনুপাত নির্ধারণ করুন।
  3. লেনদেনের খরচের প্রভাব কমাতে পজিশনের আকার সংশোধন করুন।

অপ্টিমাইজেশান নির্দেশাবলী

আরও অপ্টিমাইজেশান দিকগুলির মধ্যে রয়েছেঃ

  1. ট্রেন্ডিং মার্কেটে ট্রেডিং বিপর্যয় এড়াতে বাজার ব্যবস্থা নির্ধারণের জন্য অন্যান্য সূচকগুলির সাথে একত্রিত করা। ম্যাকডি, কেডিজে ইত্যাদি বিবেচনা করুন।

  2. মেশিন লার্নিং অ্যালগরিদম যুক্ত করে স্বয়ংক্রিয়ভাবে প্যারামিটারগুলি অপ্টিমাইজ করা। জেনেটিক অ্যালগরিদম, র্যান্ডম ফরেস্টের মতো পদ্ধতিগুলি সর্বোত্তম প্যারামিটার সেটগুলি খুঁজে পেতে ব্যবহার করা যেতে পারে।

  3. সর্বোত্তম এটিআর পরিসীমা খুঁজে পেতে পরিমাণগত তথ্য ব্যবহার করে প্রশিক্ষণ মডেল। আরও ঐতিহাসিক তথ্য পরামিতি নির্বাচনের নির্ভুলতা উন্নত করে।

  4. অন্যান্য কৌশলগুলির সাথে সংমিশ্রণ বিবেচনা করুন, বিভিন্ন কৌশল ধরণের শক্তি ব্যবহার করে। উদাহরণস্বরূপ, প্রবণতা অনুসরণকারী কৌশলগুলির সাথে সংমিশ্রণ, ব্যাপ্তির সময় বিপরীত, ধারাবাহিক প্রবণতার সময় প্রবণতা অনুসরণ করুন।

সিদ্ধান্ত

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


/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("QuantNomad - Significant Pivot Reversal Strategy", shorttitle = "SPPS", overlay=true)

// Inputs 
leftBars   = input(4,   title = 'PP Left Bars')
rightBars  = input(2,   title = 'PP Right Bars')
atr_length = input(14,  title = 'ATR Length')
atr_mult   = input(0.1, title = 'ATR Mult')

// Pivot High Significant Function
pivotHighSig(left, right) =>
    pp_ok = true
    atr   = atr(atr_length)
    
    for i = 1 to left
        if (high[right] < high[right+i] + atr * atr_mult)
            pp_ok := false
    for i = 0 to right-1
        if (high[right] < high[i] + atr * atr_mult)
            pp_ok := false
    
    pp_ok ? high[right] : na

// Pivot Low Significant Function
pivotLowSig(left, right) =>
    pp_ok = true
    atr   = atr(atr_length)
    
    for i = 1 to left
        if (low[right] > low[right+i] - atr * atr_mult)
            pp_ok := false
    for i = 0 to right-1
        if (low[right] > low[i] - atr * atr_mult)
            pp_ok := false
    
    pp_ok ? low[right] : na


swh = pivotHighSig(leftBars, rightBars)
swl = pivotLowSig (leftBars, rightBars)

swh_cond = not na(swh)

hprice = 0.0
hprice := swh_cond ? swh : hprice[1]

le = false
le := swh_cond ? true : (le[1] and high > hprice ? false : le[1])

if (le)
    strategy.entry("PivRevLE", strategy.long, comment="PivRevLE", stop=hprice + syminfo.mintick)

swl_cond = not na(swl)

lprice = 0.0
lprice := swl_cond ? swl : lprice[1]


se = false
se := swl_cond ? true : (se[1] and low < lprice ? false : se[1])

if (se)
    strategy.entry("PivRevSE", strategy.short, comment="PivRevSE", stop=lprice - syminfo.mintick)

আরো