یہ حکمت عملی مارکیٹ کے رجحانات کی نشاندہی کرنے اور تجارتی سگنل پیدا کرنے کے لئے کے ڈی جے اشارے اور چلتی اوسط (ایم اے) کا استعمال کرتی ہے۔ جب کے ڈی جے اشارے سے زیادہ خریدی گئی سطح سے تجاوز ہوتا ہے اور قیمت ایم اے سے نیچے ہوتی ہے تو ، ایک مختصر سگنل تیار کیا جاتا ہے۔ جب کے ڈی جے اشارے سے زیادہ فروخت کی سطح سے نیچے ہوتا ہے اور قیمت ایم اے سے اوپر ہوتی ہے تو ، ایک لمبا سگنل تیار کیا جاتا ہے۔ کے ڈی جے اشارے کو ایم اے رجحان کی تصدیق کے ساتھ جوڑ کر ، یہ حکمت عملی مارکیٹ کے رجحانات کو بہتر طور پر گرفت میں لے سکتی ہے جبکہ مختلف مارکیٹوں میں جھوٹے سگنل سے بچ سکتی ہے۔
یہ حکمت عملی مارکیٹ کے رجحانات کو مؤثر طریقے سے پکڑ سکتی ہے اور تجارتی سگنل پیدا کرسکتی ہے۔ زیادہ خرید / فروخت کی معلومات اور رجحان کی سمت کا معقول استعمال مضبوط تجارتی کارکردگی کا باعث بن سکتا ہے۔ تاہم ، ابھی بھی اصلاحات کی گنجائش موجود ہے ، جیسے زیادہ فلٹرنگ حالات ، متحرک پوزیشن مینجمنٹ ، اسٹاپ نقصان اور منافع لینا وغیرہ متعارف کرانا ، تاکہ حکمت عملی کی مضبوطی اور منافع کو مزید بڑھا سکے۔ عملی اطلاق میں ، حکمت عملی کو اس کی تاثیر اور قابل اطلاقیت کی تصدیق کے ل different مختلف مارکیٹ کے ماحول اور آلات کے لئے ٹھیک ٹھیک اور جانچنے کی ضرورت ہے۔
/*backtest start: 2024-04-01 00:00:00 end: 2024-04-30 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("KDJ Trending View with Signals and MA Strategy", overlay=true) // KDJ Settings kdjLength = input.int(9, title="KDJ Length") kdjSignal = input.int(3, title="KDJ Signal") kdjOverbought = input.int(80, title="KDJ Overbought Level") kdjOversold = input.int(20, title="KDJ Oversold Level") // Margin Settings longMargin = input.float(2.0, title="Long Margin", step=0.01) shortMargin = input.float(2.0, title="Short Margin", step=0.01) // MA Settings maLength = input.int(20, title="MA Length") maType = input.string("SMA", title="MA Type (SMA, EMA, etc.)") // Calculate KDJ kdj_highest = ta.highest(high, kdjLength) kdj_lowest = ta.lowest(low, kdjLength) kdjRSV = 100 * ((close - kdj_lowest) / (kdj_highest - kdj_lowest)) kdjK = ta.sma(kdjRSV, kdjSignal) kdjD = ta.sma(kdjK, kdjSignal) kdjJ = 3 * kdjK - 2 * kdjD // Calculate Moving Average ma = ta.sma(close, maLength) // SMA kullanarak ortalama hesaplama // Determine MA Direction maCrossUp = ta.crossover(close, ma) maCrossDown = ta.crossunder(close, ma) // Plot MA with Direction Color Change maColor = maCrossUp ? color.green : maCrossDown ? color.red : color.gray plot(ma, color=maColor, title="Moving Average") // Plot Trading Signals plotshape(kdjJ >= kdjOverbought ? low : na, style=shape.triangleup, location=location.belowbar, color=color.red, size=size.small, title="Short Signal") plotshape(kdjJ <= kdjOversold ? high : na, style=shape.triangledown, location=location.abovebar, color=color.green, size=size.small, title="Long Signal") // Trading Strategy with Manual Margin and MA Strategy if (kdjJ >= kdjOverbought and maCrossDown) strategy.entry("Short", strategy.short, qty=1, comment="Short Entry") if (kdjJ <= kdjOversold and maCrossUp) strategy.entry("Long", strategy.long, qty=1, comment="Long Entry")