
یہ حکمت عملی ایک صرف زیادہ کرنے والی حکمت عملی ہے جو ATR چینل کی نچلی حد کو توڑنے کی قیمت کا استعمال کرتے ہوئے داخلے کا وقت طے کرتی ہے ، اور ATR چینل کی اوسط لائن یا ATR چینل کی اوپری حد کو روکنے کے لئے باہر نکلتی ہے۔ اس کے علاوہ ، یہ ATR کو روکنے کی قیمت کا حساب لگانے کے لئے بھی استعمال کرتی ہے۔ یہ حکمت عملی تیز رفتار مختصر لائن تجارت کے لئے موزوں ہے۔
جب قیمت ATR چینل کی نچلی حد سے نیچے آجاتی ہے تو ، اس سے ظاہر ہوتا ہے کہ قیمت میں غیر معمولی کمی واقع ہوئی ہے۔ اس وقت حکمت عملی اگلے K لائن کے کھلنے پر زیادہ داخلہ لے گی۔ اسٹاپ نقصان کی قیمت میں داخلہ کی قیمت کو ATR اسٹاپ نقصان کے فیکٹر کو ATR سے ضرب کرنا ہے۔ اسٹاپ قیمت ATR چینل کی اوسط لائن یا ATR چینل کی حد ہے ، اگر موجودہ K لائن بند ہونے والی قیمت پچھلی K لائن کی کم سے کم قیمت سے کم ہے تو ، پچھلی K لائن کی کم سے کم قیمت اسٹاپ قیمت کے طور پر ہے۔
اس حکمت عملی میں بنیادی طور پر مندرجہ ذیل منطق شامل ہے:
یہ حکمت عملی مندرجہ ذیل فوائد رکھتی ہے:
اس حکمت عملی کے کچھ خطرات بھی ہیں:
اے ٹی آر سائیکل کو ایڈجسٹ کرنے ، اسٹاپ نقصان کے عنصر کو کم کرنے اور اس طرح کے طریقوں سے مذکورہ بالا خطرات کو کم کیا جاسکتا ہے۔ اس کے علاوہ ، یہ بھی ضروری ہے کہ کم ٹرانزیکشن فیس والے بروکرز کا انتخاب کریں۔
اس حکمت عملی کو مندرجہ ذیل طریقوں سے بھی بہتر بنایا جاسکتا ہے:
یہ حکمت عملی مجموعی طور پر ایک سادہ اور عملی مختصر لائن توڑ اوسط لائن الٹ حکمت عملی ہے۔ اس میں واضح داخلے کے قواعد ، سخت اسٹاپ نقصان کا طریقہ کار اور ایک بہتر اسٹاپ کا طریقہ ہے۔ اس کے ساتھ ہی کچھ پیرامیٹرز کو ایڈجسٹ کرنے کے لئے بہتر جگہ بھی فراہم کی گئی ہے۔ اگر تاجر مناسب پیراگراف کا انتخاب کرنے اور خطرے کو کنٹرول کرنے کے لئے اسٹاپ نقصان کے ساتھ کام کرنے کے قابل ہو تو ، اس حکمت عملی کو اچھا اثر ملنا چاہئے۔
/*backtest
start: 2022-12-04 00:00:00
end: 2023-12-10 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/
// © Bcullen175
//@version=5
strategy("ATR Mean Reversion", overlay=true, initial_capital=100000,default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=6E-5) // Brokers rate (ICmarkets = 6E-5)
SLx = input(1.5, "SL Multiplier", tooltip = "Multiplies ATR to widen stop on volatile assests, Higher values reduce risk:reward but increase winrate, Values below 1.2 are not reccomended")
src = input(close, title="Source")
period = input.int(10, "ATR & MA PERIOD")
plot(open+ta.atr(period))
plot(open-ta.atr(period))
plot((ta.ema(src, period)), title = "Mean", color=color.white)
i_startTime = input(title="Start Filter", defval=timestamp("01 Jan 1995 13:30 +0000"), group="Time Filter", tooltip="Start date & time to begin searching for setups")
i_endTime = input(title="End Filter", defval=timestamp("1 Jan 2099 19:30 +0000"), group="Time Filter", tooltip="End date & time to stop searching for setups")
// Check filter(s)
f_dateFilter = true
atr = ta.atr(period)
// Check buy/sell conditions
var float buyPrice = 0
buyCondition = low < (open-ta.atr(period)) and strategy.position_size == 0 and f_dateFilter
sellCondition = (high > (ta.ema(close, period)) and strategy.position_size > 0 and close < low[1]) or high > (open+ta.atr(period))
stopDistance = strategy.position_size > 0 ? ((buyPrice - atr)/buyPrice) : na
stopPrice = strategy.position_size > 0 ? (buyPrice - SLx*atr): na
stopCondition = strategy.position_size > 0 and low < stopPrice
// Enter positions
if buyCondition
strategy.entry(id="Long", direction=strategy.long)
if buyCondition[1]
buyPrice := open
// Exit positions
if sellCondition or stopCondition
strategy.close(id="Long", comment="Exit" + (stopCondition ? "SL=true" : ""))
buyPrice := na
// Draw pretty colors
plot(buyPrice, color=color.lime, style=plot.style_linebr)
plot(stopPrice, color=color.red, style=plot.style_linebr, offset=-1)