EMA اور Stochastic RSI پر مبنی تجارتی حکمت عملی کے بعد کثیر مدتی رجحان


تخلیق کی تاریخ: 2024-03-08 17:32:38 آخر میں ترمیم کریں: 2024-03-08 17:32:38
کاپی: 3 کلکس کی تعداد: 772
1
پر توجہ دیں
1617
پیروکار

EMA اور Stochastic RSI پر مبنی تجارتی حکمت عملی کے بعد کثیر مدتی رجحان

حکمت عملی کا جائزہ

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

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

  1. فاسٹ ای ایم اے اور سست ای ایم اے کا حساب لگائیں۔ فاسٹ ای ایم اے کی ڈیفالٹ پیرامیٹر 12 ہے ، سست ای ایم اے کی ڈیفالٹ پیرامیٹر 25 ہے ، جو عملی طور پر مارکیٹ کی خصوصیات اور تجارت کی فریکوئنسی کے مطابق ایڈجسٹ کیا جاسکتا ہے۔

  2. ٹرانسفارمرز کے لئے ایک اہم سوال:

  • جب فاسٹ ای ایم اے پر سست ای ایم اے سے گزرتا ہے تو ، متعدد سگنل پیدا ہوتا ہے
  • جب تیز رفتار ای ایم اے کے نیچے سست رفتار ای ایم اے سے گزرتا ہے تو ، ایک خالی سگنل پیدا ہوتا ہے
  1. ٹرینڈ کی تصدیق: جب زیادہ دیکھنے / کم دیکھنے کا اشارہ ظاہر ہوتا ہے تو ، اس بات کی تصدیق کرنے کے لئے کہ رجحان کی تشکیل کو یقینی بنانے کے لئے 2 مسلسل زیادہ دیکھنے / کم دیکھنے والی K لائنوں کی ضرورت ہوتی ہے۔ اس سے جعلی سگنل کو فلٹر کرنے میں مدد ملتی ہے۔

  2. بے ترتیب آر ایس آئی کو بطور معاون فیصلہ استعمال کریں:

  • جب بے ترتیب آر ایس آئی %K کی قیمت پر %D کی قیمت گزر جاتی ہے ، اور %K کی قیمت 20 سے کم ہوتی ہے تو ، ایک اوور سیل سگنل پیدا ہوتا ہے ، جس سے ممکنہ طور پر اوپر کی طرف مڑنے کا اشارہ ہوتا ہے
  • جب بے ترتیب RSI %K %D سے نیچے جاتا ہے اور %K 80 سے اوپر ہوتا ہے تو ، اوور خرید سگنل پیدا ہوتا ہے ، جس سے ممکنہ طور پر زوال کی واپسی کی نشاندہی ہوتی ہے
  1. تجارت کی حکمت عملی:
  • جب ای ایم اے نے زیادہ خریدنے کا اشارہ دیا ہے اور بے ترتیب آر ایس آئی اوور بائی زون میں نہیں ہے تو زیادہ پوزیشن کھولیں
  • جب ای ایم اے میں بُک سگنل ہوتا ہے اور بے ترتیب آر ایس آئی اوور سیل زون میں نہیں ہوتا ہے تو پوزیشن خالی کریں

اسٹریٹجک فوائد

  1. ایک ہی وقت میں دو مختلف ادوار کے ای ایم اے کا استعمال کرتے ہوئے ، رجحانات کی گرفتاری کی حساسیت اور وشوسنییتا کو بہتر طور پر متوازن کیا جاسکتا ہے۔ تجزیہ سے پتہ چلتا ہے کہ 1225 دورانیے کے ای ایم اے کا مجموعہ درمیانی اور طویل مدتی رجحانات کو بہتر طور پر پکڑ سکتا ہے۔

  2. رجحانات کی تصدیق کے طریقہ کار سے زیادہ تر جعلی سگنل کو مؤثر طریقے سے فلٹر کیا جاسکتا ہے ، جس سے حکمت عملی کی کامیابی کی شرح میں اضافہ ہوتا ہے۔

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

  4. حکمت عملی کی منطق سادہ ہے ، اس میں کم پیرامیٹرز ہیں ، اسے سمجھنا اور اس پر عمل درآمد کرنا آسان ہے ، اور یہ متعدد مارکیٹوں اور اقسام کے لئے موزوں ہے۔

