وسائل لوڈ ہو رہے ہیں... لوڈنگ...

سپر ٹرینڈ ٹرپل بڑھانے کی حکمت عملی کے بعد متحرک رجحان

مصنف:چاؤ ژانگ، تاریخ: 2025-01-17 14:37:39
ٹیگز:اے ٹی آرای ایم اےسپر ٹرینڈSLٹی ایس

 Dynamic Trend Following SuperTrend Triple Enhancement Strategy

جائزہ

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

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

یہ حکمت عملی مندرجہ ذیل بنیادی اجزاء پر مبنی ہے: ٹرینڈ کی سمت میں تبدیلیوں کی نشاندہی کرنے کے لئے سپر ٹرینڈ اشارے، جو ATR مدت 16 اور عنصر 3.02 کے ساتھ شمار کیا جاتا ہے رجحان کی سمت کی تصدیق کے لئے رجحان فلٹر کے طور پر 49 پیریڈ ای ایم اے 3۔ ہر تجارت کے لئے بنیادی تحفظ فراہم کرنے کے لئے 50 پوائنٹس پر مقرر ابتدائی اسٹاپ نقصان ٹریلنگ سٹاپ نقصان 70 پوائنٹس منافع کے بعد چالو، متحرک طور پر قیمت کی تبدیلیوں کو ٹریک

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

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

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

حکمت عملی کے خطرات

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

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

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

خلاصہ

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


/*backtest
start: 2024-01-17 00:00:00
end: 2025-01-15 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}]
*/

//@version=5
strategy(" nifty supertrend triton", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

// Input parameters
atrPeriod = input.int(16, "ATR Length", step=1)
factor = input.float(3.02, "Factor", step=0.01)
maPeriod = input.int(49, "Moving Average Period", step=1)
trailPoints = input.int(70, "Trailing Points", step=1)  // Points after which trailing stop activates
initialStopLossPoints = input.int(50, "Initial Stop Loss Points", step=1)  // Initial stop loss of 50 points

// Calculate Supertrend
[_, direction] = ta.supertrend(factor, atrPeriod)

// Calculate EMA
ema = ta.ema(close, maPeriod)

// Variables to track stop loss levels
var float trailStop = na
var float entryPrice = na
var float initialStopLoss = na  // To track the initial stop loss

// Generate buy and sell signals
if ta.change(direction) < 0 and close > ema
    if strategy.position_size == 0  // Only open a new long position if no current position
        strategy.entry("Buy", strategy.long)
        entryPrice := close  // Record the entry price for the long position
        initialStopLoss := entryPrice - initialStopLossPoints  // Set initial stop loss for long position
        trailStop := na  // Reset trailing stop for long

if ta.change(direction) > 0 and close < ema
    if strategy.position_size == 0  // Only open a new short position if no current position
        strategy.entry("Sell", strategy.short)
        entryPrice := close  // Record the entry price for the short position
        initialStopLoss := entryPrice + initialStopLossPoints  // Set initial stop loss for short position
        trailStop := na  // Reset trailing stop for short

// Apply initial stop loss for long positions
if (strategy.position_size > 0)  // Check if in a long position
    if close <= initialStopLoss  // If the price drops to or below the initial stop loss
        strategy.close("Buy", "Initial Stop Loss Hit")  // Exit the long position

// Apply trailing stop logic for long positions
if (strategy.position_size > 0)  // Check if in a long position
    if (close - entryPrice >= trailPoints)  // If the price has moved up by the threshold
        trailStop := na(trailStop) ? close - trailPoints : math.max(trailStop, close - trailPoints)  // Adjust trailing stop upwards
    if not na(trailStop) and close < trailStop  // If the price drops below the trailing stop
        strategy.close("Buy", "Trailing Stop Hit")  // Exit the long position

// Apply initial stop loss for short positions
if (strategy.position_size < 0)  // Check if in a short position
    if close >= initialStopLoss  // If the price rises to or above the initial stop loss
        strategy.close("Sell", "Initial Stop Loss Hit")  // Exit the short position

// Apply trailing stop logic for short positions
if (strategy.position_size < 0)  // Check if in a short position
    if (entryPrice - close >= trailPoints)  // If the price has moved down by the threshold
        trailStop := na(trailStop) ? close + trailPoints : math.min(trailStop, close + trailPoints)  // Adjust trailing stop downwards
    if not na(trailStop) and close > trailStop  // If the price rises above the trailing stop
        strategy.close("Sell", "Trailing Stop Hit")  // Exit the short position


متعلقہ

مزید