RSI اور T3 اشارے پر مبنی PMax بریک آؤٹ حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-11-22 15:03:08
ٹیگز:

img

جائزہ

یہ ایک مقداری تجارتی حکمت عملی ہے جو رجحانات کا تعین کرنے کے لئے آر ایس آئی اور ٹی 3 اشارے کا استعمال کرتی ہے اور موافقت پذیر پی میکس بریک آؤٹ کو نافذ کرنے کے لئے اے ٹی آر اشارے کی بنیاد پر اسٹاپ نقصان کی لائنیں طے کرتی ہے۔ اس کا بنیادی خیال منافع بخش ہونے کے ساتھ ساتھ خطرات کو کنٹرول کرنے کے لئے رجحان کے تعین اور اسٹاپ نقصان کی ترتیبات کو بہتر بنانا ہے۔

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

  1. RSI اور T3 اشارے کا استعمال کرتے ہوئے رجحانات کا تعین کریں

    • اسٹاک کی زیادہ خرید / زیادہ فروخت کا فیصلہ کرنے کے لئے RSI اشارے کا استعمال کریں
    • رجحانات کا تعین کرنے کے لئے RSI پر مبنی T3 اشارے کا حساب لگائیں
  2. اے ٹی آر اشارے کی بنیاد پر ایڈجسٹ پی ایم ایکس سٹاپ نقصان لائنیں مقرر کریں

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

    • T3 سے اوپر قیمت کراس اوور کو خرید سگنل کے طور پر سمجھیں
    • باہر نکلنے کی پوزیشن جب قیمت سٹاپ نقصان لائن سے نیچے کی حد کو عبور کرتی ہے

فوائد

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

  1. آر ایس آئی + ٹی 3 کا مجموعہ رجحان کا تعین بہتر کرتا ہے
  2. PMax انکولی سٹاپ نقصان کنٹرول خطرات
  3. اتار چڑھاؤ انڈیکس کے طور پر اے ٹی آر سٹاپ نقصان کی چوڑائی کو منطقی بناتا ہے
  4. استعمال اور منافع کے درمیان توازن

خطرات

اہم خطرات:

  1. واپسی کا خطرہ

    قلیل مدتی الٹیاں اسٹاپ نقصان کو متحرک کرسکتی ہیں اور نقصان کا سبب بن سکتی ہیں۔ اثر کو کم کرنے کے لئے اسٹاپ نقصان کو نرم کرسکتے ہیں۔

  2. رجحان کا تعین کرنے میں ناکامی کا خطرہ

    آر ایس آئی + ٹی 3 کا رجحان کا تعین 100٪ قابل اعتماد نہیں ہے۔ غلط فیصلہ نقصان کا سبب بن سکتا ہے۔ پیرامیٹرز کو بہتر بنا سکتا ہے یا دوسرے اشارے شامل کرسکتا ہے۔

بہتری

مزید اصلاح کے لئے کچھ ہدایات:

  1. رجحان کی مدد کے لئے چلتی اوسط جیسے دیگر اشارے شامل کریں
  2. RSI اور T3 کے لئے لمبائی پیرامیٹرز کو بہتر بنائیں
  3. سٹاپ نقصان کی چوڑائی کے لئے مختلف ATR ضربوں کا تجربہ کریں
  4. مختلف بازاروں کی بنیاد پر سٹاپ نقصان کی نرمی کو ایڈجسٹ کریں

نتیجہ

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


