یہ ایک جامع تجارتی حکمت عملی کا نظام ہے جو متعدد تکنیکی تجزیہ پیٹرن کی شناخت کو سپورٹ اور مزاحمت کی سطحوں کے ساتھ جوڑتا ہے۔ یہ حکمت عملی بنیادی طور پر ڈبل نیچے کے نمونوں (آدم اور حوا کی تہوں) کی نشاندہی کرکے ، فبونیکی ریٹریکشن کی سطحوں کو مربوط کرکے ، اور تجارتی فیصلوں کے لئے سپورٹ اور مزاحمت کی لائنوں کا استعمال کرکے کام کرتی ہے۔ بنیادی طاقت اس کی کثیر جہتی تکنیکی اشارے کی تصدیق میں پڑتی ہے ، جو خطرہ کنٹرول کے لئے اہم حوالہ جات کے طور پر سپورٹ اور مزاحمت کی سطحوں کا استعمال کرتے ہوئے تجارتی سگنلز کی وشوسنییتا کو بڑھا دیتی ہے۔
اس حکمت عملی میں تجارتی فیصلوں کے لئے ایک ٹرپل تصدیق کا طریقہ کار استعمال کیا جاتا ہے۔ سب سے پہلے ، یہ مخصوص الگورتھم کے ذریعہ ڈبل نیچے کے نمونوں کی نشاندہی کرتا ہے ، جس میں تیز
یہ حکمت عملی نمونہ کی شناخت ، فبونیکی کی سطح ، اور سپورٹ / مزاحمت لائنوں سمیت متعدد تکنیکی تجزیہ کے طریقوں کا جامع استعمال کرکے نسبتا 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)