خطرے کا تجزیہ

  1. ای ایم اے ایک پیچھے رہ جانے والا اشارے ہے ، جس میں رجحان کی تبدیلی کے ابتدائی مرحلے میں ایک بڑی سلائڈ پوائنٹ ہوسکتی ہے۔

  2. رجحان سازی کی حکمت عملی عام طور پر ہلچل والے شہروں میں کام کرتی ہے۔ اس حکمت عملی میں ہلچل والے شہروں کے لئے خصوصی فیصلے کی کمی ہے۔

  3. بے ترتیب آر ایس آئی مارکیٹ میں شدید اتار چڑھاؤ کے دوران غلط ہوسکتی ہے ، جس سے فیصلے کی کیفیت متاثر ہوتی ہے۔

  4. فکسڈ پیرامیٹرز تمام مارکیٹ کے حالات کے مطابق نہیں ہوسکتے ہیں اور مارکیٹ کی خصوصیات کے مطابق متحرک ایڈجسٹمنٹ کی ضرورت ہوتی ہے۔

اصلاح کی سمت

  1. اے ٹی آر جیسے اتار چڑھاؤ کے اشارے متعارف کروائیں ، اور مارکیٹ کی مختلف رفتار کو ایڈجسٹ کرنے کے لئے ای ایم اے پیرامیٹرز کو اتار چڑھاؤ کی رفتار کے مطابق ایڈجسٹ کریں۔

  2. زلزلے کے بازاروں کے بارے میں زیادہ سے زیادہ فیصلے کریں ، جیسے برن بینڈ کے کھلنے کی سمت کو جوڑیں ، اور زلزلے کے بازاروں میں کثرت سے تجارت سے گریز کریں۔

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

  4. مارکیٹ کی وابستگی کو مدنظر رکھتے ہوئے ، کثیر نوعیت کے رابطے کے اشارے متعارف کروائیں ، اور نظام کی خطرے سے بچنے کی صلاحیت کو بڑھا دیں۔

خلاصہ کریں۔

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

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

//@version=5
strategy('[Jacky] Trader XO Macro Trend Scanner', overlay=true)

// Variables
var ok = 0
var countBuy = 0
var countSell = 0
src = input(close, title='OHLC Type')
i_fastEMA = input(12, title='Fast EMA')
i_slowEMA = input(25, title='Slow EMA')
i_defEMA = input(25, title='Consolidated EMA')

// Allow the option to show single or double EMA
i_bothEMAs = input(title='Show Both EMAs', defval=true)

// Define EMAs
v_fastEMA = ta.ema(src, i_fastEMA)
v_slowEMA = ta.ema(src, i_slowEMA)
v_biasEMA = ta.ema(src, i_defEMA)

// Color the EMAs
emaColor = v_fastEMA > v_slowEMA ? color.green : v_fastEMA < v_slowEMA ? color.red : #FF530D

// Plot EMAs
plot(i_bothEMAs ? na : v_biasEMA, color=emaColor, linewidth=3, title='Consolidated EMA')
plot(i_bothEMAs ? v_fastEMA : na, title='Fast EMA', color=emaColor)
plot(i_bothEMAs ? v_slowEMA : na, title='Slow EMA', color=emaColor)

// Colour the bars
buy = v_fastEMA > v_slowEMA
sell = v_fastEMA < v_slowEMA

if buy
    countBuy += 1
    countBuy

if buy
    countSell := 0
    countSell

if sell
    countSell += 1
    countSell

if sell
    countBuy := 0
    countBuy

buysignal = countBuy < 2 and countBuy > 0 and countSell < 1 and buy and not buy[1]
sellsignal = countSell > 0 and countSell < 2 and countBuy < 1 and sell and not sell[1]

barcolor(buysignal ? color.green : na)
barcolor(sellsignal ? color.red : na)

// Strategy backtest
if (buysignal)
    strategy.entry("Buy", strategy.long)

if (sellsignal)
    strategy.entry("Sell", strategy.short)

// Plot Bull/Bear

plotshape(buysignal, title='Bull', text='Bull', style=shape.triangleup, location=location.belowbar, color=color.new(color.green, 0), textcolor=color.new(color.black, 0), size=size.tiny)
plotshape(sellsignal, title='Bear', text='Bear', style=shape.triangledown, location=location.abovebar, color=color.new(color.red, 0), textcolor=color.new(color.black, 0), size=size.tiny)

bull = countBuy > 1
bear = countSell > 1

