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

مصنف:چاؤ ژانگ، تاریخ: 2023-11-28 14:07:46
ٹیگز:

img

جائزہ

حرکت پذیر اوسط رشتہ دار طاقت انڈیکس حکمت عملی ایک مقداری تجارتی حکمت عملی ہے جو مارکیٹ کے رجحانات میں مواقع کو حاصل کرنے کے لئے تجارتی سگنل کے طور پر حرکت پذیر اوسط لائنوں اور رشتہ دار طاقت انڈیکس (آر ایس آئی) دونوں کا استعمال کرتی ہے۔ یہ حکمت عملی مارکیٹ میں الٹ جانے کے مواقع کو پکڑنے کے لئے قیمت کی حرکت پذیر اوسط لائن کا RSI انڈیکس کی قیمت سے موازنہ کرکے تجارتی سگنل تیار کرتی ہے۔

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

یہ حکمت عملی بنیادی طور پر دو اشارے پر مبنی ہے:

  1. سادہ حرکت پذیر اوسط (ایس ایم اے): قیمتوں کے اوسط رجحان کی عکاسی کرتا ہے۔
  2. رشتہ دار طاقت انڈیکس (آر ایس آئی): قیمت کی کارکردگی کی طاقت یا کمزوری کی عکاسی کرتا ہے۔

حکمت عملی کا بنیادی منطق یہ ہے:

جب آر ایس آئی اشارے کی لائن حرکت پذیر اوسط لائن سے کم ہوتی ہے تو ، یہ oversold علاقے میں ہوتی ہے اور اس سے اشارہ ہوتا ہے کہ اسٹاک کی کم قیمت ہے ، جس سے خرید کا اشارہ ہوتا ہے۔ جب آر ایس آئی لائن حرکت پذیر اوسط لائن سے زیادہ ہوتی ہے تو ، یہ overbought علاقے میں ہوتی ہے اور اشارہ کرتی ہے کہ اسٹاک کی قیمت زیادہ ہے ، اس طرح فروخت کا اشارہ پیدا ہوتا ہے۔

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

خاص طور پر یہ حکمت عملی مندرجہ ذیل مراحل کے ذریعے تجارتی سگنل پیدا کرتی ہے:

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

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

چلتی اوسط کے رجحان کے فیصلے اور آر ایس آئی کی زیادہ خرید / فروخت کی نشاندہی کو یکجا کرکے ، یہ حکمت عملی مختلف اشارے کی طاقتوں کا فائدہ اٹھاتے ہوئے مارکیٹ میں موڑ کے مقامات کو مؤثر طریقے سے طے کرسکتی ہے۔

اہم فوائد یہ ہیں:

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

اسٹریٹجی کے خطرات

اس حکمت عملی کے ساتھ کچھ خطرات بھی ہیں:

  1. اشارے سے غلط سگنل کا امکان ہے، جو غیر ضروری نقصانات کا سبب بن سکتا ہے۔
  2. سٹاپ نقصان شدید مارکیٹ کے اتار چڑھاؤ کے دوران شروع کیا جا سکتا ہے، جس سے بڑے نقصانات ہوتے ہیں۔
  3. غلط پیرامیٹر کی ترتیبات بھی حکمت عملی کی کارکردگی کو متاثر کر سکتے ہیں.

خطرات کے انتظام کے لئے، مندرجہ ذیل طریقوں سے اصلاحات کی جا سکتی ہیں:

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

حکمت عملی کی اصلاح کے لئے ہدایات

مزید اصلاحاتی سمتوں میں شامل ہیں:

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

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

نتیجہ

رواں اوسط آر ایس آئی حکمت عملی قیمت کے رجحان اور زیادہ خرید / فروخت کے تجزیہ دونوں کو مؤثر طریقے سے مارکیٹ کے موڑ کے مقامات کی نشاندہی کرنے اور الٹ جانے کے مواقع کو حاصل کرنے کے لئے استعمال کرتی ہے۔ اس سادہ ، عملی حکمت عملی میں قابو پانے والے خطرات ہیں اور یہ مقداری تجارت کے لئے مفید ہے۔ مزید اصلاح سے بہتر نتائج برآمد ہوسکتے ہیں۔


/*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)

مزید