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

متحرک سپورٹ اور مزاحمت موافقت پذیر محور ٹریڈنگ حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2025-01-10 15:08:24
ٹیگز:اے ٹی آرمحور

 Dynamic Support and Resistance Adaptive Pivot Trading Strategy

جائزہ

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

حکمت عملی کے اصول

بنیادی منطق کئی اہم عناصر پر مبنی ہے: 1. متحرک محور حساب: مقامی اونچائیوں اور نچلی سطحوں کی نشاندہی کرنے کے لئے سایڈست محور لمبائی پیرامیٹر (ڈیفالٹ 2) کا استعمال کرتا ہے معاونت / مزاحمت کے زون: درست تجارتی علاقوں کی وضاحت کے لئے محور پوائنٹس کے ارد گرد فیصد پر مبنی حدود (ڈیفالٹ 0.4٪) قائم کرتا ہے سگنل جنریشن: جب قیمت سپورٹ سے اوپر ٹوٹ جاتی ہے تو طویل سگنل ، جب قیمت مزاحمت سے نیچے ٹوٹ جاتی ہے تو مختصر سگنل 4۔ رسک مینجمنٹ: اکاؤنٹ کے ایکویٹی پر مبنی پوزیشن سائزنگ کے ساتھ متحرک اسٹاپ نقصان (10٪) اور منافع لینے (27٪) کی سطحوں کو نافذ کرتا ہے

حکمت عملی کے فوائد

  1. اعلی ملائمیت: متحرک طور پر مارکیٹ کے حالات کی بنیاد پر سپورٹ / مزاحمت کی سطح کو ایڈجسٹ کرتا ہے ، جامد سطحوں سے تاخیر سے بچتا ہے
  2. کنٹرول شدہ خطرہ: سخت فیصد پر مبنی رکاوٹوں اور متحرک پوزیشن سائزنگ کے ذریعے فی تجارت معقول خطرہ برقرار رکھتا ہے۔
  3. توسیع پذیری: مختلف مارکیٹ کے ماحول میں اصلاح کے لئے متعدد ٹائم فریم اور پیرامیٹر کے مجموعوں کی حمایت کرتا ہے
  4. شفافیت: تمام سگنل اور قیمت کی سطح چارٹوں پر بصری طور پر دکھائے جانے کے ساتھ واضح ٹریڈنگ منطق

حکمت عملی کے خطرات

  1. جھوٹا بریک آؤٹ کا خطرہ: مختلف مارکیٹوں میں اکثر جھوٹے سگنل پیدا کر سکتا ہے، جس کے لئے سپورٹ / مزاحمت زون پیرامیٹرز کو ایڈجسٹ کرنے کی ضرورت ہوتی ہے
  2. سلائیپج اثر: کم لچکدار مارکیٹ کے حالات میں اصل عملدرآمد کی قیمتیں سگنل کی قیمتوں سے نمایاں طور پر مختلف ہوسکتی ہیں۔
  3. رجحان انحصار: حکمت عملی رجحان مارکیٹوں میں بہتر کارکردگی کا مظاہرہ کرتی ہے لیکن استحکام کے مراحل کے دوران زیادہ سگنل پیدا کر سکتی ہے
  4. پیرامیٹر کی حساسیت: کارکردگی پیرامیٹر کی ترتیبات پر بہت منحصر ہے، اصلاح کے لئے مکمل بیک ٹسٹنگ کی ضرورت ہے

اصلاح کی ہدایات

  1. اتار چڑھاؤ کی بنیاد پر پیرامیٹرز کی خودکار ایڈجسٹمنٹ کے لئے مارکیٹ ماحول کی پہچان ماڈیول شامل کریں
  2. حجم اور اضافی تکنیکی اشارے کو تصدیق کے اشارے کے طور پر شامل کریں
  3. مارکیٹ کی اتار چڑھاؤ کی بنیاد پر متحرک ایڈجسٹمنٹ کے ساتھ پوزیشن سائزنگ الگورتھم کو بہتر بنائیں
  4. ناقص ادوار کے دوران تجارت سے بچنے کے لئے ٹائم فلٹرز کو نافذ کریں
  5. مارکیٹ کی اتار چڑھاؤ کی بنیاد پر متحرک ایڈجسٹمنٹ کے ساتھ موافقت پذیر اسٹاپ نقصان الگورتھم تیار کریں