barcolor(bull ? color.green : na)
barcolor(bear ? color.red : na)

// Set Alerts

alertcondition(ta.crossover(v_fastEMA, v_slowEMA), title='Bullish EMA Cross', message='Bullish EMA crossover')
alertcondition(ta.crossunder(v_fastEMA, v_slowEMA), title='Bearish EMA Cross', message='Bearish EMA Crossover')

// Stoch RSI code

smoothK = input.int(3, 'K', minval=1)
smoothD = input.int(3, 'D', minval=1)
lengthRSI = input.int(14, 'RSI Length', minval=1)
lengthStoch = input.int(14, 'Stochastic Length', minval=1)

rsi1 = ta.rsi(src, lengthRSI)
k = ta.sma(ta.stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK)
d = ta.sma(k, smoothD)

bandno0 = input.int(80, minval=1, title='Upper Band', group='Bands (change this instead of length in Style for Stoch RSI colour to work properly)')
bandno2 = input.int(50, minval=1, title='Middle Band', group='Bands (change this instead of length in Style for Stoch RSI colour to work properly)')
bandno1 = input.int(20, minval=1, title='Lower Band', group='Bands (change this instead of length in Style for Stoch RSI colour to work properly)')

// Alerts

crossoverAlertBgColourMidOnOff = input.bool(title='Crossover Alert Background Colour (Middle Level) [ON/OFF]', group='Crossover Alerts', defval=false)
crossoverAlertBgColourOBOSOnOff = input.bool(title='Crossover Alert Background Colour (OB/OS Level) [ON/OFF]', group='Crossover Alerts', defval=false)

crossoverAlertBgColourGreaterThanOnOff = input.bool(title='Crossover Alert >input [ON/OFF]', group='Crossover Alerts', defval=false)
crossoverAlertBgColourLessThanOnOff = input.bool(title='Crossover Alert <input [ON/OFF]', group='Crossover Alerts', defval=false)

maTypeChoice = input.string('EMA', title='MA Type', group='Moving Average', options=['EMA', 'WMA', 'SMA', 'None'])
maSrc = input.source(close, title='MA Source', group='Moving Average')
maLen = input.int(200, minval=1, title='MA Length', group='Moving Average')

maValue = if maTypeChoice == 'EMA'
    ta.ema(maSrc, maLen)
else if maTypeChoice == 'WMA'
    ta.wma(maSrc, maLen)
else if maTypeChoice == 'SMA'
    ta.sma(maSrc, maLen)
else
    0

crossupCHECK = maTypeChoice == 'None' or open > maValue and maTypeChoice != 'None'
crossdownCHECK = maTypeChoice == 'None' or open < maValue and maTypeChoice != 'None'

crossupalert = crossupCHECK and ta.crossover(k, d) and (k < bandno2 or d < bandno2)
crossdownalert = crossdownCHECK and ta.crossunder(k, d) and (k > bandno2 or d > bandno2)
crossupOSalert = crossupCHECK and ta.crossover(k, d) and (k < bandno1 or d < bandno1)
crossdownOBalert = crossdownCHECK and ta.crossunder(k, d) and (k > bandno0 or d > bandno0)

aboveBandalert = ta.crossunder(k, bandno0)
belowBandalert = ta.crossover(k, bandno1)

bgcolor(color=crossupalert and crossoverAlertBgColourMidOnOff ? #4CAF50 : crossdownalert and crossoverAlertBgColourMidOnOff ? #FF0000 : na, title='Crossover Alert Background Colour (Middle Level)', transp=70)
bgcolor(color=crossupOSalert and crossoverAlertBgColourOBOSOnOff ? #fbc02d : crossdownOBalert and crossoverAlertBgColourOBOSOnOff ? #000000 : na, title='Crossover Alert Background Colour (OB/OS Level)', transp=70)

bgcolor(color=aboveBandalert and crossoverAlertBgColourGreaterThanOnOff ? #ff0014 : crossdownalert and crossoverAlertBgColourMidOnOff ? #FF0000 : na, title='Crossover Alert - K > Upper level', transp=70)
bgcolor(color=belowBandalert and crossoverAlertBgColourLessThanOnOff ? #4CAF50 : crossdownalert and crossoverAlertBgColourMidOnOff ? #FF0000 : na, title='Crossover Alert - K < Lower level', transp=70)

alertcondition(crossupalert or crossdownalert, title='Stoch RSI Crossover', message='STOCH RSI CROSSOVER')