یہ حکمت عملی ایک مقداری تجارتی نظام ہے جو اوسط ریورس کے اصولوں کو تکنیکی اشارے ایم اے سی ڈی اور اے ٹی آر کے ساتھ جوڑتا ہے۔ یہ قیمتوں میں انحراف کی نشاندہی کرنے کے لئے بولنگر بینڈ ، رفتار کی تصدیق کے لئے ایم اے سی ڈی ، اور متحرک رسک مینجمنٹ کے لئے اے ٹی آر کا استعمال کرتا ہے۔ بنیادی تصور یہ ہے کہ جب قیمتوں میں نمایاں انحراف ظاہر ہوتا ہے تو اوسط ریورس کے مواقع کو پکڑنا ، متعدد تکنیکی اشارے کے ذریعہ توثیق کی جاتی ہے۔
اس حکمت عملی میں تین تکنیکی اشارے مل کر کام کرتے ہیں۔ پہلا ، بولنگر بینڈ قیمتوں میں نمایاں انحراف کا تعین کرتے ہیں۔ دوسرا ، ایم اے سی ڈی قیمتوں کی رفتار کی توثیق کرتا ہے ، اس بات کو یقینی بناتا ہے کہ تجارت کی سمت مارکیٹ کے رجحانات کے مطابق ہو۔ آخر میں ، اے ٹی آر متحرک اسٹاپ نقصان اور منافع لینے کی سطح طے کرتا ہے۔ خاص طور پر ، جب قیمت نیچے بولنگر بینڈ سے نیچے ہوتی ہے تو لانگ سگنل پیدا ہوتے ہیں جب ایم اے سی ڈی لائن اس کی سگنل لائن سے اوپر ہوتی ہے ، جبکہ جب قیمت اوپری بولنگر بینڈ سے اوپر ہوتی ہے تو مختصر سگنل ہوتے ہیں۔ ایم اے سی ڈی لائن اپنی سگنل لائن سے نیچے ہوتی ہے۔ اے ٹی آر متحرک طور پر مارکیٹ کی اتار چڑھاؤ کی بنیاد پر اسٹاپ نقصان اور منافع لینے کی سطح کو ایڈجسٹ کرتی ہے۔
یہ حکمت عملی کلاسیکی تکنیکی تجزیہ کو جدید مقداری تجارتی طریقوں کے ساتھ جوڑتی ہے۔ متعدد اشارے کے مربوط استعمال کے ذریعے ، یہ ایک اشارے کی حدود پر قابو پانے کے دوران اوسط ریورس کے بنیادی فوائد کو برقرار رکھتی ہے۔ یہ حکمت عملی انتہائی توسیع پذیر ہے ، پیرامیٹر کی اصلاح اور اضافی فنکشنل ماڈیولز کے ذریعے مسلسل بہتری کے قابل ہے۔ دریں اثنا ، اس کا جامع رسک کنٹرول میکانزم استحکام کو یقینی بناتا ہے۔
/*backtest start: 2024-11-12 00:00:00 end: 2024-12-11 08:00:00 period: 3h basePeriod: 3h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Enhanced Mean Reversion with MACD and ATR", overlay=true) // Nastavenia Bollinger Bands bbLength = input(20, title="Bollinger Bands Length") bbMult = input(2, title="Bollinger Bands Multiplier") basis = ta.sma(close, bbLength) dev = ta.stdev(close, bbLength) upperBand = basis + bbMult * dev lowerBand = basis - bbMult * dev // MACD indikátor macdShort = input(12, title="MACD Short Length") macdLong = input(26, title="MACD Long Length") macdSignal = input(9, title="MACD Signal Length") [macdLine, signalLine, _] = ta.macd(close, macdShort, macdLong, macdSignal) // ATR pre dynamický Stop Loss a Take Profit atrLength = input(14, title="ATR Length") atrMultiplier = input(1.5, title="ATR Multiplier") atrValue = ta.atr(atrLength) // Vstupné podmienky pre long pozície longCondition = ta.crossover(close, lowerBand) and macdLine > signalLine if (longCondition) strategy.entry("Long", strategy.long) // Vstupné podmienky pre short pozície shortCondition = ta.crossunder(close, upperBand) and macdLine < signalLine if (shortCondition) strategy.entry("Short", strategy.short) // Dynamický Stop Loss a Take Profit na základe ATR longSL = strategy.position_avg_price - atrValue * atrMultiplier longTP = strategy.position_avg_price + atrValue * atrMultiplier * 2 shortSL = strategy.position_avg_price + atrValue * atrMultiplier shortTP = strategy.position_avg_price - atrValue * atrMultiplier * 2 // Pridanie stop loss a take profit if (strategy.position_size > 0) strategy.exit("Take Profit/Stop Loss", "Long", stop=longSL, limit=longTP) if (strategy.position_size < 0) strategy.exit("Take Profit/Stop Loss", "Short", stop=shortSL, limit=shortTP) // Vizualizácia Bollinger Bands a MACD plot(upperBand, color=color.red, title="Upper Bollinger Band") plot(lowerBand, color=color.green, title="Lower Bollinger Band") plot(basis, color=color.blue, title="Bollinger Basis") hline(0, "MACD Zero Line", color=color.gray) plot(macdLine - signalLine, color=color.blue, title="MACD Histogram") plot(macdLine, color=color.red, title="MACD Line") plot(signalLine, color=color.green, title="Signal Line") // Generovanie alertov alertcondition(longCondition, title="Long Alert", message="Long Entry Signal") alertcondition(shortCondition, title="Short Alert", message="Short Entry Signal")