خلاصہ

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


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

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © felipemiransan

//@version=6
strategy("Dynamic Support and Resistance Pivot Strategy ", overlay=true)

// Strategy parameters
pivot_length = input.int(2, title="Pivot Length", tooltip="Pivot size to identify peaks and troughs")
support_resistance_distance = input.float(0.4, title="Support/Resistance Distance %", tooltip="Distance to consider a support or resistance level in %")

// Stop Loss and Take Profit parameters
stop_loss_pct = input.float(10.0, title="Stop Loss %", tooltip="Stop loss percentage", minval=0.1) / 100
take_profit_pct = input.float(26.0, title="Take Profit %", tooltip="Take profit percentage", minval=0.1) / 100

// Functions to identify high and low pivots
pivot_high = ta.pivothigh(high, pivot_length, pivot_length)
pivot_low = ta.pivotlow(low, pivot_length, pivot_length)

// Storing support and resistance levels
var float resistance_level = na
var float support_level = na
var float last_pivot_high = na
var float last_pivot_low = na

// Updating support and resistance based on pivots
if (not na(pivot_high))
    resistance_level := high[pivot_length]
    last_pivot_high := high[pivot_length]

if (not na(pivot_low))
    support_level := low[pivot_length]
    last_pivot_low := low[pivot_length]

// Function to check if the current price is near a support or resistance level
is_near_resistance = (not na(resistance_level)) and (close >= resistance_level * (1 - support_resistance_distance / 100)) and (close <= resistance_level * (1 + support_resistance_distance / 100))
is_near_support = (not na(support_level)) and (close >= support_level * (1 - support_resistance_distance / 100)) and (close <= support_level * (1 + support_resistance_distance / 100))

// Cross conditions variables
long_cross = ta.crossover(close, support_level) and not na(support_level)
short_cross = ta.crossunder(close, resistance_level) and not na(resistance_level)

// Entry conditions
long_condition = is_near_support and long_cross  // Buy when crossing support from below
short_condition = is_near_resistance and short_cross  // Sell when crossing resistance from above

// Order execution
if (long_condition)
    strategy.entry("Long", strategy.long)

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

// Stop Loss and Take Profit
if (strategy.opentrades > 0)
    if (strategy.position_size > 0)  // For long position
        avg_price_long = strategy.position_avg_price
        long_stop_level = avg_price_long * (1 - stop_loss_pct)
        long_take_profit_level = avg_price_long * (1 + take_profit_pct)
        strategy.exit("Exit Long", from_entry="Long", stop=long_stop_level, limit=long_take_profit_level)

    if (strategy.position_size < 0)  // For short position
        avg_price_short = strategy.position_avg_price
        short_stop_level = avg_price_short * (1 + stop_loss_pct)
        short_take_profit_level = avg_price_short * (1 - take_profit_pct)
        strategy.exit("Exit Short", from_entry="Short", stop=short_stop_level, limit=short_take_profit_level)

// Plotting support and resistance levels on the chart
plot(support_level, title="Support", color=color.green, linewidth=2, style=plot.style_line)
plot(resistance_level, title="Resistance", color=color.red, linewidth=2, style=plot.style_line)

// Adding labels to show pivot values
if (long_condition and not na(support_level))
    label.new(bar_index, low[pivot_length], str.tostring(low[pivot_length]), style=label.style_label_up, color=color.green, textcolor=color.white, size=size.small)

if (short_condition and not na(resistance_level))
    label.new(bar_index, high[pivot_length], str.tostring(high[pivot_length]), style=label.style_label_down, color=color.red, textcolor=color.white, size=size.small)


متعلقہ

مزید