
اس حکمت عملی میں تین مختلف تکنیکی اشارے شامل ہیں ، جس میں دوہری یکساں لائن سسٹم کا استعمال کیا گیا ہے جس میں تجارتی سگنل تیار کیے گئے ہیں ، اور K لائنوں کے رنگوں اور اداروں کو اضافی فلٹرنگ شرائط کے طور پر استعمال کیا گیا ہے ، اس طرح ایک نسبتا stable مستحکم اور موثر شارٹ لائن ٹریڈنگ حکمت عملی تشکیل دی گئی ہے۔
پوری حکمت عملی میں بورن بینڈ اور کے سی چینل کا ایک مجموعہ استعمال کیا جاتا ہے تاکہ مارکیٹ کے کمپریشن اور توسیع کے مراحل کی نشاندہی کی جاسکے۔ خاص طور پر ، جب بورن بینڈ کے سی سی چینل کے اندر ہوتا ہے تو اسے کمپریشن سمجھا جاتا ہے ، اور جب بورن بینڈ کے سی سی چینل کو توڑتا ہے تو اسے توسیع سمجھا جاتا ہے۔ کمپریشن میں اتار چڑھاؤ میں اضافے اور رجحان میں تبدیلی کی امکان کی نمائندگی کی جاتی ہے ، جس میں لکیری رجعت کو بنیادی تجارتی سگنل اشارے کے طور پر استعمال کیا جاتا ہے۔
اگر لکیری واپسی ہسٹگرام مثبت ہے () ، اور بار سرخ K لائن ہے () ، اور بار منفی ہے () ، اور K لائن کا ادارہ پچھلے 30 K لائنوں کے اوسط ادارے سے 1⁄3 بڑا ہے تو ، اس طرح کے مجموعی سگنل زیادہ ہیں۔ اس کے برعکس ، اگر لکیری واپسی ہسٹگرام منفی ہے ، تو یہ بار سبز K لائن ہے ، اور ادارہ بھی بڑا ہے ، تو یہ خالی ہے۔
یہ حکمت عملی مارکیٹ کے مرحلے کا تعین کرنے میں مدد کے لئے ایک ہی وقت میں کمپریشن اور توسیع کے پس منظر کی نمائش فراہم کرتی ہے۔
اس خطرے کو کم کرنے کے لئے ، آپ کو اشارے کے پیرامیٹرز کو ایڈجسٹ کرنا ، فلٹرنگ کے حالات کو بہتر بنانا ، وغیرہ شامل ہیں۔
اس حکمت عملی کو مندرجہ ذیل پہلوؤں سے بہتر بنایا جاسکتا ہے:
اس حکمت عملی میں متعدد اشارے شامل ہیں ، جس میں کمپریشن کے مواقع کی نشاندہی کرتے ہوئے فلٹرنگ کی شرائط میں اضافہ کیا گیا ہے ، جس سے ایک زیادہ مستحکم اور موثر شارٹ لائن حکمت عملی تشکیل دی گئی ہے۔ پیرامیٹرز اور فلٹرنگ کی شرائط کو بہتر بنانے کے ذریعہ بہتر نتائج حاصل کیے جاسکتے ہیں۔ اور اس حکمت عملی کا فریم ورک لچکدار ہے ، جس کو مختلف نسلوں میں استعمال کرنے میں آسانی سے ایڈجسٹ کیا جاسکتا ہے ، اور اس کی مزید جانچ اور اصلاح کے قابل ہے۔
/*backtest
start: 2023-11-24 00:00:00
end: 2023-12-24 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//Noro
//2017
//@version=2
strategy(shorttitle = "Squeeze str 1.0", title="Noro's Squeeze Momentum Strategy v1.0", overlay = false, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)
//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
length = input(20, title="BB Length")
mult = input(2.0,title="BB MultFactor")
lengthKC=input(20, title="KC Length")
multKC = input(1.5, title="KC MultFactor")
useTrueRange = true
usecolor = input(true, defval = true, title = "Use color of candle")
usebody = input(true, defval = true, title = "Use EMA Body")
needbg = input(false, defval = false, title = "Show trend background")
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")
// Calculate BB
source = close
basis = sma(source, length)
dev = multKC * stdev(source, length)
upperBB = basis + dev
lowerBB = basis - dev
// Calculate KC
ma = sma(source, lengthKC)
range = useTrueRange ? tr : (high - low)
rangema = sma(range, lengthKC)
upperKC = ma + rangema * multKC
lowerKC = ma - rangema * multKC
sqzOn = (lowerBB > lowerKC) and (upperBB < upperKC)
sqzOff = (lowerBB < lowerKC) and (upperBB > upperKC)
noSqz = (sqzOn == false) and (sqzOff == false)
val = linreg(source - avg(avg(highest(high, lengthKC), lowest(low, lengthKC)),sma(close,lengthKC)), lengthKC,0)
bcolor = iff( val > 0, iff( val > nz(val[1]), lime, green), iff( val < nz(val[1]), red, maroon))
scolor = noSqz ? blue : sqzOn ? black : gray
trend = val > 0 ? 1 : val < 0 ? -1 : 0
//Background
col = needbg == false ? na : trend == 1 ? lime : red
bgcolor(col, transp = 80)
//EMA Body
body = abs(close - open)
emabody = ema(body, 30) / 3
//Signals
bar = close > open ? 1 : close < open ? -1 : 0
up = trend == 1 and (bar == -1 or usecolor == false) and (body > emabody or usebody == false)
dn = trend == -1 and (bar == 1 or usecolor == false) and (body > emabody or usebody == false)
if up
strategy.entry("Long", strategy.long)
if dn
strategy.entry("Short", strategy.short)