یہ ڈونچیئن چینل اشارے پر مبنی رجحان کی پیروی کرنے والی حکمت عملی ہے ، جو منافع میں مقفل کرنے کے لئے اے ٹی آر اشارے پر مبنی متحرک اسٹاپ نقصان کے ساتھ مل کر ہے۔ یہ رجحان کی پیروی کرنے والی حکمت عملی کی قسم سے تعلق رکھتا ہے۔
یہ حکمت عملی 20 پیریڈ ڈونچیان چینل کا استعمال کرتی ہے ، جہاں چینل کی وسط لائن سب سے زیادہ اونچائی اور سب سے کم کم کی اوسط ہے۔ جب قیمت چینل کی وسط لائن سے تجاوز کرتی ہے تو یہ طویل ہوجاتی ہے اور جب قیمت وسط لائن سے نیچے گزرتی ہے تو مختصر ہوجاتی ہے۔ باہر نکلنے کا اصول اس وقت ہوتا ہے جب قیمت متحرک اسٹاپ نقصان لائن کو چھوتی ہے ، جس کا حساب حالیہ 3 باروں میں سے کم ترین کم سے کم ایک تہائی کے طور پر کیا جاتا ہے طویل پوزیشنوں کے لئے اے ٹی آر ویلیو ، اور حالیہ 3 باروں میں سے سب سے زیادہ اعلی جمع مختصر پوزیشنوں کے لئے اے ٹی آر ویلیو کا ایک تہائی۔
اس حکمت عملی کے اہم فوائد یہ ہیں:
اس حکمت عملی کے اہم خطرات میں شامل ہیں:
اس حکمت عملی کے لئے کچھ اصلاحاتی ہدایات:
خلاصہ میں ، یہ ایک آسان اور عملی رجحان کی پیروی کرنے والی حکمت عملی ہے۔ یہ ڈونچیان چینل کے ذریعے رجحان کی سمت کی نشاندہی کرتا ہے اور متحرک ٹریلنگ اسٹاپ نقصان کے ساتھ منافع میں تالے لگاتا ہے ، جو رجحانات کی مؤثر طریقے سے پیروی کرسکتا ہے۔ حکمت عملی استعمال کرنے میں کافی عملی ہے ، لیکن زیادہ پیچیدہ مارکیٹ کے ماحول میں بہتر کارکردگی کے ل various مختلف طریقوں سے مزید بہتر بنایا جاسکتا ہے۔
/*backtest start: 2023-11-29 00:00:00 end: 2023-12-06 00:00:00 period: 30m basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy(title = "dc", overlay = true) atrLength = input(title="ATR Length:", defval=20, minval=1) testStartYear = input(2017, "Backtest Start Year") testStartMonth = input(1, "Backtest Start Month") testStartDay = input(1, "Backtest Start Day") testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0) testEndYear = input(2018, "Backtest Start Year") testEndMonth = input(12) testEndDay = input(31, "Backtest Start Day") testPeriodEnd = timestamp(testEndYear,testEndMonth,testEndDay,0,0) testPeriod() => true //time >= testPeriodStart ? true : false dcPeriod = input(20, "Period") dcUpper = highest(close, dcPeriod)[1] dcLower = lowest(close, dcPeriod)[1] dcAverage = (dcUpper + dcLower) / 2 atrValue=atr(atrLength) useTakeProfit = na useStopLoss = na useTrailStop = na useTrailOffset = na //@version=1 Buy_stop = lowest(low[1],3) - atr(20)[1] / 3 plot(Buy_stop, color=red, title="buy_stoploss") Sell_stop = highest(high[1],3) + atr(20)[1] / 3 plot(Sell_stop, color=green, title="sell_stoploss") plot(dcLower, style=line, linewidth=3, color=red, offset=1) plot(dcUpper, style=line, linewidth=3, color=aqua, offset=1) plot(dcAverage, color=black, style=line, linewidth=3, title="Mid-Line Average") strategy.entry("simpleBuy", strategy.long, when=(close > dcAverage) and cross(close,dcAverage)) strategy.close("simpleBuy",when= ( close< Buy_stop)) strategy.entry("simpleSell", strategy.short,when=(close < dcAverage) and cross(close,dcAverage) ) strategy.close("simpleSell",when=( close > Sell_stop)) //strategy.exit("Exit simpleBuy", from_entry = "simpleBuy", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset) //strategy.exit("Exit simpleSell", from_entry = "simpleSell", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset)