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

متحرک حمایت مزاحمت قیمت ایکشن ٹریڈنگ سسٹم

مصنف:چاؤ ژانگ، تاریخ: 2024-12-04 15:19:00
ٹیگز:ایس آرپی اے

img

جائزہ

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

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

اسٹریٹجی کا مرکز قیمت کی نقل و حرکت کی حدود کو قائم کرنے کے لئے متحرک طور پر معاونت اور مزاحمت کی سطحوں کا حساب لگانے میں ہے۔ جب قیمت ان اہم سطحوں کے قریب آتی ہے تو ، سسٹم الٹ سگنل کے طور پر مخصوص موم بتی کے نمونوں کی تلاش کرتا ہے۔ داخلے کی شرائط کے لئے معاونت / مزاحمت کی سطح کے 1.8٪ (ڈیفالٹ حساسیت) کے اندر نمونہ تشکیل کی ضرورت ہوتی ہے۔ سسٹم 16٪ اسٹاپ نقصان اور 9.5٪ منافع کے ساتھ 35 equity ایکویٹی مینجمنٹ اصول کو نافذ کرتا ہے ، جس سے ہر تجارت میں کل ایکویٹی کے تقریبا 5.6٪ پر خطرہ کو مؤثر طریقے سے کنٹرول کیا جاسکتا ہے۔ حکمت عملی مکمل تجارت کے انتظام کی فعالیت اور تصور کے ساتھ پائن اسکرپٹ میں نافذ ہے۔

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

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

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

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

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

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

خلاصہ

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


/*backtest
start: 2024-11-26 00:00:00
end: 2024-12-03 00:00:00
period: 1h
basePeriod: 1h
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=5
strategy("Price Action Strategy", overlay=true)

// Settings
length = input.int(16, title="Support and Resistance Length")
sensitivity = input.float(0.018, title="Sensitivity")

// Stop Loss and Take Profit
stop_loss_pct = input.float(16, title="Stop Loss percentage", minval=0.1) / 100
take_profit_pct = input.float(9.5, title="Take Profit percentage", minval=0.1) / 100

// Function to identify a Hammer
isHammer() =>
    body = close - open
    price_range = high - low
    lower_shadow = open - low
    upper_shadow = high - close
    body > 0 and lower_shadow > body * 2 and upper_shadow < body * 0.5 and price_range > 0

// Function to identify a Shooting Star
isShootingStar() =>
    body = open - close
    price_range = high - low
    lower_shadow = close - low
    upper_shadow = high - open
    body > 0 and upper_shadow > body * 2 and lower_shadow < body * 0.5 and price_range > 0

// Function to identify a Doji
isDoji() =>
    body = close - open
    price_range = high - low
    math.abs(body) < (price_range * 0.1)  // Doji has a small body

// Function to identify a Pin Bar
isPinBar() =>
    body = close - open
    price_range = high - low
    lower_shadow = open - low
    upper_shadow = high - close
    (upper_shadow > body * 2 and lower_shadow < body * 0.5) or (lower_shadow > body * 2 and upper_shadow < body * 0.5)

// Support and resistance levels 
support = ta.lowest(low, length)
resistance = ta.highest(high, length)

// Entry criteria
long_condition = (isHammer() or isDoji() or isPinBar()) and close <= support * (1 + sensitivity)
short_condition = (isShootingStar() or isDoji() or isPinBar()) and close >= resistance * (1 - sensitivity)

// Function to calculate stop loss and take profit (long)
calculate_levels(position_size, avg_price, stop_loss_pct, take_profit_pct) =>
    stop_loss_level = avg_price * (1 - stop_loss_pct)
    take_profit_level = avg_price * (1 + take_profit_pct)
    [stop_loss_level, take_profit_level]

// Function to calculate stop loss and take profit (short)
calculate_levels_short(position_size, avg_price, stop_loss_pct, take_profit_pct) =>
    stop_loss_level = avg_price * (1 + stop_loss_pct)
    take_profit_level = avg_price * (1 - take_profit_pct)
    [stop_loss_level, take_profit_level]

// Buy entry order with label
if (long_condition and strategy.opentrades == 0)
    strategy.entry("Buy", strategy.long)
    pattern = isHammer() ? "Hammer" : isDoji() ? "Doji" : isPinBar() ? "Pin Bar" : ""
    label.new(x=bar_index, y=low, text=pattern, color=color.green, textcolor=color.black, size=size.small)

// Sell entry order with label
if (short_condition and strategy.opentrades == 0)
    strategy.entry("Sell", strategy.short)
    pattern = isShootingStar() ? "Shooting Star" : isDoji() ? "Doji" : isPinBar() ? "Pin Bar" : ""
    label.new(x=bar_index, y=high, text=pattern, color=color.red, textcolor=color.black, size=size.small)

// Stop Loss and Take Profit management for open positions
if (strategy.opentrades > 0)
    if (strategy.position_size > 0)  // Long position
        avg_price_long = strategy.position_avg_price  // Average price of long position
        [long_stop_level, long_take_profit_level] = calculate_levels(strategy.position_size, avg_price_long, stop_loss_pct, take_profit_pct)
        strategy.exit("Exit Long", from_entry="Buy", stop=long_stop_level, limit=long_take_profit_level)
    if (strategy.position_size < 0)  // Short position
        avg_price_short = strategy.position_avg_price  // Average price of short position
        [short_stop_level, short_take_profit_level] = calculate_levels_short(strategy.position_size, avg_price_short, stop_loss_pct, take_profit_pct)
        strategy.exit("Exit Short", from_entry="Sell", stop=short_stop_level, limit=short_take_profit_level)

// Visualization of Support and Resistance Levels
plot(support, title="Support", color=color.green, linewidth=2)
plot(resistance, title="Resistance", color=color.red, linewidth=2)






متعلقہ

مزید