دوہری حرکت پذیر اوسط ذہین ٹریکنگ ٹریڈنگ کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2024-02-18 15:58:08
ٹیگز:

img

جائزہ

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

حکمت عملی کا اصول

اس حکمت عملی کا بنیادی طریقہ کار دو حرکت پذیر اوسط اور او ٹی ٹی اشارے کا استعمال کرتے ہوئے ایک موافقت پذیر چینل کی تعمیر کرنا ہے ، خاص طور پر:

  1. تیز رفتار لائن MAvg کا حساب 5 ادوار کی لمبائی کے ساتھ ان پٹ کے طور پر CLOSE اور اپنی مرضی کے مطابق چلتی اوسط کا استعمال کرتے ہوئے کیا جائے گا۔

  2. طویل لائن پوزیشن LongStop اور مختصر لائن پوزیشن ShortStop کا حساب MAvg اور پہلے سے مقرر فیصد کی بنیاد پر چینل کے لئے لگائیں۔

  3. OTT اشارے میں چینل سٹاپ نقصان MT اور طویل / مختصر سمت کی بنیاد پر چینل کی قیمت OTT کا حساب لگائیں۔

  4. جب قیمت OTT کے ذریعے ٹوٹ جاتی ہے تو تجارتی سگنل تیار کریں۔

مذکورہ بالا عمل قیمتوں کے رجحان کی تبدیلیوں کو حقیقی وقت میں ٹریک کرنے کے قابل بناتا ہے ، تجارتی سگنل تیار کرتا ہے۔

حکمت عملی کے فوائد

اس حکمت عملی کے فوائد میں شامل ہیں:

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

حکمت عملی کے خطرات

کچھ خطرات بھی ہیں:

  1. دوہری حرکت پذیر اوسط غلط سگنل کے نتیجے میں اختلافات پیدا کرسکتے ہیں۔
  2. او ٹی ٹی پیرامیٹرز کی غلط ترتیبات بہت جارحانہ یا محتاط ہوسکتی ہیں۔
  3. یہ حکمت عملی صرف تکنیکی اشارے پر مبنی ہے جس میں بنیادیات پر غور نہیں کیا گیا ہے۔

خطرات کو پیرامیٹر کی اصلاح کے ذریعے حل کیا جاسکتا ہے ، دوسرے اشارے اور بنیادی فلٹرز کو ضم کیا جاسکتا ہے۔

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

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

  1. مناسب پروڈکٹ اور ٹائم فریم کے لئے حرکت پذیر اوسط پیرامیٹرز کو بہتر بنائیں؛
  2. چینل کی چوڑائی کے پیرامیٹرز کو بہتر بنائیں تاکہ حساسیت اور استحکام کو متوازن کیا جا سکے۔
  3. تجارتی حجم کی بنیاد پر فلٹرز شامل کریں۔
  4. بنیادی اصولوں کی بنیاد پر سمت فلٹرز مقرر کریں.

خلاصہ

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


/*backtest
start: 2023-02-11 00:00:00
end: 2024-02-17 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title="BugRA_Trade_Strategy", shorttitle="BugRA_Trade_Strategy", overlay=true)

// Kullanıcı Girdileri
length = input(5, title="Period", minval=1)
percent = input(1, title="Sihirli Yüzde", type=input.float, step=0.1, minval=0)
mav = input(title="Hareketli Ortalama Türü", defval="VAR", options=["SMA", "EMA", "WMA", "TMA", "VAR", "WWMA", "ZLEMA", "TSF"])
wt_n1 = input(10, title="Kanal Periyodu")
wt_n2 = input(21, title="Averaj Uzunluğu")
src = close

// Tarih Aralığı Girdileri
startDate = input(20200101, title="Başlangıç Tarihi (YYYYMMDD)")
endDate = input(20201231, title="Bitiş Tarihi (YYYYMMDD)")

// Tarih Filtresi Fonksiyonu
isDateInRange() => true

// Özel Fonksiyonlar
Var_Func(src, length) =>
    valpha = 2 / (length + 1)
    vud1 = src > src[1] ? src - src[1] : 0
    vdd1 = src < src[1] ? src[1] - src : 0
    vUD = sum(vud1, length)
    vDD = sum(vdd1, length)
    vCMO = (vUD - vDD) / (vUD + vDD)
    varResult = 0.0
    varResult := nz(valpha * abs(vCMO) * src + (1 - valpha * abs(vCMO)) * nz(varResult[1]))
    varResult

Wwma_Func(src, length) =>
    wwalpha = 1 / length
    wwma = 0.0
    wwma := wwalpha * src + (1 - wwalpha) * nz(wwma[1])
    wwma

Zlema_Func(src, length) =>
    zxLag = floor(length / 2)
    zxEMAData = src + (src - src[zxLag])
    zlema = ema(zxEMAData, length)
    zlema

Tsf_Func(src, length) =>
    lrc = linreg(src, length, 0)
    lrs = lrc - linreg(src, length, 1)
    tsf = lrc + lrs
    tsf

getMA(src, length) =>
    ma = mav == "SMA" ? sma(src, length) :
         mav == "EMA" ? ema(src, length) :
         mav == "WMA" ? wma(src, length) :
         mav == "TMA" ? sma(sma(src, ceil(length / 2)), floor(length / 2) + 1) :
         mav == "VAR" ? Var_Func(src, length) :
         mav == "WWMA" ? Wwma_Func(src, length) :
         mav == "ZLEMA" ? Zlema_Func(src, length) :
         mav == "TSF" ? Tsf_Func(src, length) : na

// Strateji Hesaplamaları
MAvg = getMA(src, length)
fark = MAvg * percent * 0.01
longStop = MAvg - fark
longStopPrev = nz(longStop[1], longStop)
longStop := MAvg > longStopPrev ? max(longStop, longStopPrev) : longStop
shortStop = MAvg + fark
shortStopPrev = nz(shortStop[1], shortStop)
shortStop := MAvg < shortStopPrev ? min(shortStop, shortStopPrev) : shortStop

dir = 1
dir := nz(dir[1], dir)
dir := dir == -1 and MAvg > shortStopPrev ? 1 : dir == 1 and MAvg < longStopPrev ? -1 : dir
MT = dir==1 ? longStop: shortStop
OTT = MAvg > MT ? MT*(200+percent)/200 : MT*(200-percent)/200

plot(OTT, title="BugRA", color=color.rgb(251, 126, 9))

// Alım ve Satım Koşulları
longCondition = crossover(src, OTT) and isDateInRange()
shortCondition = crossunder(src, OTT) and isDateInRange()

// Strateji Giriş ve Çıkış Emirleri
if (longCondition)
    strategy.entry("Long", strategy.long)

if (shortCondition)
    strategy.close("Long")


مزید