یہ حکمت عملی دو سپر ٹرینڈ اشارے پر مبنی ہے جن میں مختلف پیرامیٹرز کی ترتیبات ہیں اور سی سی آئی اشارے کا مقصد اعلی تعدد کی تجارت کے لئے قلیل مدتی قیمتوں میں اتار چڑھاؤ کو پکڑنا ہے۔ سپر ٹرینڈ اشارے اے ٹی آر کا حساب کتاب کرکے رجحان کی سمت کو متحرک طور پر فیصلہ کرتا ہے ، جبکہ سی سی آئی اشارے کا استعمال اس بات کا تعین کرنے کے لئے کیا جاتا ہے کہ آیا مارکیٹ زیادہ خرید گئی ہے یا زیادہ فروخت ہوئی ہے۔ حکمت عملی دونوں کو یکجا کرکے تجارتی سگنل بناتی ہے۔
تیز رفتار سپر ٹرینڈ کا حساب لگانے کے لئے 14 پیریڈ اے ٹی آر کا استعمال کریں ، جس کا فیکٹر 3 پر مقرر کیا گیا ہے۔ سست سپر ٹرینڈ کا حساب لگانے کے لئے 14 پیریڈ اے ٹی آر کا استعمال کریں ، جس کا فیکٹر 6 پر مقرر کیا گیا ہے۔ تیز رفتار سپر ٹرینڈ زیادہ حساس ہے اور قلیل مدتی تبدیلیوں کو پکڑ سکتا ہے۔ سست سپر ٹرینڈ اہم رجحان کی سمت کا تعین کرتا ہے۔
جب تیز رفتار سپر ٹرینڈ قیمت سے نیچے عبور کرتا ہے ، اور سست سپر ٹرینڈ قیمت سے اوپر رہتا ہے ، تو اسے طویل عرصے تک جانے کے لئے ممکنہ الٹ سگنل کے طور پر سمجھا جاتا ہے۔ جب تیز رفتار سپر ٹرینڈ قیمت سے اوپر عبور کرتا ہے ، اور سست سپر ٹرینڈ قیمت سے نیچے رہتا ہے ، تو اسے مختصر ہونے کے لئے ممکنہ الٹ سگنل کے طور پر سمجھا جاتا ہے۔
ایک ہی وقت میں ، یہ فیصلہ کرنے کے لئے سی سی آئی کا استعمال کریں کہ آیا مارکیٹ زیادہ سے زیادہ خریدی گئی ہے یا زیادہ فروخت ہوئی ہے۔ سی سی آئی 100 سے اوپر ایک زیادہ سے زیادہ مارکیٹ کی نشاندہی کرتا ہے ، جبکہ -100 سے نیچے کا مطلب ہے کہ ایک زیادہ سے زیادہ مارکیٹ۔ جھوٹے بریک آؤٹ کو فلٹر کرنے کے لئے سی سی آئی سگنل کو جوڑ دیا جاتا ہے۔
جب مارکیٹ میں خرید و فروخت زیادہ ہو تو سپر ٹرینڈ اشارے کے الٹ جانے کا اشارہ دینے کا امکان زیادہ ہوتا ہے۔ یہ حکمت عملی کا بنیادی منطق ہے۔
ٹرینڈ ریورس پوائنٹس کا تعین کرنے کے لئے سپر ٹرینڈ اور اوور بک / اوور سیلڈ حالات کا فیصلہ کرنے کے لئے سی سی آئی کو یکجا کرنے سے جھوٹے بریک آؤٹ کو مؤثر طریقے سے فلٹر کیا جاسکتا ہے اور سگنل کی کوالٹی کو بہتر بنایا جاسکتا ہے۔
تیز اور سست سپر ٹرینڈ کراس اوورز اعلی تعدد کے داخلے اور باہر نکلنے کے لئے تجارتی سگنل بناتے ہیں۔
سی سی آئی پیرامیٹرز اور سپر ٹرینڈ پیرامیٹرز کو مختلف مارکیٹ کے حالات کے مطابق لچکدار طریقے سے ایڈجسٹ کیا جاسکتا ہے۔
حکمت عملی کا خیال واضح اور سمجھنے میں آسان ہے، اور پیرامیٹر ایڈجسٹمنٹ بھی نسبتا آسان ہے.
سپر ٹرینڈ کا خود ہی دیرپا اثر ہوتا ہے، ممکنہ طور پر پہلے الٹ جانے کا موقع کھو دیتا ہے۔ اے ٹی آر کی مدت کو کم کرنے کی کوشش کر سکتا ہے۔
سی سی آئی کے پاس کال بیک کے خطرات ہیں ، اور زیادہ اتار چڑھاؤ بھی بار بار تجارت کا سبب بن سکتا ہے۔ سی سی آئی پیرامیٹرز کو بڑھانے یا حدود کو ایڈجسٹ کرنے کی کوشش کر سکتے ہیں۔
ہائی فریکوئنسی ٹریڈنگ ٹرانزیکشن فریکوئنسی اور ٹریڈنگ کے اخراجات میں اضافہ کرتی ہے۔ یہ تجویز کی جاتی ہے کہ ہولڈنگ ٹائم کو ایڈجسٹ کیا جائے اور اوپن / بند ہونے کی فریکوئنسی کو کم کیا جائے۔
پیرامیٹرز کا مجموعہ زیادہ سے زیادہ ڈراؤنڈ یا منافع / نقصان کا تناسب تلاش کرنے کے لئے زیادہ سے زیادہ پیرامیٹر تلاش کرنے کے لئے پار کیا جا سکتا ہے اور بہتر بنایا جا سکتا ہے.
مشین لرننگ کے طریقے جیسے رینڈم فارسٹ کو پیرامیٹرز پر خصوصیت کے انتخاب کے لئے استعمال کیا جاسکتا ہے تاکہ خودکار پیرامیٹر کی اصلاح حاصل کی جاسکے۔
خطرات کو کنٹرول کرنے کے لئے ایک مخصوص سائیکل کے اندر زیادہ سے زیادہ پوزیشن کھولنے کی حد کو تلاش کریں.
حکمت عملی مختصر مدت کے رجحان کی تبدیلی کے نکات کا تعین کرنے کے لئے سپر ٹرینڈ اشارے کا مکمل استعمال کرتی ہے ، جس میں سگنل کو فلٹر کرنے کے لئے سی سی آئی اشارے کی تکمیل ہوتی ہے۔ جب پیرامیٹر کی ترتیبات معقول ہوتی ہیں تو ، یہ موثر قلیل مدتی تجارت حاصل کرسکتی ہے۔ لیکن ضرورت سے زیادہ تجارت سے پیدا ہونے والے خطرات سے بھی محتاط رہنا چاہئے ، اور پیرامیٹر ٹیوننگ اور الگورتھم کی اصلاح کے ذریعے حکمت عملی کی کارکردگی کو مستقل طور پر بہتر بنانا چاہئے۔
/*backtest start: 2023-02-19 00:00:00 end: 2024-02-25 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Supertrend & CCI Strategy Scalp", overlay=true) // SuperTrend Settings atrLength1 = input(14, "ATR Length 1") factor1 = input(3.0, "Factor 1" ) atrLength2 = input(14, "ATR Length 2") factor2 = input(6.0, "Factor 2") // Calculate SuperTrend 1 [superTrend1, direction1] = ta.supertrend(factor1, atrLength1) // // Calculate SuperTrend 2 [superTrend2, direction2] = ta.supertrend(factor2, atrLength2) // superTrend1 := barstate.isfirst ? na : superTrend1 // upTrend1 = plot(direction1 < 0 ? superTrend1 : na, "Up Trend", color = color.green, style = plot.style_linebr) // downTrend1 = plot(direction1 < 0 ? na : superTrend1, "Down Trend", color = color.red, style = plot.style_linebr) // bodyMiddle1 = plot(barstate.isfirst ? na : (open + close) / 2, "Body Middle",display = display.none) // fill(bodyMiddle1, upTrend1, color.new(color.green, 90), fillgaps = false) // fill(bodyMiddle1, downTrend1, color.new(color.red, 90), fillgaps = false) // superTrend2 := barstate.isfirst ? na : superTrend2 // upTrend2 = plot(direction1 < 0 ? superTrend2 : na, "Up Trend", color = color.green, style = plot.style_linebr) // downTrend2 = plot(direction1 < 0 ? na : superTrend2, "Down Trend", color = color.red, style = plot.style_linebr) // bodyMiddle2 = plot(barstate.isfirst ? na : (open + close) / 2, "Body Middle",display = display.none) // fill(bodyMiddle2, upTrend2, color.new(color.green, 90), fillgaps = false) // fill(bodyMiddle2, downTrend2, color.new(color.red, 90), fillgaps = false) // CCI Settings //cciLength = input.int(14, title="CCI Length") cciLevel = input.int(100, title="CCI Level") // Calculate CCI length = input.int(20, minval=1) src = input(hlc3, title="Source") ma = ta.sma(src, length) cci = (src - ma) / (0.015 * ta.dev(src, length)) //plot(cci, "CCI", color=#2962FF) //band1 = hline(100, "Upper Band", color=#787B86, linestyle=hline.style_dashed) //hline(0, "Middle Band", color=color.new(#787B86, 50)) //band0 = hline(-100, "Lower Band", color=#787B86, linestyle=hline.style_dashed) //fill(band1, band0, color=color.rgb(33, 150, 243, 90), title="Background") ma(source, length, type) => switch type "SMA" => ta.sma(source, length) "EMA" => ta.ema(source, length) "SMMA (RMA)" => ta.rma(source, length) "WMA" => ta.wma(source, length) "VWMA" => ta.vwma(source, length) typeMA = input.string(title = "Method", defval = "SMA", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"], group="Smoothing") smoothingLength = input.int(title = "Length", defval = 5, minval = 1, maxval = 100, group="Smoothing") smoothingLine = ma(cci, smoothingLength, typeMA) //plot(smoothingLine, title="Smoothing Line", color=#f37f20, display=display.none) // Entry conditions longCondition = superTrend1 > close and superTrend2 < close and smoothingLine < -100 shortCondition = superTrend1 < close and superTrend2 > close and smoothingLine > 100 /// Initialize variables to track trade direction var bool isLong = na var bool isShort = na // Strategy entry and exit if (longCondition) strategy.entry("Long", strategy.long) isLong := true isShort := false if (shortCondition) strategy.entry("Short", strategy.short) isShort := true isLong := false // Close Long positions if (isLong) strategy.close("Long", when = superTrend1 < close or superTrend2 > close or cci > 100) // Close Short positions if (isShort) strategy.close("Short", when = superTrend1 > close or superTrend2 < close or cci < -100) // Plotting plot(superTrend1, color=color.blue, title="SuperTrend 1") plot(superTrend2, color=color.red, title="SuperTrend 2") //plot(cci, color=color.orange, title="CCI")