
سنگل سائیڈ ٹرینڈ شاک بریکآؤٹ حکمت عملی ایک بریکآؤٹ حکمت عملی ہے جس میں قیمت کے راستے اور رجحان کی تشخیص کا استعمال کیا جاتا ہے۔ اس کا مقصد رجحان کی سمت کی نشاندہی کرنا ہے ، جو جھٹکے والے علاقوں میں داخل ہوتا ہے ، اور مقررہ منافع کے ہدف پر پہنچنے کے بعد باہر نکل جاتا ہے۔
یہ حکمت عملی قیمت چینل کے اوپر اور نیچے کی ٹریک کا حساب لگاکر کام کرتی ہے تاکہ یہ معلوم کیا جاسکے کہ آیا قیمت چینل کو توڑ رہی ہے یا نہیں۔ خاص طور پر ، حکمت عملی پہلے حالیہ N سائیکل کی اعلی ترین قیمت ، کم قیمت اور قیمت کی وسط لائن کا حساب لگاتی ہے۔ پھر قیمت اور وسط لائن کے درمیان اوسط مطلق فاصلے کا حساب لگائیں ، اور نیچے کی ٹریک حاصل کریں۔
جب رجحان کا فیصلہ کرتے ہیں تو ، حکمت عملی چیک کرتی ہے کہ آیا حالیہ K لائنوں میں سے سبھی راستے کے اوپر بند ہیں (متعدد سر سگنل) یا راستے کے نیچے (خالی سر سگنل) ۔ جب رجحان کا فیصلہ کیا جاتا ہے تو ، حکمت عملی قیمت کے جھٹکے کا انتظار کرتی ہے ، راستے کے اوپری ریل یا نچلے ریل کے قریب ایک بریک فارم سگنل بناتا ہے ، اور ریورس انٹری کے راستے میں داخل ہوتا ہے۔
اس کے علاوہ ، حکمت عملی K لائن کے اداروں کو توڑنے کا بھی فیصلہ کرتی ہے ، جس میں ایک اضافی انٹری سگنل ہوتا ہے۔ جب اداروں کی لمبائی اوسط اداروں کی لمبائی کے ایک خاص گنا سے تجاوز کرتی ہے تو اس کی نشاندہی ہوتی ہے۔ حکمت عملی انٹری کے بعد منافع بخش ہدف طے کرتی ہے ، اور جب قیمت ہدف تک پہنچ جاتی ہے تو وہ فعال طور پر رک جاتی ہے۔
اس حکمت عملی کے درج ذیل فوائد ہیں:
اس حکمت عملی کے کچھ خطرات بھی ہیں:
خطرے کو کم کرنے کے لئے ، پیرامیٹرز کو ایڈجسٹ کیا جاسکتا ہے تاکہ چینل کی حد کو کم کیا جاسکے ، مضبوط رجحانات میں الٹا پوزیشن لگانے سے گریز کیا جاسکے ، اور اسٹاپ لاجسٹک کو بہتر بنایا جاسکے۔
اس حکمت عملی کو مندرجہ ذیل طریقوں سے بہتر بنایا جاسکتا ہے:
ایک طرفہ رجحان جھٹکا توڑنے کی حکمت عملی قیمت کے راستے اور رجحان کا فیصلہ کرکے ، جھٹکے والے علاقوں میں الٹا پوزیشن بنانے کا طریقہ فائدہ اٹھاتا ہے۔ اس میں رجحان کا فیصلہ کرنے ، اسٹاپ اسٹاپ کی سرگرمی کی خوبی ہے ، لیکن اس میں کچھ خطرہ بھی موجود ہے۔ متعدد اشارے کی تصدیق ، پیرامیٹرز کی اصلاح اور دیگر ذرائع سے منافع کی گنجائش میں اضافے کا خطرہ کم کیا جاسکتا ہے۔ یہ حکمت عملی شارٹ لائن ٹریڈنگ کے لئے موزوں ہے ، جو رجحان کی حکمت عملی کی تکمیل کے طور پر ہوسکتی ہے۔
/*backtest
start: 2024-01-10 00:00:00
end: 2024-01-17 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy("Noro's Bands Scalper Strategy v1.5", shorttitle = "Scalper str 1.5", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value=100.0, pyramiding=0)
//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
takepercent = input(0, defval = 0, minval = 0, maxval = 1000, title = "take, %")
needbe = input(true, defval = true, title = "Bands Entry")
needct = input(false, defval = false, title = "Counter-trend entry")
bodylen = input(10, defval = 10, minval = 0, maxval = 50, title = "Body length")
trb = input(1, defval = 1, minval = 1, maxval = 5, title = "Trend bars")
len = input(20, defval = 20, minval = 2, maxval = 200, title = "Period")
needbb = input(true, defval = true, title = "Show Bands")
needbg = input(true, defval = true, title = "Show Background")
src = close
//PriceChannel 1
lasthigh = highest(src, len)
lastlow = lowest(src, len)
center = (lasthigh + lastlow) / 2
//Distance
dist = abs(src - center)
distsma = sma(dist, len)
hd = center + distsma
ld = center - distsma
hd2 = center + distsma * 2
ld2 = center - distsma * 2
//Trend
chd = close > hd
cld = close < ld
uptrend = trb == 1 and chd ? 1 : trb == 2 and chd and chd[1] ? 1 : trb == 3 and chd and chd[1] and chd[2] ? 1 : trb == 4 and chd and chd[1] and chd[2] and chd[3] ? 1 : trb == 5 and chd and chd[1] and chd[2] and chd[3] and chd[4] ? 1 : 0
dntrend = trb == 1 and cld ? 1 : trb == 2 and cld and cld[1] ? 1 : trb == 3 and cld and cld[1] and cld[2] ? 1 : trb == 4 and cld and cld[1] and cld[2] and cld[3] ? 1 : trb == 5 and cld and cld[1] and cld[2] and cld[3] and cld[4] ? 1 : 0
trend = dntrend == 1 and high < center ? -1 : uptrend == 1 and low > center ? 1 : trend[1]
//trend = close < ld and high < center ? -1 : close > hd and low > center ? 1 : trend[1]
//Lines
colo = needbb == false ? na : black
plot(hd2, color = colo, linewidth = 1, transp = 0, title = "High band 2")
plot(hd, color = colo, linewidth = 1, transp = 0, title = "High band 1")
plot(center, color = colo, linewidth = 1, transp = 0, title = "center")
plot(ld, color = colo, linewidth = 1, transp = 0, title = "Low band 1")
plot(ld2, color = colo, linewidth = 1, transp = 0, title = "Low band 2")
//Background
col = needbg == false ? na : trend == 1 ? lime : red
bgcolor(col, transp = 80)
//Body
body = abs(close - open)
smabody = ema(body, 30) / 10 * bodylen
//Signals
bar = close > open ? 1 : close < open ? -1 : 0
up7 = trend == 1 and ((bar == -1 and bar[1] == -1) or (body > smabody and bar == -1)) ? 1 : 0
dn7 = trend == 1 and ((bar == 1 and bar[1] == 1) or (close > hd and needbe == true)) and close > strategy.position_avg_price * (100 + takepercent) / 100 ? 1 : 0
up8 = trend == -1 and ((bar == -1 and bar[1] == -1) or (close < ld2 and needbe == true)) and close < strategy.position_avg_price * (100 - takepercent) / 100 ? 1 : 0
dn8 = trend == -1 and ((bar == 1 and bar[1] == 1) or (body > smabody and bar == 1)) ? 1 : 0
if up7 == 1 or up8 == 1
strategy.entry("Long", strategy.long, needlong == false ? 0 : trend == -1 and needct == false ? 0 : na)
if dn7 == 1 or dn8 == 1
strategy.entry("Short", strategy.short, needshort == false ? 0 : trend == 1 and needct == false ? 0 : na)