کلٹنر چینلز اور سی سی آئی اشارے پر مبنی رجحان فلٹر مقداری حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2024-02-27 15:47:20
ٹیگز:

img

جائزہ

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

حکمت عملی منطق

حکمت عملی بنیادی طور پر مندرجہ ذیل اشارے اور شرائط پر مبنی تجارتی فیصلے کرتی ہے:

  1. Keltner چینلز: ایک مدت کے دوران عام قیمت اور ATR کی بنیاد پر اوپری اور نچلے بینڈ کا حساب لگائیں تاکہ یہ معلوم کیا جاسکے کہ قیمت چینل کے اندر ہے۔

  2. سی سی آئی اشارے: اس بات کا تعین کرنے کے لئے استعمال کیا جاتا ہے کہ قیمت زیادہ خرید یا زیادہ فروخت ہوئی ہے۔

  3. آر ایس آئی اشارے: زیادہ خریدنے / زیادہ فروخت کی سطح کا فیصلہ کرنے میں مدد کرتا ہے۔

  4. تجارت کا حجم: مخصوص حرکت پذیر اوسط قدر کی خرابی کی ضرورت ہوتی ہے۔

  5. ایم اے کے ساتھ رجحان فلٹر: مجموعی رجحان کی سمت کا تعین کرنے کے لئے ایس ایم اے ، ای ایم اے وغیرہ کا استعمال کریں۔

رجحان کی سمت کی شرط پر پورا اترنے کے ساتھ ، خرید و فروخت کے سگنل پیدا ہوتے ہیں جب قیمت کی خرابی ہوتی ہے ، کیلنر چینل بینڈ ، سی سی آئی اور آر ایس آئی سگنل دیتے ہیں ، اور تجارتی حجم میں اضافہ ہوتا ہے۔

فوائد

اسٹریٹیجی میں غیر یقینی اشاروں کو فلٹر کرنے اور فیصلوں کو زیادہ قابل اعتماد بنانے کے لئے متعدد اشارے اور حالات کو یکجا کیا گیا ہے:

  1. رجحان فلٹر غیر واضح اتار چڑھاؤ مارکیٹوں سے بچتا ہے.

  2. Keltner چینلز اہم فرار کی سطح کی شناخت.

  3. سی سی آئی اور آر ایس آئی سگنل نسبتا درست ہیں۔

  4. حجم میں اضافے سے کچھ جھوٹے بریک آؤٹس کو روکنے میں مدد ملتی ہے۔

خطرات

اہم خطرات:

  1. غلط رجحان کا فیصلہ مضبوط رجحانات کو نظر انداز کرسکتا ہے۔ مختلف ایم اے پیرامیٹرز کی جانچ کریں۔

  2. غلط اشارے کے پیرامیٹرز کو یاد یا غلط سگنل کا سبب بن سکتا ہے. پیرامیٹرز کو بہتر بنائیں.

  3. غیر موثر حجم بڑھانے سے کچھ جھوٹے بریک آؤٹ کے خطرات پیدا ہوتے ہیں۔ مختلف ضارب آزمائیں۔

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

ممکنہ اصلاح کی سمت:

  1. بہتر رجحان فلٹر کے لئے مختلف ایم اے اقسام اور لمبائیوں کا تجربہ کریں۔

  2. زیادہ درست سگنلز کے لئے Keltner چینلز، CCI، RSI کے پیرامیٹرز کو بہتر بنائیں.

  3. زیادہ سے زیادہ سطح تلاش کرنے کے لئے مختلف حجم ضربوں کا تجربہ کریں.

  4. فی تجارت زیادہ سے زیادہ نقصان کو محدود کرنے کے لئے سٹاپ نقصان شامل کرنے پر غور کریں.

نتیجہ

