ریورس میڈین بریکنگ اسٹریٹیجی

مصنف:چاؤ ژانگ، تاریخ: 2023-12-20 14:48:57
ٹیگز:

img

جائزہ

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

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

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

  1. سی سی آئی اشارے یا رفتار اشارے کو گولڈن کراس ڈیڈ کراس سگنل جاری کرتا ہے تاکہ زیادہ خریدنے یا زیادہ فروخت کی حیثیت کا تعین کیا جاسکے۔

  2. آر ایس آئی اشارے کا اندازہ ہوتا ہے کہ آیا یہ زیادہ خرید یا زیادہ فروخت زون میں ہے۔ 65 سے زیادہ خرید اور 35 سے کم فروخت۔

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

  4. غلط بریک آؤٹ کا پیچھا کرنے سے بچنے کے لئے آر ایس آئی اشارے کی باقاعدہ انحراف کا پتہ لگائیں.

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

فوائد کا تجزیہ

اس حکمت عملی کا سب سے بڑا فائدہ یہ ہے کہ یہ نسبتا high اعلی جیت کی شرح کے ساتھ الٹ جانے کے مواقع کا تعین کرنے کے لئے متعدد اشارے کو جوڑتا ہے۔ خاص طور پر:

  1. متعدد عوامل کا استعمال کرتے ہوئے وشوسنییتا زیادہ ہے۔ صرف ایک ہی اشارے پر انحصار کرنے سے گریز کریں تاکہ غلط فیصلے کو کم کیا جاسکے۔

  2. رجحان کی تبدیلی میں جیتنے کا زیادہ امکان ہوتا ہے۔ یہ ایک نسبتا reliable قابل اعتماد تجارتی طریقہ ہے۔

  3. اختلافات کا پتہ لگانے سے جھوٹے بریک آؤٹ کا پیچھا کرنے سے گریز ہوتا ہے اور نظام کے خطرے کو کم کیا جاتا ہے۔

  4. سٹاپ نقصان کا طریقہ کار خطرے کو کنٹرول کرتا ہے۔ ایک ٹکٹ کے نقصان کو کم سے کم کر سکتا ہے۔

خطرے کا تجزیہ

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

  1. الٹ ٹائمنگ پوائنٹ پر فیصلے کی غلطیاں۔ اسٹاپ نقصان کو متحرک کیا جاسکتا ہے۔ مناسب طریقے سے اسٹاپ نقصان کی حد کو بڑھانا۔

  2. بولنگر بینڈ پیرامیٹرز کو غیر مناسب طریقے سے مقرر کیا جاتا ہے، عام قیمت کی کارروائی کو غیر معمولی سمجھا جاتا ہے۔ پیرامیٹرز کو مارکیٹ کی اتار چڑھاؤ کو پورا کرنا چاہئے۔

  3. تجارت کی تعداد نسبتا high زیادہ ہوسکتی ہے۔ تجارت کی تعدد کو کم کرنے کے لئے سی سی آئی وغیرہ کے فیصلے کی حد کو مناسب طریقے سے بڑھانا۔

  4. لمبی مختصر عدم توازن۔ فیصلہ کریں کہ پیرامیٹرز تاریخی اعداد و شمار کے مطابق ہیں یا نہیں۔

اصلاح

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

  1. پیرامیٹرز کو خود بخود بہتر بنانے کے لئے مشین لرننگ الگورتھم کا استعمال کریں۔ مصنوعی تجرباتی غلطیوں سے گریز کریں۔

  2. شیل انڈیکس، طول و عرض انڈیکس وغیرہ میں اضافہ کریں تاکہ زیادہ خریدنے اور زیادہ فروخت کرنے کی طاقت کا تعین کیا جاسکے۔

  3. تجارت کے حجم کے اشارے شامل کریں تاکہ واپسی کی وشوسنییتا کا تعین کیا جاسکے، جیسے حجم، کھلی دلچسپی وغیرہ۔

  4. مارکیٹ کے جذبات کا اندازہ لگانے کے لیے بلاکچین ڈیٹا کو شامل کریں۔ حکمت عملی کی موافقت کو بہتر بنائیں۔

  5. مارکیٹ کی اتار چڑھاؤ کی بنیاد پر موافقت پذیر سٹاپ نقصان کا طریقہ کار متعارف کروانا۔

خلاصہ

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


