یہ ADX اور RSI اشارے کے ساتھ مل کر ایک رجحان ٹریکنگ حکمت عملی ہے۔ حکمت عملی RSI کا استعمال کرتے ہوئے اوورلوڈ اور اوورلوڈ کے معاملات کا تعین کرنے کے لئے تجارتی سگنل جاری کرتی ہے ، جبکہ ADX کا استعمال کرتے ہوئے مارکیٹ کے رجحانات کا تعین کرنے کے لئے ، غیر واضح رجحانات والے تجارت کو فلٹر کرنے کے لئے ، یہ زلزلے کی مارکیٹ کے قید سے بچنے کے لئے موثر ہے۔
RSI اشارے خریدنے اور بیچنے کے فتنوں کو کم کرنے کے لئے اوورلوڈ اور اوورلوڈ کو مؤثر طریقے سے تشخیص کرسکتے ہیں
ADX اشارے غیر واضح رجحانات کو فلٹر کرتے ہیں اور ہلچل کے حالات میں قید ہونے سے بچتے ہیں
اختیاری سٹاپ نقصان کے طریقوں سے خطرے کو بہتر طور پر کنٹرول کیا جا سکتا ہے
حکمت عملی سادہ، سمجھنے میں آسان اور سیکھنے کے لئے موزوں ہے
حکمت عملی کے پیرامیٹرز کو بہتر بنانے کے لئے کافی جگہ ہے ، جس میں آر ایس آئی سائیکل ، اوورلوڈ اوورلوڈ فاصلہ ، اور ADX ہموار سائیکل جیسے پیرامیٹرز کو ایڈجسٹ کرکے بہتر بنایا جاسکتا ہے
آر ایس آئی میں واپسی کا خطرہ ہے ، اوورلوڈ اور اوورلوڈ سگنل میں واپسی کا امکان ہے
ای ڈی ایکس نے رجحانات کو پیچھے چھوڑ دیا ہے اور ممکنہ طور پر رجحانات کی تبدیلی سے محروم ہے
غیر معقول اسٹاپ نقصان کا تعین نقصان کا سبب بن سکتا ہے
حکمت عملی سادہ ہے اور اس میں اوور اوپٹیمائزیشن کا خطرہ ہے
بہتر نتائج کے لئے پیرامیٹرز کو بہتر بنانے کی ضرورت ہے
RSI کے پیرامیٹرز کو بہتر بنانے کے لئے، اوورلوڈ اوورلوڈ کو ایڈجسٹ کریں اور بہترین پیرامیٹرز کا مجموعہ تلاش کریں
مختلف ادوار کے ADX کی جانچ کر کے رجحانات کا بہترین اندازہ لگانے کے لئے پیرامیٹرز تلاش کریں
مختلف سٹاپ نقصان کے طریقوں کو آزمائیں اور حکمت عملی کے لئے بہترین ترتیب تلاش کریں
رجحان فلٹرنگ کے اشارے شامل کریں تاکہ مخالف تجارت سے بچا جاسکے
حکمت عملی کو زیادہ فائدہ مند بنانے کے لئے دیگر اشارے کے ساتھ جوڑا جاسکتا ہے
یہ حکمت عملی آر ایس آئی اور اے ڈی ایکس کے دو کلاسیکی اشارے کے فوائد کو مربوط کرتی ہے ، جو رجحانات کو مؤثر طریقے سے تلاش کرنے اور جھٹکے سے بچنے کے لئے ایک آسان اور عملی رجحانات کی پیروی کرنے والی حکمت عملی ہے۔ حکمت عملی کو بہتر بنانے کے لئے جگہ زیادہ ہے ، اور پیرامیٹرز کے مجموعے کو ایڈجسٹ کرکے بہتر اثر حاصل کیا جاسکتا ہے۔ مجموعی طور پر ، یہ حکمت عملی ابتدائی حکمت عملی کے طور پر سیکھنے کے لئے موزوں ہے الگورتھم ٹریڈنگ ، یا اس کو ماڈیول کے طور پر زیادہ پیچیدہ حکمت عملی کے نظام میں ضم کیا جاسکتا ہے۔
/*backtest
start: 2023-09-19 00:00:00
end: 2023-09-26 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © tweakerID
// This is a strategy that uses the 7 Period RSI to buy when the indicator is shown as oversold (OS) and sells when
// the index marks overbought (OB). It also uses the ADX to determine whether the trend is ranging or trending
// and filters out the trending trades. Seems to work better for automated trading when the logic is inversed (buying OB
// and selling the OS) wihout stop loss.
//@version=4
strategy("ADX + RSI Strat", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, initial_capital=100, commission_value=0.04, calc_on_every_tick=false)
direction = input(0, title = "Strategy Direction", type=input.integer, minval=-1, maxval=1)
strategy.risk.allow_entry_in(direction == 0 ? strategy.direction.all : (direction < 0 ? strategy.direction.short : strategy.direction.long))
//SL & TP Inputs
i_SL=input(false, title="Use Swing Lo/Hi Stop Loss & Take Profit")
i_SwingLookback=input(20, title="Swing Lo/Hi Lookback")
i_SLExpander=input(defval=0, step=.2, title="SL Expander")
i_TPExpander=input(defval=0, step=.2, title="TP Expander")
i_reverse=input(true, title="Reverse Trades")
//SL & TP Calculations
SwingLow=lowest(i_SwingLookback)
SwingHigh=highest(i_SwingLookback)
bought=strategy.position_size != strategy.position_size[1]
LSL=valuewhen(bought, SwingLow, 0)-((valuewhen(bought, atr(14), 0))*i_SLExpander)
SSL=valuewhen(bought, SwingHigh, 0)+((valuewhen(bought, atr(14), 0))*i_SLExpander)
lTP=strategy.position_avg_price + (strategy.position_avg_price-(valuewhen(bought, SwingLow, 0))+((valuewhen(bought, atr(14), 0))*i_TPExpander))
sTP=strategy.position_avg_price - (valuewhen(bought, SwingHigh, 0)-strategy.position_avg_price)-((valuewhen(bought, atr(14), 0))*i_TPExpander)
islong=strategy.position_size > 0
isshort=strategy.position_size < 0
SL= islong ? LSL : isshort ? SSL : na
TP= islong ? lTP : isshort ? sTP : na
//RSI Calculations
RSI=rsi(close, 7)
OS=input(30, step=5)
OB=input(80, step=5)
//ADX Calculations
adxlen = input(14, title="ADX Smoothing")
dilen = input(14, title="DI Length")
dirmov(len) =>
up = change(high)
down = -change(low)
plusDM = na(up) ? na : (up > down and up > 0 ? up : 0)
minusDM = na(down) ? na : (down > up and down > 0 ? down : 0)
truerange = rma(tr, len)
plus = fixnan(100 * rma(plusDM, len) / truerange)
minus = fixnan(100 * rma(minusDM, len) / truerange)
[plus, minus]
adx(dilen, adxlen) =>
[plus, minus] = dirmov(dilen)
sum = plus + minus
adx = 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen)
sig = adx(dilen, adxlen)
adxlevel=input(30, step=5)
//Entry Logic
BUY = sig < adxlevel and (RSI < OS)
SELL = sig < adxlevel and (RSI > OB)
//Entries
strategy.entry("long", strategy.long, when=i_reverse?SELL:BUY)
strategy.entry("short", strategy.short, when=not i_reverse?SELL:BUY)
//Exits
if i_SL
strategy.exit("longexit", "long", stop=SL, limit=TP)
strategy.exit("shortexit", "short", stop=SL, limit=TP)
//Plots
plot(i_SL ? SL : na, color=color.red, style=plot.style_cross, title="SL")
plot(i_SL ? TP : na, color=color.green, style=plot.style_cross, title="TP")
plotshape(BUY ? 1 : na, style=shape.triangleup, location=location.belowbar, color=color.green, title="Bullish Setup")
plotshape(SELL ? 1 : na, style=shape.triangledown, location=location.abovebar, color=color.red, title="Bearish Setup")