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

اسکیل ایبلٹی کے ساتھ بریک آؤٹ ٹریڈنگ کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-10-30 17:25:17
ٹیگز:

img

جائزہ

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

یہ کیسے کام کرتا ہے

اسٹریٹیجی میں سب سے پہلےswings()لوک بیک مدت کی بنیاد پر سوئنگ اونچائیوں اور اونچائیوں کا حساب لگانے کے لئے فنکشن۔swingLookbackپیرامیٹر ، ڈیفالٹ 20 بار پر۔ جب قیمت سوئنگ ہائی سے اوپر ٹوٹ جاتی ہے تو لانگ سگنل ٹرگر ہوتے ہیں ، اور جب قیمت سوئنگ لو سے نیچے ٹوٹ جاتی ہے تو شارٹ سگنل ٹرگر ہوتے ہیں۔

خاص طور پر ، جب بند ہونے والی قیمت سوئنگ ہائی قیمت سے زیادہ یا مساوی ہوتی ہے تو ایک طویل سگنل متحرک ہوتا ہے۔ جب بند ہونے والی قیمت سوئنگ کم قیمت سے کم یا مساوی ہوتی ہے تو ایک مختصر سگنل متحرک ہوتا ہے۔

اسٹریٹیجی میں اسٹیپ ٹارگٹ بھی طے کیا گیا ہے جوstopTargetPercentاسٹاپ نقصان کی سطح کی وضاحت کرنے کے لئے پیرامیٹر۔ مثال کے طور پر ، لانگ اسٹاپ نقصان کو سوئنگ ہائی سے 5٪ نیچے اور مختصر اسٹاپ نقصان کو سوئنگ کم سے 5٪ اوپر مقرر کیا جاسکتا ہے۔

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

فوائد

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

خطرات اور تخفیف

  • بہت مختصر نظرثانی کی مدت سے زیادہ تجارت ہوسکتی ہے
  • بہت لمبی نظرثانی کی مدت تجارتی مواقع سے محروم ہوسکتی ہے
  • سٹاپ نقصان بہت وسیع منافع کی صلاحیت کو کم کرتا ہے
  • سٹاپ نقصان بہت تنگ اکثر بند ہو سکتا ہے

تخفیف:

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

بہتر مواقع

اس حکمت عملی کو کئی طریقوں سے بہتر بنایا جاسکتا ہے:

  1. زیادہ سے زیادہ پیرامیٹرز تلاش کرنے کے لئے مختلف نظرثانی کی مدت کے اقدار کی جانچ کریں.

  2. بہترین ٹائم فریم کا تعین کرنے کے لئے مختلف ٹائم فریم جیسے 5m، 15m، 1h کا تجربہ کریں۔

  3. منافع کی صلاحیت اور خطرے کے انتظام کے درمیان توازن قائم کرنے کے لیے اسٹاپ نقصان کا فیصد بہتر بنائیں۔

  4. کم سیٹ اپ کو کم کرنے کے لیے حجم، اتار چڑھاؤ جیسے فلٹرز شامل کریں۔

  5. مزید رسک مینجمنٹ میکانزم شامل کریں جیسے ٹریلنگ اسٹاپ، منافع لینے.

  6. پیرامیٹر کی اصلاح واک فارورڈ تجزیہ اور مشین لرننگ کے ذریعے۔

  7. پیرامیٹرز کی خودکار اصلاح کے لئے اے آئی / مشین لرننگ متعارف کروانا۔

نتیجہ

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


/*backtest
start: 2023-09-29 00:00:00
end: 2023-10-29 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © deperp

//@version=5
// strategy("Range Breaker", overlay=true, initial_capital=100000, default_qty_type=strategy.percent_of_equity, default_qty_value=10, commission_type=strategy.commission.percent, commission_value=0.07, pyramiding=0)

// Backtest Time Period

useDateFilter = input.bool(true, title="Begin Backtest at Start Date",
     group="Backtest Time Period")
backtestStartDate = input(timestamp("1 Jan 2020"), 
     title="Start Date", group="Backtest Time Period",
     tooltip="This start date is in the time zone of the exchange " + 
     "where the chart's instrument trades. It doesn't use the time " + 
     "zone of the chart or of your computer.")

inTradeWindow = true

swingLookback = input.int(20, title="Swing Lookback", minval=3)
stopTargetPercent = input.float(5, title="Stop Target Percentage", step=0.1)

// Calculate lockback swings
swings(len) =>
    var highIndex = bar_index
    var lowIndex = bar_index
    var swingHigh = float(na)
    var swingLow = float(na)
    
    upper = ta.highest(len)
    lower = ta.lowest(len)
    
    if high[len] > upper
        highIndex := bar_index[len]
        swingHigh := high[len]

    if low[len] < lower
        lowIndex := bar_index[len]
        swingLow := low[len]

    [swingHigh, swingLow, highIndex, lowIndex]


// Strategy logic
[swingHigh, swingLow, highIndex, lowIndex] = swings(swingLookback)
longCondition = inTradeWindow and (ta.crossover(close, swingHigh))
shortCondition = inTradeWindow and (ta.crossunder(close, swingLow))

if longCondition
    strategy.entry("Long", strategy.long)
if shortCondition
    strategy.entry("Short", strategy.short)

longStopTarget = close * (1 + stopTargetPercent / 100)
shortStopTarget = close * (1 - stopTargetPercent / 100)

strategy.exit("Long Stop Target", "Long", limit=longStopTarget)
strategy.exit("Short Stop Target", "Short", limit=shortStopTarget)

// Plot break lines
// line.new(x1=highIndex, y1=swingHigh, x2=bar_index, y2=swingHigh, color=color.rgb(255, 82, 82, 48), width=3, xloc=xloc.bar_index, extend=extend.right)
// line.new(x1=lowIndex, y1=swingLow, x2=bar_index, y2=swingLow, color=color.rgb(76, 175, 79, 47), width=3, xloc=xloc.bar_index, extend=extend.right)


// Alert conditions for entry and exit
longEntryCondition = inTradeWindow and (ta.crossover(close, swingHigh))
shortEntryCondition = inTradeWindow and (ta.crossunder(close, swingLow))

longExitCondition = close >= longStopTarget
shortExitCondition = close <= shortStopTarget

alertcondition(longEntryCondition, title="Long Entry Alert", message="Enter Long Position")
alertcondition(shortEntryCondition, title="Short Entry Alert", message="Enter Short Position")
alertcondition(longExitCondition, title="Long Exit Alert", message="Exit Long Position")
alertcondition(shortExitCondition, title="Short Exit Alert", message="Exit Short Position")

مزید