گولڈن کراس کیلنر چینل رجحان حکمت عملی کے بعد

مصنف:چاؤ ژانگ، تاریخ: 2023-11-02 14:31:10
ٹیگز:

img

جائزہ

گولڈن کراس کیلنر چینل ٹرینڈ فالونگ حکمت عملی ایک ایسی حکمت عملی ہے جو صرف رجحان کی سمت میں تجارت کرتی ہے۔ یہ رجحان کی سمت کو پکڑنے کے لئے داخلہ سگنل کے طور پر گولڈن کراس اور کیلنر چینل کے متحرک اوسط کو یکجا کرتی ہے۔

اصول

اس حکمت عملی میں دو حرکت پذیر اوسط ، ایک قلیل مدتی اور ایک طویل مدتی حرکت پذیر اوسط کا استعمال ہوتا ہے ، جس سے رجحان کی سمت کا تعین کرنے کے لئے سنہری صلیب اور موت کے صلیب بنتے ہیں۔ ایک ہی وقت میں ، یہ صارف کے ذریعہ بیان کردہ ضربوں کا استعمال کرتے ہوئے کیلٹنر چینل کے اوپری اور نچلے ریلوں کا نقشہ تیار کرتا ہے اور جب قیمتیں چینل سے گزرتی ہیں تو تجارتی سگنل تیار کرتا ہے۔

خاص طور پر ، حکمت عملی پہلے چیک کرتی ہے کہ آیا طویل مدتی چلتی اوسط مختصر مدت کے چلتے اوسط سے اوپر ہے ، جس سے سنہری کراس اور اوپر کا رجحان ظاہر ہوتا ہے۔ اگر قلیل مدتی ایم اے طویل مدتی ایم اے سے نیچے ہے تو ، یہ موت کا کراس ہے ، جس سے نیچے کا رجحان ظاہر ہوتا ہے۔

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

اندراج کے بعد ، حکمت عملی منافع لینے اور اسٹاپ نقصان کے ل user صارف کے ذریعہ طے شدہ اے ٹی آر ضربوں کا استعمال کرتی ہے۔ یہ پوزیشن کنٹرول کے ل more زیادہ لچکدار کے لئے اضافی توڑنے اور اسٹاپ نقصان کی شرائط بھی فراہم کرتی ہے۔

فوائد کا تجزیہ

اس حکمت عملی میں رجحانات کی پیروی اور چینل بریک آؤٹ کے فوائد کو یکجا کیا گیا ہے ، جس سے رجحانات کی موثر نشاندہی اور مواقع کا حصول ممکن ہے۔ اہم فوائد یہ ہیں:

  1. گولڈن کراس غلط اشاروں کو فلٹر کرتا ہے جو بڑے رجحان کے مطابق نہیں ہیں۔

  2. رجحان کی سمت کے ساتھ چینل بریک آؤٹ داخلہ کی درستگی کو بہتر بناتا ہے.

  3. منافع اور سٹاپ نقصان منافع کو برقرار رکھنے اور خطرات کو کنٹرول.

  4. لچکدار پیرامیٹر ایڈجسٹمنٹ مختلف مصنوعات اور ماحول کے مطابق ہے.

  5. طویل اور مختصر دونوں جاتا ہے، قابل اطلاق کی توسیع.

خطرے کا تجزیہ

فوائد کے باوجود، کچھ خطرات پر توجہ دینے کی ضرورت ہے:

  1. واپسی کے مواقع سے محروم.

  2. رجحان کی تبدیلیوں کے نتیجے میں نقصانات ہو سکتے ہیں۔

  3. غلط پیرامیٹرز سے زیادہ تجارت یا کم تجارت ہوسکتی ہے۔

  4. راتوں رات خطرہ موجود ہے.

  5. وکر فٹنگ خطرہ.

حل میں پیرامیٹر کی اصلاح ، بروقت ایم اے مدت کی ایڈجسٹمنٹ ، اور پوزیشن سائزنگ کنٹرول شامل ہیں۔

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

مزید بہتری کی گنجائش ہے:

  1. ایک کثیر عنصر ماڈل کی تعمیر اور درستگی کو بہتر بنانے کے لئے مزید اشارے شامل کرنا۔ مثال کے طور پر MACD ، RSI۔

  2. مارکیٹ کی موافقت کے لئے مشین لرننگ کے ذریعے پیرامیٹر کی اصلاح.

  3. منافع اور انعام کو متوازن کرنے کے لئے متحرک منافع اور سٹاپ نقصان کے قوانین.

  4. غیر مستحکم پر مبنی متحرک پوزیشن سائزنگ۔

  5. مختلف مصنوعات کے لیے بہترین پیرامیٹرز کی تحقیق کریں۔

  6. فیسوں کو کم سے کم کرنے کے لئے تجارتی تعدد کو کم کریں.

نتیجہ

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


