وسائل لوڈ ہو رہے ہیں... لوڈنگ...

ملٹی پیٹرن کی شناخت اور ایس آر لیول ٹریڈنگ کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 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. پیٹرن کی شناخت کی درستگی کو بڑھانے کے لئے مشین لرننگ الگورتھم کو لاگو کریں

خلاصہ

یہ حکمت عملی نمونہ کی شناخت ، فبونیکی کی سطح ، اور سپورٹ / مزاحمت لائنوں سمیت متعدد تکنیکی تجزیہ کے طریقوں کا جامع استعمال کرکے نسبتا complete مکمل تجارتی نظام تیار کرتی ہے۔ اس کی طاقت متعدد توثیقی میکانزم کے ذریعہ فراہم کردہ اعلی وشوسنییتا میں ہے ، جبکہ اس کی ایڈجسٹ ایبلٹی مختلف مارکیٹ کے حالات میں موافقت کی اجازت دیتی ہے۔ اگرچہ کچھ موروثی خطرات موجود ہیں ، لیکن مسلسل اصلاح اور بہتری کے ذریعے ، حکمت عملی حقیقی تجارت میں مستحکم کارکردگی کا وعدہ کرتی ہے۔ اضافی تکنیکی اشارے اور اصلاح کے الگورتھم کو شامل کرکے ، کارکردگی کو بڑھانے کے لئے کافی گنجائش ہے۔


/*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)

متعلقہ

مزید