
چلتی اوسط اور نسبتا weak مضبوط اشارے کی حکمت عملی ایک ایسی مقدار کی تجارت کی حکمت عملی ہے جس میں ایک ساتھ چلتی اوسط اور نسبتا strong مضبوط اشارے کو بطور تجارتی سگنل استعمال کیا جاتا ہے۔ یہ حکمت عملی قیمتوں کی متحرک اوسط اور نسبتا strong مضبوط اشارے کی مقدار کا موازنہ کرکے تجارتی سگنل تیار کرتی ہے تاکہ مارکیٹ کے رجحانات میں مواقع کو پکڑ سکے۔
یہ حکمت عملی بنیادی طور پر دو اشارے پر مبنی ہے:
اس حکمت عملی کی بنیادی منطق یہ ہے:
جب آر ایس آئی اشارے کی لکیر حرکت پذیر اوسط سے کم ہوتی ہے تو اس کو اوور سیل علاقہ سمجھا جاتا ہے ، جس سے اسٹاک کی قدر کم ہوتی ہے ، جس سے خریدنے کا اشارہ ملتا ہے۔ جب آر ایس آئی اشارے کی لکیر حرکت پذیر اوسط سے زیادہ ہوتی ہے تو اس کو اوور سیل علاقہ سمجھا جاتا ہے ، جس سے اسٹاک کی قدر زیادہ ہوتی ہے ، جس سے فروخت کا اشارہ ملتا ہے۔
اس کا مطلب یہ ہے کہ ، چلتی اوسط ایک حد تک اسٹاک کی منصفانہ قیمت کی عکاسی کرتی ہے۔ آر ایس آئی اشارے اسٹاک کی موجودہ مضبوطی کی نمائندگی کرتے ہیں۔ آر ایس آئی اشارے سے زیادہ یا اس سے کم چلنے والی اوسط کا مطلب یہ ہے کہ الٹ جانے کا موقع موجود ہے۔
یہ حکمت عملی مندرجہ ذیل اقدامات کے ذریعے ٹریڈنگ سگنل تیار کرتی ہے۔
اس حکمت عملی میں ٹریڈنگ کے رجحانات کا اندازہ لگانے کے لئے منتقل اوسط اور آر ایس آئی اشارے کے اوور خرید اور اوور فروخت کا اندازہ لگانا شامل ہے ، جس سے مختلف اشارے کے فوائد کا مجموعی طور پر استعمال کیا جاسکتا ہے ، جس سے مارکیٹ کے موڑ کا اندازہ لگایا جاسکتا ہے۔
اہم فوائد:
اس حکمت عملی کے کچھ خطرات بھی ہیں:
خطرے کو کنٹرول کرنے کے لئے، آپ کو مندرجہ ذیل طریقوں سے بہتر بنانے کے کر سکتے ہیں:
اس حکمت عملی کو مزید بہتر بنانے کے لیے مندرجہ ذیل نکات پر غور کیا جا سکتا ہے:
اس حکمت عملی کی استحکام اور منافع بخش صلاحیت کو پیرامیٹرز کی اصلاح ، اشارے کی اصلاح ، خطرے کے انتظام کی اصلاح وغیرہ کے ذریعہ بڑھایا جاسکتا ہے۔
متحرک اوسط اور نسبتا strong مضبوط اشارے کی حکمت عملی قیمت کے رجحانات کا فیصلہ کرنے اور اوور بیئر اوور سیل فیصلے کا استعمال کرتے ہوئے ، مارکیٹ کے موڑ کے نقطہ کو مؤثر طریقے سے اندازہ لگاسکتی ہے ، واپسی کے مواقع کو پکڑ سکتی ہے۔ یہ حکمت عملی آسان ، عملی ، خطرے سے متعلق ہے ، اور یہ ایک عملی مقدار کی تجارت کی حکمت عملی ہے۔ مسلسل اصلاح کے ذریعہ ، بہتر نتائج حاصل کیے جاسکتے ہیں۔
/*backtest
start: 2023-11-20 00:00:00
end: 2023-11-24 06:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy(title = "RSI versus SMA", shorttitle = "RSI vs SMA", overlay = false, pyramiding = 0, default_qty_type = strategy.percent_of_equity, default_qty_value = 10, currency = currency.GBP)
// Revision: 1
// Author: @JayRogers
//
// *** USE AT YOUR OWN RISK ***
// - Nothing is perfect, and all decisions by you are on your own head. And stuff.
//
// Description:
// - It's RSI versus a Simple Moving Average.. Not sure it really needs much more description.
// - Should not repaint - Automatically offsets by 1 bar if anything other than "open" selected as RSI source.
// === INPUTS ===
// rsi
rsiSource = input(defval = open, title = "RSI Source")
rsiLength = input(defval = 8, title = "RSI Length", minval = 1)
// sma
maLength = input(defval = 34, title = "MA Period", minval = 1)
// invert trade direction
tradeInvert = input(defval = false, title = "Invert Trade Direction?")
// risk management
useStop = input(defval = false, title = "Use Initial Stop Loss?")
slPoints = input(defval = 25, title = "Initial Stop Loss Points", minval = 1)
useTS = input(defval = true, title = "Use Trailing Stop?")
tslPoints = input(defval = 120, title = "Trail Points", minval = 1)
useTSO = input(defval = false, title = "Use Offset For Trailing Stop?")
tslOffset = input(defval = 20, title = "Trail Offset Points", minval = 1)
// === /INPUTS ===
// === BASE FUNCTIONS ===
// delay for direction change actions
switchDelay(exp, len) =>
average = len >= 2 ? sum(exp, len) / len : exp[1]
up = exp > average
down = exp < average
state = up ? true : down ? false : up[1]
// === /BASE FUNCTIONS ===
// === SERIES and VAR ===
// rsi
shunt = rsiSource == open ? 0 : 1
rsiUp = rma(max(change(rsiSource[shunt]), 0), rsiLength)
rsiDown = rma(-min(change(rsiSource[shunt]), 0), rsiLength)
rsi = (rsiDown == 0 ? 100 : rsiUp == 0 ? 0 : 100 - (100 / (1 + rsiUp / rsiDown))) - 50 // shifted 50 points to make 0 median
// sma of rsi
rsiMa = sma(rsi, maLength)
// self explanatory..
tradeDirection = tradeInvert ? 0 <= rsiMa ? true : false : 0 >= rsiMa ? true : false
// === /SERIES ===
// === PLOTTING ===
barcolor(color = tradeDirection ? green : red, title = "Bar Colours")
// hlines
medianLine = hline(0, title = 'Median', color = #996600, linewidth = 1)
limitUp = hline(25, title = 'Limit Up', color = silver, linewidth = 1)
limitDown = hline(-25, title = 'Limit Down', color = silver, linewidth = 1)
// rsi and ma
rsiLine = plot(rsi, title = 'RSI', color = purple, linewidth = 2, style = line, transp = 50)
areaLine = plot(rsiMa, title = 'Area MA', color = silver, linewidth = 1, style = area, transp = 70)
// === /PLOTTING ===
goLong() => not tradeDirection[1] and tradeDirection
killLong() => tradeDirection[1] and not tradeDirection
strategy.entry(id = "Buy", long = true, when = goLong())
strategy.close(id = "Buy", when = killLong())
goShort() => tradeDirection[1] and not tradeDirection
killShort() => not tradeDirection[1] and tradeDirection
strategy.entry(id = "Sell", long = false, when = goShort())
strategy.close(id = "Sell", when = killShort())
if (useStop)
strategy.exit("XSL", from_entry = "Buy", loss = slPoints)
strategy.exit("XSS", from_entry = "Sell", loss = slPoints)
// if we're using the trailing stop
if (useTS and useTSO) // with offset
strategy.exit("XSL", from_entry = "Buy", trail_points = tslPoints, trail_offset = tslOffset)
strategy.exit("XSS", from_entry = "Sell", trail_points = tslPoints, trail_offset = tslOffset)
if (useTS and not useTSO) // without offset
strategy.exit("XSL", from_entry = "Buy", trail_points = tslPoints)
strategy.exit("XSS", from_entry = "Sell", trail_points = tslPoints)