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

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

مصنف:چاؤ ژانگ، تاریخ: 2024-01-29 11:51:08
ٹیگز:

img

جائزہ

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

حکمت عملی منطق

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

داخلہ اور باہر نکلنے کی مدت کی لمبائی کو آزادانہ طور پر تشکیل دیا جاسکتا ہے۔ جب قیمت نیچے کی ریل کو اوپر کی طرف توڑتی ہے تو ، یہ لمبی ہوتی ہے۔ جب قیمت اوپر کی ریل کو نیچے کی طرف توڑتی ہے تو ، یہ مختصر ہوجاتی ہے۔ باہر نکلنے کا نقطہ تب ہوتا ہے جب قیمت اسی ریل کو دوبارہ چھوتی ہے۔ درمیانی ریل کو اسٹاپ نقصان لائن کے طور پر بھی استعمال کیا جاسکتا ہے۔

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

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

فوائد کا تجزیہ

اس حکمت عملی کے فوائد میں شامل ہیں:

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

خطرے کا تجزیہ

اس حکمت عملی کے خطرات میں شامل ہیں:

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

مندرجہ بالا خطرات کو کم کرنے کے لئے:

  1. مجموعی خطرہ کو کنٹرول کرنے کے لیے پوزیشنوں کا مناسب سائز بنائیں اور اثاثوں میں تنوع پیدا کریں۔
  2. بہترین مجموعہ تلاش کرنے کے لئے پیرامیٹرز کو بہتر بنائیں، ممکنہ طور پر مشین سیکھنے کا استعمال کرتے ہوئے.
  3. سگنل کی وشوسنییتا کا تعین کرنے کے لیے اضافی اشارے شامل کریں۔

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

اس حکمت عملی کو مندرجہ ذیل جہتوں میں مزید بہتر بنایا جاسکتا ہے:

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

نتیجہ

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


/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 4h
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/
// © algotradingcc
// Strategy testing and optimisation for free trading bot 

//@version=4
strategy("Donchian Channel Strategy [for free bot]", overlay=true )

//Long optopns
buyPeriodEnter = input(10, "Channel Period for Long enter position")
buyPeriodExit = input(10, "Channel Period for Long exit position")
isMiddleBuy = input(true, "Is exit on Base Line? If 'no' - exit on bottom line")
takeProfitBuy = input(2.5, "Take Profit (%) for Long position")
isBuy = input(true, "Allow Long?")

//Short Options
sellPeriodEnter = input(20, "Channel Period for Short enter position")
sellPeriodExit = input(20, "Channel Period for Short exit position")
isMiddleSell = input(true, "Is exit on Base Line? If 'no' - exit on upper line")
takeProfitSell = input(2.5, "Take Profit (%) for Short position")
isSell = input(true, "Allow Short?")

// Test Start
startYear = input(2005, "Test Start Year")
startMonth = input(1, "Test Start Month")
startDay = input(1, "Test Start Day")
startTest = timestamp(startYear,startMonth,startDay,0,0)

//Test End
endYear = input(2050, "Test End Year")
endMonth = input(12, "Test End Month")
endDay = input(30, "Test End Day")
endTest = timestamp(endYear,endMonth,endDay,23,59)

timeRange = time > startTest and time < endTest ? true : false

// Long&Short Levels
BuyEnter = highest(buyPeriodEnter)
BuyExit = isMiddleBuy ? ((highest(buyPeriodExit) + lowest(buyPeriodExit)) / 2): lowest(buyPeriodExit)

SellEnter = lowest(sellPeriodEnter)
SellExit = isMiddleSell ? ((highest(sellPeriodExit) + lowest(sellPeriodExit)) / 2): highest(sellPeriodExit)

// Plot Data
plot(BuyEnter, style=plot.style_line, linewidth=2, color=color.blue, title="Buy Enter")
plot(BuyExit, style=plot.style_line, linewidth=1, color=color.blue, title="Buy Exit", transp=50)
plot(SellEnter, style=plot.style_line, linewidth=2, color=color.red, title="Sell Enter")
plot(SellExit, style=plot.style_line, linewidth=1, color=color.red, title="Sell Exit", transp=50)

// Calc Take Profits
TakeProfitBuy = 0.0
TakeProfitSell = 0.0
if strategy.position_size > 0
    TakeProfitBuy := strategy.position_avg_price*(1 + takeProfitBuy/100)
    
if strategy.position_size < 0
    TakeProfitSell := strategy.position_avg_price*(1 - takeProfitSell/100)

// Long Position    
if isBuy and timeRange
    strategy.entry("Long", strategy.long, stop = BuyEnter, when = strategy.position_size == 0) 
    
strategy.exit("Long Exit", "Long", stop=BuyExit, limit = TakeProfitBuy, when = strategy.position_size > 0)

// Short Position
if isSell and timeRange
    strategy.entry("Short", strategy.short, stop = SellEnter, when = strategy.position_size == 0) 
    
strategy.exit("Short Exit", "Short", stop=SellExit, limit = TakeProfitSell, when = strategy.position_size < 0)

// Close & Cancel when over End of the Test
if time > endTest
    strategy.close_all()
    strategy.cancel_all()


مزید