ڈونچین بریک آؤٹ ٹریڈنگ کی حکمت عملی


تخلیق کی تاریخ: 2024-04-29 14:56:35 آخر میں ترمیم کریں: 2024-04-29 14:56:35
کاپی: 0 کلکس کی تعداد: 701
1
پر توجہ دیں
1617
پیروکار

ڈونچین بریک آؤٹ ٹریڈنگ کی حکمت عملی

جائزہ

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

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

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

اسٹریٹجک فوائد

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

اسٹریٹجک رسک

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

حکمت عملی کی اصلاح کی سمت

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

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-04-23 00:00:00
end: 2024-04-28 00:00:00
period: 1d
basePeriod: 1h
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/
// © Dillon_Grech
//---------------------------------------------//

//---------------------------------------------//
// Simple donchian channel break out strategy
// which only enters trades when price closes
// above donchian upper and creates new high 
// (long) or price closes below donchian lower
// and creates new low, relative to the donchian
// length. This is indicated by the donchian
// upper and lower color (blue). Stop loss is
// located at donchian basis and take profit
// is set at Risk Reward (RR) profit target.
//---------------------------------------------//
//@version=5
strategy("Donchian New High/Low Strategy [Dillon Grech]", overlay=true)

//---------------------------------------------//

//---------------------------------------------//
//INDICATOR 1 - Donchian New High Low Price Close
don_length = input.int(20, minval = 1)
don_lower  = ta.lowest(don_length)
don_upper  = ta.highest(don_length)
don_basis  = math.avg(don_upper, don_lower)

//loop
don_lower_upper  = true
don_higher_lower = true
for i = 0 to don_length - 1
    //Check for higher high over don_length
    if don_upper > don_upper[i]
        don_lower_upper := false
    //Check for lower low over don_length
    if don_lower < don_lower[i]
        don_higher_lower := false

//Plot
c_ora = color.orange
c_blu = color.blue
c_gra = color.gray
color_basis = c_ora
color_upper = don_lower_upper  ? c_blu : c_gra
color_lower = don_higher_lower ? c_blu : c_gra
plot(don_basis,     "Don Basis", color_basis, 2)
u = plot(don_upper, "Don Upper", color_upper, 2)
l = plot(don_lower, "Don Lower", color_lower, 2)

//Conditions
Ind_1_L = ta.crossover(close, don_upper[1]) and 
   don_lower_upper[1]
Ind_1_S = ta.crossunder(close,don_lower[1]) and 
   don_higher_lower[1]
//---------------------------------------------//

//---------------------------------------------//
//ENTRY CONDITIONS
entry_long  = strategy.position_size<=0 and
   Ind_1_L
entry_short = strategy.position_size>=0 and
   Ind_1_S

if(entry_long)
    strategy.entry("Long Entry", strategy.long)
if(entry_short)
    strategy.entry("Short Entry", strategy.short)
//---------------------------------------------/

//---------------------------------------------//
//TAKE PROFIT AND STOP LOSS CONDITIONS
profit_RR = input.float(5.0,"RR Profit Target")

//Store Price on new entry signal
entry_price = strategy.opentrades.entry_price(
   strategy.opentrades-1)

//Store Donchain Channel Basis
entry_don_basis = float(0.0)
if entry_long or entry_short
    entry_don_basis := don_basis
else
    entry_don_basis := entry_don_basis[1]

//Get stop loss distance
stop_distance = math.abs(entry_price -
   entry_don_basis)
stop_L   = entry_price - stop_distance
profit_L = entry_price + stop_distance*profit_RR
stop_S   = entry_price + stop_distance
profit_S = entry_price - stop_distance*profit_RR

//Plot TP and SL
plot(entry_long or entry_short ? na :
   strategy.position_size > 0 ? profit_L : na,
   color=color.lime, style=plot.style_linebr,
   linewidth=2)
plot(entry_long or entry_short ? na :
   strategy.position_size > 0 ? stop_L : na,
   color=color.red,  style=plot.style_linebr,
   linewidth=2)
plot(entry_long or entry_short ? na : 
   strategy.position_size < 0 ? profit_S : na,
   color=color.lime, style=plot.style_linebr,
   linewidth=2)
plot(entry_long or entry_short ? na :
   strategy.position_size < 0 ? stop_S : na,
   color=color.red,  style=plot.style_linebr,
   linewidth=2)

//Exit long trades
strategy.exit(id = 'Exit Long', 
   from_entry ='Long Entry', 
   stop = stop_L, limit = profit_L)
strategy.exit(id = 'Exit Short', 
   from_entry ='Short Entry', 
   stop = stop_S, limit = profit_S)
//---------------------------------------------//