/*backtest
start: 2023-12-12 00:00:00
end: 2023-12-19 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy(title='BroTheJo Strategy', shorttitle='BTJ INV', overlay=true)

// Input settings
stopLossInPips = input.int(10, minval=0, title='Stop Loss (in Pips)')
ccimomCross = input.string('CCI', 'Entry Signal Source', options=['CCI', 'Momentum'])
ccimomLength = input.int(10, minval=1, title='CCI/Momentum Length')
useDivergence = input.bool(false, title='Find Regular Bullish/Bearish Divergence')
rsiOverbought = input.int(65, minval=1, title='RSI Overbought Level')
rsiOversold = input.int(35, minval=1, title='RSI Oversold Level')
rsiLength = input.int(14, minval=1, title='RSI Length')
plotMeanReversion = input.bool(true, 'Plot Mean Reversion Bands on the chart')
emaPeriod = input(200, title='Lookback Period (EMA)')
bandMultiplier = input.float(1.6, title='Outer Bands Multiplier')

// CCI and Momentum calculation
momLength = ccimomCross == 'Momentum' ? ccimomLength : 10
mom = close - close[momLength]
cci = ta.cci(close, ccimomLength)
ccimomCrossUp = ccimomCross == 'Momentum' ? ta.cross(mom, 0) : ta.cross(cci, 0)
ccimomCrossDown = ccimomCross == 'Momentum' ? ta.cross(0, mom) : ta.cross(0, cci)

// RSI calculation
src = close
up = ta.rma(math.max(ta.change(src), 0), rsiLength)
down = ta.rma(-math.min(ta.change(src), 0), rsiLength)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - 100 / (1 + up / down)
oversoldAgo = rsi[0] <= rsiOversold or rsi[1] <= rsiOversold or rsi[2] <= rsiOversold or rsi[3] <= rsiOversold
overboughtAgo = rsi[0] >= rsiOverbought or rsi[1] >= rsiOverbought or rsi[2] >= rsiOverbought or rsi[3] >= rsiOverbought

// Regular Divergence Conditions
bullishDivergenceCondition = rsi[0] > rsi[1] and rsi[1] < rsi[2]
bearishDivergenceCondition = rsi[0] < rsi[1] and rsi[1] > rsi[2]

// Mean Reversion Indicator
meanReversion = plotMeanReversion ? ta.ema(close, emaPeriod) : na
stdDev = plotMeanReversion ? ta.stdev(close, emaPeriod) : na
upperBand = plotMeanReversion ? meanReversion + stdDev * bandMultiplier : na
lowerBand = plotMeanReversion ? meanReversion - stdDev * bandMultiplier : na

// Entry Conditions
prevHigh = ta.highest(high, 1)
prevLow = ta.lowest(low, 1)
shortEntryCondition = ccimomCrossUp and oversoldAgo and (not useDivergence or bullishDivergenceCondition) and (prevHigh >= meanReversion) and (prevLow >= meanReversion)
longEntryCondition = ccimomCrossDown and overboughtAgo and (not useDivergence or bearishDivergenceCondition) and (prevHigh <= meanReversion) and (prevLow <= meanReversion)

// Plotting
oldShortEntryCondition = ccimomCrossUp and oversoldAgo and (not useDivergence or bullishDivergenceCondition)
oldLongEntryCondition = ccimomCrossDown and overboughtAgo and (not useDivergence or bearishDivergenceCondition)
plotshape(oldLongEntryCondition, title='BUY', style=shape.triangleup, text='B', location=location.belowbar, color=color.new(color.lime, 0), textcolor=color.new(color.white, 0), size=size.tiny)
plotshape(oldShortEntryCondition, title='SELL', style=shape.triangledown, text='S', location=location.abovebar, color=color.new(color.red, 0), textcolor=color.new(color.white, 0), size=size.tiny)

// Strategy logic
if (longEntryCondition)
    stopLoss = close - stopLossInPips
    strategy.entry("Buy", strategy.long)
    strategy.exit("exit", "Buy", stop=stopLoss)
if (shortEntryCondition)
    stopLoss = close + stopLossInPips
    strategy.entry("Sell", strategy.short)
    strategy.exit("exit", "Sell", stop=stopLoss)

// Close all open positions when outside of bands
closeAll = (high >= upperBand) or (low <= lowerBand)

if (closeAll)
    strategy.close_all("Take Profit/Cut Loss")

// Plotting
plot(upperBand, title='Upper Band', color=color.fuchsia, linewidth=1)
plot(meanReversion, title='Mean', color=color.gray, linewidth=1)
plot(lowerBand, title='Lower Band', color=color.blue, linewidth=1)


مزید