دوہری حرکت پذیر اوسط رفتار کمپریشن کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-12-25 17:01:28
ٹیگز:

img

جائزہ

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

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

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

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

حکمت عملی میں مارکیٹ کے مرحلے کا اندازہ کرنے میں مدد کے لئے کمپریشن اور توسیع کے پس منظر کا تصور بھی فراہم کیا گیا ہے۔

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

  • مجموعہ کے لئے متعدد اشارے کا استعمال مؤثر طریقے سے جھوٹے سگنل کو فلٹر کرسکتا ہے
  • کمپریشن ممکنہ الٹ پوائنٹس کی نمائندگی کرتا ہے اور حکمت عملی کی کارکردگی کو بہتر بناتا ہے
  • جسم فلٹر جھوٹے breakouts کی چھوٹی سی لہروں کی طرف سے گمراہ ہونے سے بچتا ہے
  • پیرامیٹر کی اصلاح کے ذریعے بہتر نتائج حاصل کرنے کے لئے آسان

خطرے کا تجزیہ

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

خطرات کو اشارے کے پیرامیٹرز کو ایڈجسٹ کرکے ، فلٹرنگ کے معیار کو بہتر بناتے ہوئے وغیرہ سے کم کیا جاسکتا ہے۔

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

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

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

نتیجہ

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


/*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)

مزید