রিসোর্স লোড হচ্ছে... লোডিং...

মাল্টি-প্যাটার্ন স্বীকৃতি এবং এসআর স্তরের ট্রেডিং কৌশল

লেখক:চাওঝাং, তারিখঃ 2024-12-05 16:30:14
ট্যাগঃএস আররক্তচাপটিপিFIBOএটিআরএসএমএ

img

সারসংক্ষেপ

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

কৌশলগত নীতি

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

কৌশলগত সুবিধা

  1. একাধিক যাচাইকরণ পদ্ধতি ট্রেডিং সিগন্যালের নির্ভরযোগ্যতাকে ব্যাপকভাবে উন্নত করে
  2. প্যাটার্ন রিকগনিশন অ্যালগরিদম সঠিকভাবে বাজারের বাঁক পয়েন্ট ক্যাপচার
  3. ফিবোনাচি স্তরগুলি সুনির্দিষ্ট লক্ষ্য অঞ্চল সরবরাহ করে
  4. সমর্থন/প্রতিরোধ স্তরের যাচাইকরণ ট্রেডিং নিরাপত্তা বৃদ্ধি করে
  5. বিভিন্ন বাজারের অবস্থার সাথে অত্যন্ত সামঞ্জস্যপূর্ণ পরামিতিগুলি
  6. স্বয়ংক্রিয়তার উচ্চ স্তর স্বতন্ত্র বিচারকে হ্রাস করে

কৌশলগত ঝুঁকি

  1. প্যাটার্ন স্বীকৃতির বিলম্ব হতে পারে, প্রবেশের সময় প্রভাবিত করে
  2. অত্যন্ত অস্থির বাজারে মিথ্যা সংকেত দেখা দিতে পারে
  3. সমর্থন/প্রতিরোধ স্তরের কার্যকারিতা বাজার অবস্থার দ্বারা প্রভাবিত হয়
  4. অনুপযুক্ত প্যারামিটার সেটিংস ওভারট্রেডিং হতে পারে
  5. দীর্ঘতর পর্যবেক্ষণের প্রয়োজন, সম্ভাব্য দ্রুত সুযোগগুলি মিস করে

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

  1. বাজারের অবস্থা ফিল্টার করার জন্য অস্থিরতা সূচক প্রবর্তন
  2. প্যাটার্ন স্বীকৃতির নির্ভুলতা উন্নত করতে প্রবণতা ফিল্টার যোগ করুন
  3. সমর্থন/প্রতিরোধ স্তরের গণনার পদ্ধতিগুলি অপ্টিমাইজ করুন
  4. নিশ্চিতকরণের জন্য ভলিউম সূচক অন্তর্ভুক্ত করুন
  5. আরও নমনীয় স্টপ-লস এবং লাভের ব্যবস্থা গড়ে তোলা
  6. প্যাটার্ন স্বীকৃতির নির্ভুলতা বাড়াতে মেশিন লার্নিং অ্যালগরিদম বাস্তবায়ন করুন

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

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


/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-04 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Double Bottom with Support/Resistance Strategy - Aynet", overlay=true)

// Inputs
lookbackPeriod = input(21, "Lookback Period")
swingLowThreshold = input(1.5, "Swing Low Threshold")
fibLevel1 = input(0.618, "Fibonacci Level 1")
fibLevel3 = input(1.618, "Fibonacci Level 2")
srPeriod = input(21, "Support/Resistance Period") 
srThreshold = input(3, "Support/Resistance Touch Points")

// Support/Resistance Function
get_sr_level(idx) =>
    var level = 0.0
    var count = 0
    
    if bar_index % srPeriod == 0
        highCount = 0
        lowCount = 0
        for i = 0 to srPeriod - 1
            if math.abs(high[i] - high) < (high * 0.001)
                highCount += 1
            if math.abs(low[i] - low) < (low * 0.001)
                lowCount += 1
                
        if highCount >= srThreshold
            level := high
            count := highCount
        if lowCount >= srThreshold
            level := low
            count := lowCount
            
    [level, count]

// Pattern Detection Functions
isSwingLow(src, left, right) =>
    isLow = true
    for i = 0 to left + right
        if src[i] < src[right]
            isLow := false
    isLow

getSpikeSharpness(index) =>
    priceRange = high[index] - low[index]
    bodyRange = math.abs(close[index] - open[index])
    sharpness = priceRange / bodyRange
    sharpness

// Pattern Variables
var float firstBottom = na
var float secondBottom = na
var bool isAdam = false
var bool isEve = false
var float level1Value = na
var float level3Value = na

// Pattern Detection
bottom = isSwingLow(low, lookbackPeriod, lookbackPeriod)
if bottom
    sharpness = getSpikeSharpness(0)
    if na(firstBottom)
        firstBottom := low
        isAdam := sharpness > swingLowThreshold
    else if low <= firstBottom * 1.02 and low >= firstBottom * 0.98
        secondBottom := low
        isEve := sharpness <= swingLowThreshold

// Calculate Fibonacci
if not na(secondBottom)
    highPoint = ta.highest(high, lookbackPeriod)
    fibDistance = highPoint - math.min(firstBottom, secondBottom)
    level1Value := math.min(firstBottom, secondBottom) + fibDistance * fibLevel1
    level3Value := math.min(firstBottom, secondBottom) + fibDistance * fibLevel3

// Get S/R Level
[srLevel, srCount] = get_sr_level(0)

// Trading Logic
longCondition = srLevel > level3Value
shortCondition = srLevel < level1Value

if longCondition
    strategy.entry("Long", strategy.long)

if shortCondition
    strategy.entry("Short", strategy.short)

// Reset Pattern
if high > ta.highest(high[1], lookbackPeriod)
    firstBottom := na
    secondBottom := na
    isAdam := false
    isEve := false
var table logo = table.new(position.top_right, 1, 1)
table.cell(logo, 0, 0, 'Double Bottom with Support/Resistance Strategy - Aynet', text_size=size.large, text_color=color.white)
// Plots
plot(level1Value, "0.236", color=color.rgb(245, 0, 0), style=plot.style_line)
plot(level3Value, "0.618", color=color.rgb(82, 166, 255), style=plot.style_line)
plot(srLevel, "S/R Level", color=color.white)

plotshape(bottom and not na(firstBottom) and na(secondBottom), "Adam Bottom", shape.circle, location.belowbar, color.green)
plotshape(bottom and not na(secondBottom), "Eve Bottom", shape.circle, location.belowbar, color.yellow)

সম্পর্কিত

আরো