یہ ایک رجحان کی پیروی کرنے والی حکمت عملی ہے جو رجحان کی نشاندہی کے لئے ایچیموکو کلاؤڈ اشارے اور سگنل فلٹرنگ کے لئے آر ایس آئی اشارے کا استعمال کرتی ہے۔ یہ حکمت عملی غیر آفسیٹ ایچیموکو کلاؤڈ کا استعمال بروقت انداز میں رجحان کی تبدیلیوں کو پکڑنے اور تجارتی خطرات پر قابو پانے کے لئے آر ایس آئی کے ساتھ جعلی بریکآؤٹس کو فلٹر کرنے کے لئے کرتی ہے۔
حکمت عملی بنیادی طور پر رجحان کی سمت کا تعین کرنے کے لئے ایچیموکو کلاؤڈ اشارے پر انحصار کرتی ہے۔ ایچیموکو کلاؤڈ میں تبادلوں کی لکیر ، بیس لائن ، لیڈنگ اسپین 1 ، لیڈنگ اسپین 2 اور لیگزنگ اسپین شامل ہیں۔ حکمت عملی غیر آفسیٹ ایچیموکو کلاؤڈ کا استعمال کرتی ہے ، جس کا مطلب ہے کہ تبادلوں کی لکیر اور بیس لائن جیسی لائنیں مستقبل کے اعداد و شمار کو اپناتی ہیں تاکہ مشاہدے کی آفسیٹ کی وجہ سے پیچھے رہنے والے رجحان کی نشاندہی سے بچ سکے۔
حکمت عملی سب سے پہلے چیک کرتی ہے کہ آیا قیمت بادل کی لائنوں کو توڑتی ہے۔ جب پیچھے رہ جانے والی مدت بادل کے اوپر سے گزرتی ہے تو ایک بڑھتی ہوئی رجحان کی نشاندہی کی جاتی ہے ، جبکہ جب پیچھے رہ جانے والی مدت بادل کے نیچے سے گزرتی ہے تو نیچے کی رجحان کی نشاندہی کی جاتی ہے۔ رجحان شروع ہونے کے بعد ، حکمت عملی مستقل رجحان کی سمت کا تعین کرنے کے لئے بادل کے ساتھ قیمت کے تعلقات کو ٹریک کرتی رہتی ہے۔ جب پیچھے رہ جانے والی مدت بادل کے اوپر ہوتی ہے تو اپ ٹرینڈ برقرار رہتا ہے ، اور اس کے برعکس۔
رجحان کی نشاندہی کے علاوہ ، یہ حکمت عملی خرید و فروخت کے سگنل بھی پیدا کرتی ہے جب تبادلہ لائن اور بیس لائن میں سنہری کراس اور موت کا کراس ہوتا ہے۔ یہ تجارتی سگنل صرف اس وقت قبول کیے جاتے ہیں جب وہ رجحان کی سمت کے ساتھ سیدھ میں ہوں۔ مثال کے طور پر ، تبادلہ لائن اور بیس لائن کے مابین سنہری کراس کو صرف اپ ٹرینڈ کے دوران ہی سمجھا جاتا ہے۔
آخر میں ، آر ایس آئی اشارے کا استعمال تجارتی سگنلز کو فلٹر کرنے کے لئے کیا جاتا ہے۔ صرف اوور سیل سطح سے نیچے آر ایس آئی والے خرید سگنل اور اوور بکٹ سطح سے اوپر آر ایس آئی والے فروخت سگنل قبول کیے جاتے ہیں۔ اس سے کسی حد تک جھوٹے بریک آؤٹ کو فلٹر کرنے میں مدد ملتی ہے۔
غیر آفسیٹ Ichimoku کلاؤڈ واپسی کے مواقع کو کھوئے بغیر بروقت رجحان کی تبدیلیوں کی نشاندہی کرسکتا ہے
متعدد حالات کو مؤثر طریقے سے غلط بریک آؤٹ سگنل کو فلٹر کرنے کے لئے مل کر کام کرتے ہیں
RSI زیادہ خریدنے اور زیادہ فروخت کی صورت حال میں غیر مطلوبہ مارکیٹ میں داخل ہونے سے بچتا ہے
حکمت عملی مستقبل کے اعداد و شمار کو ذہن میں رکھتے ہوئے بہتر ہے اور زندہ ٹریڈنگ میں بھی اچھے نتائج حاصل کرسکتے ہیں
مستقبل کے اعداد و شمار کا استعمال کرتے ہوئے غلطیوں کا سبب بن سکتا ہے اور لائیو ٹریڈنگ سے پہلے کوڈ کی اصلاح کی ضرورت ہوتی ہے
Ichimoku کلاؤڈ پیرامیٹرز کے لئے حساس ہے اور مختلف مصنوعات کے لئے پیرامیٹر ٹیوننگ کی ضرورت ہوتی ہے
ایک ہی مصنوعات کی تجارت کرتے وقت بہتر نتائج۔ متعدد مصنوعات کے ساتھ مارکیٹ کے مابین ارتباط پر غور کرنے کی ضرورت ہے۔
رجحان کی نشاندہی کے بہت سے قوانین کی توثیق کے لئے مناسب بیک ٹسٹنگ کی مدت کی ضرورت ہوتی ہے
پیرامیٹرز کو بہترین امتزاج تلاش کرنے کے لئے بہتر بنایا جاسکتا ہے۔ براہ راست تجارت میں خطرات پر قابو پانے کے لئے مخصوص مصنوعات کی تجارت پر غور کیا جاسکتا ہے یا پوزیشن کے سائز کو کم کیا جاسکتا ہے۔ ہر تجارت میں نقصان کو محدود کرنے کے لئے اسٹاپ نقصان کی حکمت عملی بھی متعارف کروائی جاسکتی ہے۔
اسٹریٹیجی کو مندرجہ ذیل پہلوؤں میں مزید بہتر بنایا جاسکتا ہے:
مختلف تجارتی مصنوعات کے لئے بہترین ترتیبات تلاش کرنے کے لئے Ichimoku کلاؤڈ پیرامیٹرز کو بہتر بنائیں
ہر تجارت میں نقصان کو قابل قبول سطح تک محدود کرنے کے لئے اسٹاپ نقصان کی حکمت عملی شامل کریں
مجموعی طور پر خطرے کے خطرات کو درست طریقے سے منظم کرنے کے لئے پوزیشن سائزنگ کی حکمت عملی متعارف کروائیں
جامع سگنل کی تصدیق کے لئے اتار چڑھاؤ اور حجم جیسے مزید تکنیکی اشارے شامل کریں
بہتر عملدرآمد کے لئے تصدیق یا پل بیک اندراجات جیسے اندراج کی تکنیک کو بہتر بنائیں
پروڈکٹ کی خصوصیات کی بنیاد پر زیادہ سے زیادہ بولنگر بینڈس بیک بیک مدت کا تعین کرنے کے لئے واک فارورڈ اصلاحات انجام دیں
خلاصہ یہ ہے کہ ، یہ ایک کافی مضبوط رجحان کی پیروی کرنے والی حکمت عملی ہے۔ یہ رجحان کی نشاندہی کے لئے ایچیموکو کلاؤڈ کو اپناتا ہے اور تجارتی سگنلز کے لئے تبادلوں کی لائن / بیس لائن کراسز کو آر ایس آئی کے ذریعہ فلٹر کیا جاتا ہے۔ پیرامیٹر ٹوننگ ، اسٹاپ نقصان ، پوزیشن سائزنگ وغیرہ کے ذریعہ اصلاح کے لئے ابھی بھی بہت زیادہ گنجائش ہے۔ منطق واضح اور سمجھنے میں آسان ہے۔ یہ رجحان اور خطرات دونوں پر غور کرتا ہے۔ یہ ایک حکمت عملی ہے جو براہ راست تجارت میں تصدیق کے قابل ہے۔
/*backtest start: 2022-10-31 00:00:00 end: 2023-02-20 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © KryptoNight //@version=4 // comment/uncomment Study/Strategy to easily switch modes // study("Ichimoku Kinko Hyo Cloud - no offset - no repaint - RSI filter - alerts", shorttitle="IchiCloud + RSI - alerts", overlay=true) // ============================================================================== Strategy mode - uncomment to activate strategy("Ichimoku Kinko Hyo Cloud - no offset - no repaint - RSI filter - strategy", shorttitle="IchiCloud + RSI - Strategy Tester Mode", overlay=true, pyramiding = 0, currency = currency.USD, initial_capital = 10000, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, calc_on_every_tick = true, calc_on_order_fills = true, commission_type = strategy.commission.percent, commission_value = 0.075) // ============================================================================== // ------------------------------------------------------------------------------ ichiCloud_offset = input(false, title="Standard Ichimoku Cloud") // with the visual offset ichiCloud_noOffset = input(true, title="Ichimoku Cloud - no offset - no repaint") // without the visual offset conversion_prd = input(9, minval=1, title="Conversion Line Period - Tenkan-Sen") baseline_prd = input(26, minval=1, title="Base Line Period - Kijun-Sen") baselineA_prd = input(52, minval=1, title="Base Line Period - Kijun-Sen (auxiliary)") leadingSpan_2prd = input(52, minval=1, title="Lagging Span 2 Periods - Senkou Span B") displacement = input(26, minval=0, title="Displacement: (-) Chikou Span; (+) Senkou Span A") extra_bars = input(1, minval=0, title="Displacement: additional bars") laggingSpan_src = input(close, title="Lagging Span price source - Chikou-Span") donchian(len) => avg(lowest(len), highest(len)) displ = displacement-extra_bars // ------------------------------------------------------------------------------ // OFFSET: conversion = donchian(conversion_prd) // Conversion Line - Tenkan-Sen (9 Period) baseline = donchian(baseline_prd) // Base Line - Kijun-Sen (26 Period) baselineA = donchian(baselineA_prd) // Base Line Period - Kijun-Sen (auxiliary) leadingSpanA = avg(conversion, baseline) leadingSpanB = donchian(leadingSpan_2prd) laggingSpan = laggingSpan_src // Color - bullish, bearish col_cloud = leadingSpanA>=leadingSpanB ? color.green : color.red // Cloud Lines spanA = plot(ichiCloud_offset? leadingSpanA : na, offset=displ, title="Offset: Lead Line 1 - Senkou Span A cloud", color=color.green) spanB = plot(ichiCloud_offset? leadingSpanB : na, offset=displ, title="Offset: Lead Line 2 - Senkou Span B cloud", color=color.red) fill(spanA, spanB, color=col_cloud, transp=80, title="Offset: Ichimoku Cloud - Leading Span 1 & 2 based coloring") // Other Lines conversion_p = plot(ichiCloud_offset? conversion : na, title="Offset: Conversion Line - Tenkan-Sen", color=#0496ff) standard_p = plot(ichiCloud_offset? baseline : na, title="Offset: Base Line - Kijun-Sen", color=#991515) standardA_p = plot(ichiCloud_offset? baselineA : na, title="Offset: Base Line - Kijun-Sen (auxiliary)", color=color.teal) lagging_Span_p = plot(ichiCloud_offset? laggingSpan : na, offset=-displ, title="Offset: Chikou Span (Lagging Span)", color=#459915) // ------------------------------------------------------------------------------ // NO OFFSET: conversion_noOffset = conversion[displ] // Conversion Line - Tenkan-Sen (9 Period) baseline_noOffset = baseline[displ] // Base Line - Kijun-Sen (26 Period) baselineA_noOffset = baselineA[displ] // Base Line Period - Kijun-Sen (auxiliary) leadingSpanA_noOffset = leadingSpanA[displ*2] leadingSpanB_noOffset = leadingSpanB[displ*2] laggingSpan_noOffset = laggingSpan[0] // Color - bullish, bearish col_cloud_noOffset = leadingSpanA_noOffset>=leadingSpanB_noOffset ? color.green : color.red // Cloud Lines spanA_noOffset = plot(ichiCloud_noOffset? leadingSpanA_noOffset : na, title="No offset: Lead Line 1 - Senkou Span A cloud", color=color.green, transp=0) spanB_noOffset = plot(ichiCloud_noOffset? leadingSpanB_noOffset : na, title="No offset: Lead Line 2 - Senkou Span B cloud", color=color.red, transp=0) fill(spanA_noOffset, spanB_noOffset, color=col_cloud_noOffset, transp=80, title="No offset: Ichimoku Cloud - Leading Span 1 & 2 based coloring") // Other Lines conversion_p_noOffset = plot(ichiCloud_noOffset? conversion_noOffset : na, title="No offset: Conversion Line - Tenkan-Sen", color=#0496ff, transp=0) baseline_p_noOffset = plot(ichiCloud_noOffset? baseline_noOffset : na, title="No offset: Base Line - Kijun-Sen", color=#991515, transp=0) baselineA_p_noOffset = plot(ichiCloud_noOffset? baselineA_noOffset : na, title="No offset: Base Line - Kijun-Sen (auxiliary)", color=color.teal, transp=0) laggingSpan_p_noOffset = plot(ichiCloud_noOffset? laggingSpan_noOffset : na, title="No offset: Chikou Span (Lagging Span)", color=#459915, transp=0) // ============================================================================== // Conditions & Alerts (based on the lines without offset) maxC = max(leadingSpanA_noOffset,leadingSpanB_noOffset) minC = min(leadingSpanA_noOffset,leadingSpanB_noOffset) // Trend start signals: crosses between Chikou Span (Lagging Span) and the Cloud (Senkou Span A, Senkou Span B) uptrend_start = crossover(laggingSpan_noOffset,maxC) downtrend_start = crossunder(laggingSpan_noOffset,minC) // Trends uptrend = laggingSpan_noOffset>maxC // Above Cloud downtrend = laggingSpan_noOffset<minC // Below Cloud // No trend: choppy trading - the price is in transition notrend = maxC>=laggingSpan_noOffset and laggingSpan_noOffset>=minC // Confirmations uptrend_confirm = crossover(leadingSpanA_noOffset,leadingSpanB_noOffset) downtrend_confirm = crossunder(leadingSpanA_noOffset,leadingSpanB_noOffset) // Signals - crosses between Conversion Line (Tenkan-Sen) and Base Line (Kijun-Sen) bullish_signal = crossover(conversion_noOffset,baseline_noOffset) bearish_signal = crossunder(conversion_noOffset,baseline_noOffset) // Various alerts alertcondition(uptrend_start, title="Uptrend Started", message="Uptrend Started") alertcondition(downtrend_start, title="Downtrend Started", message="Downtrend Started") alertcondition(uptrend_confirm, title="Uptrend Confirmed", message="Uptrend Confirmed") alertcondition(downtrend_confirm, title="Downtrend Confirmed", message="Downtrend Confirmed") alertcondition(bullish_signal, title="Buy Signal", message="Buy Signal") alertcondition(bearish_signal, title="Sell Signal", message="Sell Signal") rsi_OBlevel = input(50, title="RSI Filter: Overbought level (0 = off)") rsi_OSlevel = input(100,title="RSI Filter: Oversold level (100 = off)") rsi_len = input(14,title="RSI Length") rsi_src = input(close,title="RSI Price source") rsi = rsi(rsi_src,rsi_len) // Strategy ------------------------------- long_signal = bullish_signal and uptrend and rsi<=rsi_OSlevel // breakout filtered by the rsi exit_long = bearish_signal and uptrend short_signal = bearish_signal and downtrend and rsi>=rsi_OBlevel // breakout filtered by the rsi exit_short = bullish_signal and downtrend // Strategy alerts alertcondition(long_signal, title="Long Signal - Uptrend", message="Long Signal - Uptrend") alertcondition(exit_long, title="Long Exit Signal - Uptrend", message="Long Exit Signal - Uptrend") alertcondition(short_signal, title="Long Signal - Downtrend", message="Long Signal - Downtrend") alertcondition(exit_short, title="Short Exit Signal - Downtrend", message="Short Exit Signal - Downtrend") // Plot areas for trend and transition color_trend = uptrend? #00FF00 : downtrend? #FF0000 : notrend? color.new(#FFFFFF, 50) : na fill(spanA_noOffset, spanB_noOffset, color=color_trend, transp=90, title="No offset: Ichimoku Cloud - Lagging Span & Cloud based coloring") plotshape(ichiCloud_noOffset?uptrend_start:na, title="No offset: Uptrend Started", color=color.green, style=shape.circle, location=location.belowbar, size=size.tiny, text="Up") plotshape(ichiCloud_noOffset?downtrend_start:na, title="No offset: Downtrend Started", color=color.red, style=shape.circle,location=location.abovebar, size=size.tiny, text="Down") plotshape(ichiCloud_noOffset?uptrend_confirm:na, title="No offset: Uptrend Confirmed", color=color.green, style=shape.circle, location=location.belowbar, size=size.small, text="Confirm Up") plotshape(ichiCloud_noOffset?downtrend_confirm:na, title="No offset: Downtrend Confirmed", color=color.red, style=shape.circle, location=location.abovebar, size=size.small, text="Confirm Down") plotshape(ichiCloud_noOffset?long_signal:na, title="No offset: Long Signal", color=#00FF00, style=shape.triangleup, location=location.belowbar, size=size.small, text="Long") plotshape(ichiCloud_noOffset?exit_long:na, title="No offset: Exit Long Signal", color=color.fuchsia, style=shape.triangledown, location=location.abovebar, size=size.small, text="Exit long") plotshape(ichiCloud_noOffset?short_signal:na, title="No offset: Short Signal", color=#FF0000, style=shape.triangledown, location=location.abovebar, size=size.small, text="Short") plotshape(ichiCloud_noOffset?exit_short:na, title="No offset: Exit Short Signal", color=color.fuchsia, style=shape.triangleup, location=location.belowbar, size=size.small, text="Exit short") // ============================================================================== Strategy Component - uncomment to activate if (long_signal) strategy.entry("Long",strategy.long) if (exit_long) strategy.close("Long") if (short_signal) strategy.entry("Short",strategy.short) if (exit_short) strategy.close("Short") // ==============================================================================