/*backtest
start: 2022-10-26 00:00:00
end: 2023-11-01 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/
// © OversoldPOS

//@version=5
// strategy("Keltner Channel Strategy by OversoldPOS", overlay=true,initial_capital = 100000,default_qty_type = strategy.percent_of_equity,default_qty_value = 10, commission_type = strategy.commission.cash_per_order, commission_value = 7)

// Parameters
length = input(21, title="MA Length")
Entrymult = input(1, title="Entry ATR")
profit_mult = input(4, title="Profit Taker")
exit_mult = input(-1, title="Exit ATR")

// Moving Average Type Input
ma_type = input.string("SMA", title="Moving Average Type", options=["SMA", "EMA", "WMA"])

// Calculate Keltner Channels for different ATR multiples
atr_value = ta.atr(length)

basis = switch ma_type
    "SMA" => ta.sma(close, length)
    "EMA" => ta.ema(close, length)
    "WMA" => ta.wma(close, length)
 

//
EntryKeltLong = basis + Entrymult * ta.atr(10)
EntryKeltShort = basis - Entrymult * ta.atr(10)
upper_channel1 = basis + 1 * ta.atr(10)
lower_channel1 = basis - 1 * ta.atr(10)
upper_channel2 = basis + 2 * ta.atr(10)
lower_channel2 = basis - 2 * ta.atr(10)
upper_channel3 = basis + 3 * ta.atr(10)
lower_channel3 = basis - 3 * ta.atr(10)
upper_channel4 = basis + 4 * ta.atr(10)
lower_channel4 = basis - 4 * ta.atr(10)

// Entry condition parameters
long_entry_condition = input(true, title="Long Positions")
short_entry_condition = input(true, title="Enable Short Positions")

// Additional conditions for long and short entries
is_long_entry = ta.ema(close, 20) > ta.ema(close, 50)
is_short_entry = ta.ema(close, 20) < ta.ema(close, 50)

// Additional conditions for long and short entries
MAShort =  input(50, title="Short MA for Golden Cross")
MALong =  input(200, title="Long MA for Golden Cross")
is_long_entry2 = ta.ema(close, MAShort) > ta.ema(close, MALong)
is_short_entry2 = ta.ema(close, MAShort) < ta.ema(close, MALong)

// Exit condition parameters
long_exit_condition1_enabled = input(true, title="Enable Long Profit Taker")
long_exit_condition2_enabled = input(true, title="Enable Long Stop")
short_exit_condition1_enabled = input(true, title="Enable Short Profit Taker")
short_exit_condition2_enabled = input(true, title="Enable Short Stop")

// Take Profit condition parameters
take_profit_enabled = input(true, title="Enable Take Profit Condition")

Takeprofit = basis + profit_mult * atr_value
STakeprofit = basis - profit_mult * atr_value

// Long entry condition
long_condition = long_entry_condition and ta.crossover(close, EntryKeltLong) and is_long_entry2

// Short entry condition
short_condition = short_entry_condition and ta.crossunder(close, EntryKeltShort) and is_short_entry2

// Exit conditions
long_exit_condition1 = long_exit_condition1_enabled and close > Takeprofit
long_exit_condition2 = long_exit_condition2_enabled and close < basis + exit_mult * atr_value
short_exit_condition1 = short_exit_condition1_enabled and close < STakeprofit
short_exit_condition2 = short_exit_condition2_enabled and close > basis - exit_mult * atr_value

// Strategy logic
if (long_condition)
    strategy.entry("Long", strategy.long)
if (short_condition)
    strategy.entry("Short", strategy.short)

if (long_exit_condition1 or long_exit_condition2)
    strategy.close("Long")

if (short_exit_condition1 or short_exit_condition2)
    strategy.close("Short")

// Moving Averages
var float MA1 = na
var float MA2 = na

if (ma_type == "SMA")
    MA1 := ta.sma(close, MAShort)
    MA2 := ta.sma(close, MALong)
else if (ma_type == "EMA")
    MA1 := ta.ema(close, MAShort)
    MA2 := ta.ema(close, MALong)
else if (ma_type == "WMA")
    MA1 := ta.wma(close, MAShort)
    MA2 := ta.wma(close, MALong)

// Plotting Keltner Channels with adjusted transparency
transparentColor = color.rgb(255, 255, 255, 56)

plot(upper_channel1, color=transparentColor, title="Upper Channel 1")
plot(lower_channel1, color=transparentColor, title="Lower Channel 1")
plot(upper_channel2, color=transparentColor, title="Upper Channel 2")
plot(lower_channel2, color=transparentColor, title="Lower Channel 2")
plot(upper_channel3, color=transparentColor, title="Upper Channel 3")
plot(lower_channel3, color=transparentColor, title="Lower Channel 3")
plot(upper_channel4, color=transparentColor, title="Upper Channel 4")
plot(lower_channel4, color=transparentColor, title="Lower Channel 4")
plot(basis, color=color.white, title="Basis")
plot(MA1, color=color.rgb(4, 248, 216), linewidth=2, title="Middle MA")
plot(MA2, color=color.rgb(220, 7, 248), linewidth=2, title="Long MA")


مزید