مجموعی طور پر ، اس حکمت عملی میں کیلٹنر چینلز ، سی سی آئی ، آر ایس آئی اشارے اور تجارتی حجم کی شرائط کو ملا کر نسبتا complete مکمل رجحان فلٹرنگ مقداری تجارتی حکمت عملی بنائی گئی ہے۔ اس کے فوائد ہیں جیسے غیر واضح اتار چڑھاؤ والی منڈیوں سے بچنا ، کلیدی بریکآؤٹس کی نشاندہی کرنا ، نسبتا accurate درست overbought / oversold سگنل حاصل کرنا ، اور کچھ غلط بریکآؤٹس کو روکنا۔ غلط پیرامیٹر کی ترتیبات اور غیر موثر حجم بڑھانے جیسے پہلوؤں میں خطرات موجود ہیں۔ رجحان فلٹرنگ کے طریقہ کار ، اشارے کے پیرامیٹرز ، حجم ضرب ، اور اسٹاپ نقصان کے طریقہ کار کو شامل کرنے پر مزید اصلاحات کی جاسکتی ہیں۔


/*backtest
start: 2024-01-27 00:00:00
end: 2024-02-26 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Custom Keltner CCI Strategy with Trend Filter", overlay=true )
// Input Parameters for allowing long and short trades
allowLong = input(true, title="Allow Long Trades")
allowShort = input(true, title="Allow Short Trades")
// Trend Filter Inputs
maType = input(title="MA Type", options=["OFF", "SMA", "EMA", "SMMA", "CMA", "TMA"], defval="OFF")
trendFilterMethod = input(title="Trend Filter Method", options=["OFF", "Normal", "Reversed"], defval="OFF")
maLength = input(14, title="MA Length")
// Other Input Parameters
lengthKC = input(30, title="Keltner Channels Length")
multKC = input(0.7, title="Keltner Channels Multiplier")
lengthCCI = input(5, title="CCI Length")
overboughtCCI = input(75, title="CCI Overbought Level")
oversoldCCI = input(-75, title="CCI Oversold Level")
rsiPeriod = input(30, title="RSI Period")
rsiOverbought = input(60, title="RSI Overbought Level")
rsiOversold = input(60, title="RSI Oversold Level")
volumeMultiplier = input(0, title="Volume Multiplier", type=input.float, step=0.1, minval=0)
// Define Moving Averages
var float maValue = na
if (maType == "SMA")
    maValue := sma(close, maLength)
else if (maType == "EMA")
    maValue := ema(close, maLength)
else if (maType == "SMMA")
    maValue := na(maValue[1]) ? sma(close, maLength) : (maValue[1] * (maLength - 1) + close) / maLength
else if (maType == "CMA")
    maValue := na(maValue[1]) ? sma(close, maLength) : (sma(close, maLength) + (sma(close, maLength) - maValue[1])) / 2
else if (maType == "TMA")
    maValue := sma(sma(close, round(maLength/2)), round(maLength/2)+1)
// Entry Conditions with Trend Filter
longCondition = allowLong and (trendFilterMethod == "OFF" or (trendFilterMethod == "Normal" and close > maValue) or (trendFilterMethod == "Reversed" and close < maValue))
shortCondition = allowShort and (trendFilterMethod == "OFF" or (trendFilterMethod == "Normal" and close < maValue) or (trendFilterMethod == "Reversed" and close > maValue))
// Keltner Channels
typicalPrice = hlc3
middleLine = sma(typicalPrice, lengthKC)
range = multKC * atr(lengthKC)
upperChannel = middleLine + range
lowerChannel = middleLine - range
// CCI
cci = cci(close, lengthCCI)
// RSI
rsi = rsi(close, rsiPeriod)
// Volume
volCondition = volume > sma(volume, 50) * volumeMultiplier
// Combined Entry Conditions with Trend Filter
longCondition := longCondition and cci < oversoldCCI and low < lowerChannel and rsi < rsiOversold and volCondition
shortCondition := shortCondition and cci > overboughtCCI and high > upperChannel and rsi > rsiOverbought and volCondition
// Execute orders at the open of the new bar after conditions are met
if (longCondition)
    strategy.entry("Long", strategy.long)
if (shortCondition)
    strategy.entry("Short", strategy.short)
// Exit Conditions
strategy.close("Long", when = cci > 0)
strategy.close("Short", when = cci < 0)
// Plotting
plot(upperChannel, color=color.red, linewidth=1)
plot(lowerChannel, color=color.green, linewidth=1)
hline(overboughtCCI, "Overbought", color=color.red)
hline(oversoldCCI, "Oversold", color=color.green)

مزید