RSI Axial Moving Average Crossover Strategy


تخلیق کی تاریخ: 2023-11-23 16:45:55 آخر میں ترمیم کریں: 2023-11-23 16:45:55
کاپی: 2 کلکس کی تعداد: 751
1
پر توجہ دیں
1617
پیروکار

RSI Axial Moving Average Crossover Strategy

جائزہ

آر ایس آئی محوری اوسط لائن کراسنگ حکمت عملی آر ایس آئی اور اس کی سادہ منتقل اوسط کا حساب کتاب کرکے اور دونوں کے سنہری فورک کو دیکھنے کے لئے داخلہ اور باہر جانے کا فیصلہ کریں۔ اس حکمت عملی کے ساتھ ساتھ بلین بینڈ کے ساتھ مل کر آر ایس آئی محوری اوسط لائن کے لئے معاون مزاحمت کا فیصلہ بڑھایا گیا ہے۔

حکمت عملی کا اصول

یہ حکمت عملی سب سے پہلے 14 دن کے آر ایس آئی اشارے کا حساب لگاتی ہے اور پھر 8 دن کی سادہ حرکت پذیر اوسط آر ایس آئی اشارے کا حساب لگاتی ہے۔ جب آر ایس آئی اشارے نیچے سے اوپر کی طرف سے اس کی چلتی اوسط سے ٹوٹ جاتا ہے تو خریدنے کا اشارہ ہوتا ہے۔ جب آر ایس آئی اوپر سے نیچے کی طرف سے اس کی چلتی اوسط سے ٹوٹ جاتا ہے تو فروخت کا اشارہ ہوتا ہے۔

اسی وقت ، اس حکمت عملی نے RSI محوری اوسط سے زیادہ بلین بینڈ کا تعین کیا۔ بلین بینڈ نے معیاری فرق کا حساب کتاب کرکے یہ فیصلہ کیا کہ کیا RSI محوری اوسط نسبتا overcrowded ہے ، اس طرح اعلی خریدنے اور کم فروخت کرنے سے بچنے کے لئے۔

طاقت کا تجزیہ

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

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

خطرے کا تجزیہ

آر ایس آئی محوری اوسط کراسنگ حکمت عملی کا سب سے بڑا خطرہ آر ایس آئی اشارے اور خود چلتی اوسط کی تاخیر ہے۔ جب تیزی سے چلنے والی صورتحال آتی ہے تو ، اشارے کے حساب کتاب اور رجحان کا تعین کچھ تاخیر کا شکار ہوتا ہے۔ اس کے نتیجے میں ، خریدنے کی پوزیشن کو بلند کیا جاتا ہے اور بیچنے کی پوزیشن کو دبایا جاتا ہے۔

ایک اور اہم خطرہ یہ ہے کہ جب رجحان بیل اور ریچھ میں تبدیل ہوتا ہے تو اشارے کی غلطی ہوتی ہے۔ جب مارکیٹ میں تبدیلی آتی ہے اور آر ایس آئی اور اوسط اشارے نے ابھی تک رد عمل ظاہر نہیں کیا ہے تو ، غلط تجارتی سگنل پیدا ہوسکتے ہیں جس سے نقصان ہوتا ہے۔

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

اصلاح کی سمت

RSI محوری اوسط کراسنگ حکمت عملی کو مندرجہ ذیل سمتوں سے بہتر بنایا جاسکتا ہے:

  1. آر ایس آئی پیرامیٹرز کو بہتر بنائیں: آر ایس آئی کی لمبائی کو ایڈجسٹ کرنا حساسیت اور استحکام کو متوازن کرتا ہے

  2. منتقل اوسط پیرامیٹرز کو بہتر بنائیں: اوسط لائن کی قسم اور دورانیہ پیرامیٹرز کو ایڈجسٹ کریں ، اشارے کی ترقی کو بہتر بنائیں

  3. نقصان کی روک تھام کو بڑھانا: متحرک روک تھام یا وقت کی روک تھام کا تعین کریں ، واحد نقصان کو کنٹرول کریں

  4. رجحان کے اشارے کے ساتھ: MACD ، KDJ اور دیگر اشارے شامل کریں ، اور الٹا غلط فہمی سے بچیں۔

  5. کثیر ٹائم فریم کی توثیق: اعلی ٹائم فریموں کا استعمال کرتے ہوئے رجحانات کی نشاندہی کریں اور اس سے بچیں

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2022-11-16 00:00:00
end: 2023-11-22 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
// Copyright (c) 2020-present, Alex Orekhov (everget)
// Corrected Moving Average script may be freely distributed under the terms of the GPL-3.0 license.
strategy('rsisma', shorttitle='rsisma')

ma(source, length, type) =>
    switch type
        "SMA" => ta.sma(source, length)
        "Bollinger Bands" => ta.sma(source, length)
        "EMA" => ta.ema(source, length)
        "SMMA (RMA)" => ta.rma(source, length)
        "WMA" => ta.wma(source, length)
        "VWMA" => ta.vwma(source, length)

rsiLengthInput = input.int(14, minval=1, title="RSI Length", group="RSI Settings")
rsiSourceInput = input.source(close, "Source", group="RSI Settings")
maTypeInput = input.string("SMA", title="MA Type", options=["SMA", "Bollinger Bands", "EMA", "SMMA (RMA)", "WMA", "VWMA"], group="MA Settings")
maLengthInput = input.int(14, title="MA Length", group="MA Settings")
bbMultInput = input.float(2.0, minval=0.001, maxval=50, title="BB StdDev", group="MA Settings")

up = ta.rma(math.max(ta.change(rsiSourceInput), 0), rsiLengthInput)
down = ta.rma(-math.min(ta.change(rsiSourceInput), 0), rsiLengthInput)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
rsiMA = ma(rsi, maLengthInput, maTypeInput)
isBB = maTypeInput == "Bollinger Bands"

plot(rsi, "RSI", color=#7E57C2)
plot(rsiMA, "RSI-based MA", color=color.blue)
rsiUpperBand = hline(70, "RSI Upper Band", color=#787B86)
hline(50, "RSI Middle Band", color=color.new(#787B86, 50))
rsiLowerBand = hline(30, "RSI Lower Band", color=#787B86)
fill(rsiUpperBand, rsiLowerBand, color=color.rgb(126, 87, 194, 90), title="RSI Background Fill")
bbUpperBand = plot(isBB ? rsiMA + ta.stdev(rsi, maLengthInput) * bbMultInput : na, title = "Upper Bollinger Band", color=color.green)
bbLowerBand = plot(isBB ? rsiMA - ta.stdev(rsi, maLengthInput) * bbMultInput : na, title = "Lower Bollinger Band", color=color.green)
fill(bbUpperBand, bbLowerBand, color= isBB ? color.new(color.green, 90) : na, title="Bollinger Bands Background Fill")


long = ta.crossover(rsi, rsiMA)
short = ta.crossunder(rsi, rsiMA)
if long
    strategy.entry("long", strategy.long)
if short
    strategy.close("long", comment = "long TP")

 
// long1 = close * 9
// long2 = long1 / 100
// long3 = long2 + close


//plot(long3,color=color.blue)
// if short
//     strategy.entry("short", strategy.short)
// if long
//     strategy.close("short", comment = "short TP")