3 10.0 اوسیلیٹر پروفائل ریورسنگ حکمت عملی مختلف ٹائم فریموں میں MACD اشارے کا حساب لگاتے ہوئے ممکنہ قیمتوں میں ردوبدل کی نشاندہی کرتی ہے۔ یہ زیادہ سرمایہ کاری کی کارکردگی کے حصول کے لئے رجحان کے بعد اسٹاپ نقصان کا نقطہ نظر اپناتا ہے۔
یہ حکمت عملی تیز اور سست لائنوں اور ایم اے سی ڈی اشارے اور سگنل لائن کی تعمیر کے لئے 3 اور 10 ادوار کے ایس ایم اے چلنے والے اوسط کا حساب لگاتی ہے۔ جب تیز لائن اور سگنل لائن صفر لائن کو اوپر یا نیچے عبور کرتی ہے تو ، اس سے یہ ظاہر ہوتا ہے کہ قیمت ایک اہم مقام پر پہنچ گئی ہے اور الٹ پڑسکتی ہے۔ اس کے علاوہ ، اس میں الٹ سگنل کی وشوسنییتا کی نشاندہی کرنے کے لئے حجم دباؤ کا فیصلہ ، آر ایس آئی انڈیکس وغیرہ بھی شامل ہے۔ جب الٹ سگنل کچھ وشوسنییتا کی ضروریات کو پورا کرتے ہیں تو یہ لمبا یا مختصر ہوجاتا ہے۔
خاص طور پر، حکمت عملی مندرجہ ذیل کے ذریعے قیمتوں میں تبدیلی کا فیصلہ کرتی ہے:
جب الٹ سگنل کی وشوسنییتا زیادہ ہوتی ہے تو ، حکمت عملی اعلی منافع کے حصول کے لئے رجحان کے بعد اسٹاپ نقصان کو اپناتی ہے۔
اس حکمت عملی کے مندرجہ ذیل فوائد ہیں:
کچھ خطرات بھی ہیں:
خطرات کو مندرجہ ذیل طریقوں سے کم کیا جا سکتا ہے:
اسٹریٹیجی کو مزید بہتر بنانے کے لئے مندرجہ ذیل اقدامات کئے جاسکتے ہیں:
ملٹی ٹائم فریم ایم اے سی ڈی زیرو کراسنگ ریورسنگ حکمت عملی ملٹی انڈیکیٹر تشخیص کے ذریعہ انٹری ٹائمنگ کا تعین کرنے کے لئے قیمت ، حجم اور اتار چڑھاؤ کے اشارے پر جامع طور پر غور کرتی ہے۔ یہ کافی منافع بخش ہونے پر بروقت اسٹاپ نقصان طے کرتی ہے۔ یہ ریورس مارکیٹوں کے دوران اچھی واپسی حاصل کرسکتی ہے۔ مشین لرننگ اور کلیدی سطح کے انضمام میں مزید بہتری سے منافع بخش ہونے کے ساتھ ساتھ خطرات اور تجارتی تعدد کو بھی کم کیا جاسکتا ہے۔
/*backtest start: 2023-02-11 00:00:00 end: 2024-02-17 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("3 10.0 Oscillator Profile Flagging", shorttitle="3 10.0 Oscillator Profile Flagging", overlay=false) signalBiasValue = input(title="Signal Bias", defval=0.26) macdBiasValue = input(title="MACD Bias", defval=0.8) shortLookBack = input( title="Short LookBack", defval=3) longLookBack = input( title="Long LookBack", defval=10.0) takeProfit = input( title="Take Profit", defval=0.8) stopLoss = input( title="Stop Loss", defval=0.75) fast_ma = ta.sma(close, 3) slow_ma = ta.sma(close, 10) macd = fast_ma - slow_ma signal = ta.sma(macd, 16) hline(0, "Zero Line", color = color.black) buyVolume = volume*((close-low)/(high-low)) sellVolume = volume*((high-close)/(high-low)) buyVolSlope = buyVolume - buyVolume[1] sellVolSlope = sellVolume - sellVolume[1] signalSlope = ( signal - signal[1] ) macdSlope = ( macd - macd[1] ) plot(macd, color=color.blue, title="Total Volume") plot(signal, color=color.orange, title="Total Volume") intrabarRange = high - low rsi = ta.rsi(close, 14) rsiSlope = rsi - rsi[1] getRSISlopeChange(lookBack) => j = 0 for i = 0 to lookBack if ( rsi[i] - rsi[ i + 1 ] ) > -5 j += 1 j getBuyerVolBias(lookBack) => j = 0 for i = 1 to lookBack if buyVolume[i] > sellVolume[i] j += 1 j getSellerVolBias(lookBack) => j = 0 for i = 1 to lookBack if sellVolume[i] > buyVolume[i] j += 1 j getVolBias(lookBack) => float b = 0.0 float s = 0.0 for i = 1 to lookBack b += buyVolume[i] s += sellVolume[i] b > s getSignalBuyerBias(lookBack) => j = 0 for i = 1 to lookBack if signal[i] > signalBiasValue j += 1 j getSignalSellerBias(lookBack) => j = 0 for i = 1 to lookBack if signal[i] < ( 0.0 - signalBiasValue ) j += 1 j getSignalNoBias(lookBack) => j = 0 for i = 1 to lookBack if signal[i] < signalBiasValue and signal[i] > ( 0.0 - signalBiasValue ) j += 1 j getPriceRising(lookBack) => j = 0 for i = 1 to lookBack if close[i] > close[i + 1] j += 1 j getPriceFalling(lookBack) => j = 0 for i = 1 to lookBack if close[i] < close[i + 1] j += 1 j getRangeNarrowing(lookBack) => j = 0 for i = 1 to lookBack if intrabarRange[i] < intrabarRange[i + 1] j+= 1 j getRangeBroadening(lookBack) => j = 0 for i = 1 to lookBack if intrabarRange[i] > intrabarRange[i + 1] j+= 1 j bool isNegativeSignalReversal = signalSlope < 0.0 and signalSlope[1] > 0.0 bool isNegativeMacdReversal = macdSlope < 0.0 and macdSlope[1] > 0.0 bool isPositiveSignalReversal = signalSlope > 0.0 and signalSlope[1] < 0.0 bool isPositiveMacdReversal = macdSlope > 0.0 and macdSlope[1] < 0.0 bool hasBearInversion = signalSlope > 0.0 and macdSlope < 0.0 bool hasBullInversion = signalSlope < 0.0 and macdSlope > 0.0 bool hasSignalBias = math.abs(signal) >= signalBiasValue bool hasNoSignalBias = signal < signalBiasValue and signal > ( 0.0 - signalBiasValue ) bool hasSignalBuyerBias = hasSignalBias and signal > 0.0 bool hasSignalSellerBias = hasSignalBias and signal < 0.0 bool hasPositiveMACDBias = macd > macdBiasValue bool hasNegativeMACDBias = macd < ( 0.0 - macdBiasValue ) bool hasBullAntiPattern = ta.crossunder(macd, signal) bool hasBearAntiPattern = ta.crossover(macd, signal) bool hasSignificantBuyerVolBias = buyVolume > ( sellVolume * 1.5 ) bool hasSignificantSellerVolBias = sellVolume > ( buyVolume * 1.5 ) // 393.60 Profit 52.26% 15m if ( hasBullInversion and rsiSlope > 1.5 and volume > 300000.0 ) strategy.entry("15C1", strategy.long, qty=10.0) strategy.exit("TPS", "15C1", limit=strategy.position_avg_price + takeProfit, stop=strategy.position_avg_price - stopLoss) // 356.10 Profit 51,45% 15m if ( getVolBias(shortLookBack) == false and rsiSlope > 3.0 and signalSlope > 0) strategy.entry("15C2", strategy.long, qty=10.0) strategy.exit("TPS", "15C2", limit=strategy.position_avg_price + takeProfit, stop=strategy.position_avg_price - stopLoss) // 124 Profit 52% 15m if ( rsiSlope < -11.25 and macdSlope < 0.0 and signalSlope < 0.0) strategy.entry("15P1", strategy.short, qty=10.0) strategy.exit("TPS", "15P1", limit=strategy.position_avg_price - takeProfit, stop=strategy.position_avg_price + stopLoss) // 455.40 Profit 49% 15m if ( math.abs(math.abs(macd) - math.abs(signal)) < .1 and buyVolume > sellVolume and hasBullInversion) strategy.entry("15P2", strategy.short, qty=10.0) strategy.exit("TPS", "15P2", limit=strategy.position_avg_price - takeProfit, stop=strategy.position_avg_price + stopLoss)