/*backtest
start: 2023-11-14 00:00:00
end: 2023-11-21 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © KivancOzbilgic
//developer: @KivancOzbilgic
//author: @KivancOzbilgic

strategy("PMax on Rsi w T3 Strategy","PmR3St.", overlay=false, precision=2)
src = input(hl2, title="Source")
Multiplier = input(title="ATR Multiplier", type=input.float, step=0.1, defval=3)
length =input(8, "Tillson T3 Length", minval=1)
T3a1 = input(0.7, "TILLSON T3 Volume Factor", step=0.1)
Periods = input(10,title="ATR Length", type=input.integer)
rsilength = input(14, minval=1, title="RSI Length")
showrsi = input(title="Show RSI?", type=input.bool, defval=true)
showsupport = input(title="Show Moving Average?", type=input.bool, defval=true)
showsignalsk = input(title="Show Crossing Signals?", type=input.bool, defval=true)
highlighting = input(title="Highlighter On/Off ?", type=input.bool, defval=true)
i = close>=close[1] ? close-close[1] : 0
i2 = close<close[1] ? close[1]-close : 0
Wwma_Func(src,rsilength)=>
    wwalpha = 1/ rsilength
    WWMA = 0.0
    WWMA := wwalpha*src + (1-wwalpha)*nz(WWMA[1])
WWMA=Wwma_Func(src,rsilength)
AvUp = Wwma_Func(i,rsilength)
AvDown = Wwma_Func(i2,rsilength)
AvgUp = sma(i,rsilength)
AvgDown =sma(i2,rsilength)
k1 = high>close[1] ? high-close[1] : 0
k2 = high<close[1] ? close[1]-high : 0
k3 = low>close[1] ? low-close[1] : 0
k4 = low<close[1] ? close[1]-low : 0
AvgUpH=(AvgUp*(rsilength-1)+ k1)/rsilength
AvgDownH=(AvgDown*(rsilength-1)+ k2)/rsilength
AvgUpL=(AvgUp*(rsilength-1)+ k3)/rsilength
AvgDownL=(AvgDown*(rsilength-1)+ k4)/rsilength
rs = AvUp/AvDown
rsi= rs==-1 ? 0 : (100-(100/(1+rs)))
rsh=AvgUpH/AvgDownH
rsih= rsh==-1 ? 0 : (100-(100/(1+rsh)))
rsl=AvgUpL/AvgDownL
rsil= rsl==-1 ? 0 : (100-(100/(1+rsl)))
TR=max(rsih-rsil,abs(rsih-rsi[1]),abs(rsil-rsi[1]))
atr=sma(TR,Periods)
plot(showrsi ? rsi : na, "RSI", color=#8E1599)
band1 = hline(70, "Upper Band", color=#C0C0C0)
band0 = hline(30, "Lower Band", color=#C0C0C0)
fill(band1, band0, color=#9915FF, transp=90, title="Background")
T3e1=ema(rsi, length)
T3e2=ema(T3e1,length)
T3e3=ema(T3e2,length)
T3e4=ema(T3e3,length)
T3e5=ema(T3e4,length)
T3e6=ema(T3e5,length)
T3c1=-T3a1*T3a1*T3a1
T3c2=3*T3a1*T3a1+3*T3a1*T3a1*T3a1
T3c3=-6*T3a1*T3a1-3*T3a1-3*T3a1*T3a1*T3a1
T3c4=1+3*T3a1+T3a1*T3a1*T3a1+3*T3a1*T3a1
T3=T3c1*T3e6+T3c2*T3e5+T3c3*T3e4+T3c4*T3e3
MAvg=T3
Pmax_Func(rsi,length)=>
    longStop = MAvg - Multiplier*atr
    longStopPrev = nz(longStop[1], longStop)
    longStop := MAvg > longStopPrev ? max(longStop, longStopPrev) : longStop
    shortStop = MAvg + Multiplier*atr
    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
    PMax = dir==1 ? longStop: shortStop
PMax=Pmax_Func(rsi,length)
plot(showsupport ? MAvg : na, color=color.black, linewidth=2, title="T3")
pALL=plot(PMax, color=color.red, linewidth=2, title="PMax", transp=0)
alertcondition(cross(MAvg, PMax), title="Cross Alert", message="PMax - Moving Avg Crossing!")
alertcondition(crossover(MAvg, PMax), title="Crossover Alarm", message="Moving Avg BUY SIGNAL!")
alertcondition(crossunder(MAvg, PMax), title="Crossunder Alarm", message="Moving Avg SELL SIGNAL!")
alertcondition(cross(src, PMax), title="Price Cross Alert", message="PMax - Price Crossing!")
alertcondition(crossover(src, PMax), title="Price Crossover Alarm", message="PRICE OVER PMax - BUY SIGNAL!")
alertcondition(crossunder(src, PMax), title="Price Crossunder Alarm", message="PRICE UNDER PMax - SELL SIGNAL!")
buySignalk = crossover(MAvg, PMax)
plotshape(buySignalk and showsignalsk ? PMax*0.995 : na, title="Buy", text="Buy", location=location.absolute, style=shape.labelup, size=size.tiny, color=color.green, textcolor=color.white, transp=0)
sellSignallk = crossunder(MAvg, PMax)
plotshape(sellSignallk and showsignalsk ? PMax*1.005 : na, title="Sell", text="Sell", location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.red, textcolor=color.white, transp=0)
mPlot = plot(rsi, title="", style=plot.style_circles, linewidth=0,display=display.none)
longFillColor = highlighting ? (MAvg>PMax ? color.green : na) : na
shortFillColor = highlighting ? (MAvg<PMax ? color.red : na) : na
fill(mPlot, pALL, title="UpTrend Highligter", color=longFillColor)
fill(mPlot, pALL, title="DownTrend Highligter", color=shortFillColor)

dummy0 = input(true, title = "=Backtest Inputs=")
FromDay    = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromMonth  = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromYear   = input(defval = 2005, title = "From Year", minval = 2005)
ToDay      = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToMonth    = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToYear     = input(defval = 9999, title = "To Year", minval = 2006)
Start     = timestamp(FromYear, FromMonth, FromDay, 00, 00)
Finish    = timestamp(ToYear, ToMonth, ToDay, 23, 59)
Timerange() =>
    time >= Start and time <= Finish ? true : false
if buySignalk
    strategy.entry("Long", strategy.long,when=Timerange())
if sellSignallk
    strategy.entry("Short", strategy.short,when=Timerange())


مزید