دوہری متحرک یکسانیت ٹریڈنگ حکمت عملی ایک حکمت عملی ہے جو OTT اشارے اور Wavetrend oscillator اشارے کا استعمال کرتی ہے۔ یہ ایک کامیاب ٹریڈنگ اشارے کو بنانے کے لئے OTT اشارے اور لونسٹار 108 کے Wavetrend oscillator اشارے کا استعمال کرتے ہوئے ملتی ہے۔ یہ حکمت عملی دو طرفہ مارکیٹوں میں زیادہ سے زیادہ بیعانہ آپریشن کی جا سکتی ہے۔
دوہری توانائی کی یکساں تجارت کی حکمت عملی پہلے بلین بینڈ کے وسط میں ، یعنی ایک چلتی اوسط MAvg کا حساب لگاتا ہے۔ اس کے بعد صارف کے مقرر کردہ فیصد کی حد اور دورانیے کے مطابق ، طویل اسٹاپ اور مختصر اسٹاپ کا حساب لگاتا ہے۔ جب قیمت ٹریک کو توڑتی ہے تو زیادہ کریں ، اور جب ٹریک کو توڑتے ہیں تو خالی کریں۔ بند کرنے کا اشارہ یہ ہے کہ قیمت دوبارہ اوسط کے قریب واپس آجائے۔
خاص طور پر ، اس حکمت عملی کا بنیادی اشارے او ٹی ٹی اشارے ہے۔ او ٹی ٹی اشارے اوسط اور بارڈر لائن پر مشتمل ہے ، جس میں مارکیٹ میں اتار چڑھاؤ کی سطح کے مطابق کسی الگورتھم کے مطابق بارڈر لائن کی پوزیشن کو ایڈجسٹ کرنا ہے۔ جب قیمت او ٹی ٹی کی نچلی بارڈر لائن سے نیچے آجاتی ہے تو ، اس میں غائب ہوجائیں۔ جب قیمت او ٹی ٹی کی اوپری بارڈر لائن کو توڑتی ہے تو ، زیادہ کریں۔
اس حکمت عملی میں قیمتوں کے رجحان کی سمت کا اندازہ لگانے کے لئے Wavetrend اشارے کا استعمال کیا جاتا ہے ، اگر یہ فیصلہ کیا جاتا ہے کہ نیچے کی طرف رجحان ہے تو ، زیادہ سے زیادہ تجارت نہ کریں ، اور اگر یہ فیصلہ کیا جاتا ہے کہ اوپر کی طرف رجحان ہے تو ، زیادہ سے زیادہ تجارت نہ کریں۔
دوہری متحرک یکساں ٹریڈنگ حکمت عملی جو چلتی اوسط ، برین بینڈ اور او ٹی ٹی اشارے کے فوائد کو جوڑتی ہے ، خود بخود روکنے کی پوزیشن کو ایڈجسٹ کرتی ہے ، جس سے روک تھام کے متحرک ہونے کا امکان کم ہوجاتا ہے۔ اس کے ساتھ ساتھ رجحان کا فیصلہ کرنے والے اشارے کو جوڑتا ہے ، اس سے بچنے کے لئے کہ وہ جھٹکے کے رجحان میں پھنس جائے۔
اس حکمت عملی کے اہم فوائد میں سے کچھ یہ ہیں:
دوہری متحرک توانائی کی یک لائن تجارت کی حکمت عملی میں بھی کچھ خطرات موجود ہیں ، جو بنیادی طور پر درج ذیل پہلوؤں پر مرکوز ہیں:
اس کا جواب یہ ہے کہ:
ڈبل متحرک توانائی کی یکساں تجارت کی حکمت عملی میں مزید اصلاحات کی گنجائش موجود ہے:
ڈبل متحرک توانائی کی یکسانیت ٹریڈنگ حکمت عملی متعدد اشارے کے فوائد کو مربوط کرتی ہے ، جو خود بخود اسٹاپ نقصان کی سطح کو ایڈجسٹ کرسکتی ہے ، الٹ سگنل کا فیصلہ کرسکتی ہے ، رجحان کی سمت کی شناخت کرسکتی ہے۔ اس میں خطرہ کنٹرول کرنے کی مضبوط صلاحیت ہے ، اور استعمال میں آسانی سے سمجھنے کے فوائد ہیں۔ تاہم ، اس میں چھپانے ، سگنل کی غلطی اور دیگر خطرات بھی موجود ہیں۔ اس حکمت عملی کو مزید بہتر بنایا جاسکتا ہے ، دوسرے اشارے کے ساتھ استعمال کیا جاسکتا ہے ، خود کو اپنانے کے الگورتھم وغیرہ کی تحقیق کریں۔ مجموعی طور پر ، ڈبل متحرک توانائی کی یکسانیت ٹریڈنگ حکمت عملی ایک عملی توڑنے والی قسم کی تجارتی حکمت عملی ہے۔
/*backtest
start: 2023-02-12 00:00:00
end: 2024-02-18 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")