وسائل لوڈ ہو رہے ہیں... لوڈنگ...

دوہری رجحان کی تصدیق ٹریڈنگ کی حکمت عملی جو حرکت پذیر اوسط اور بار پیٹرن کے باہر کی بنیاد پر ہے

مصنف:چاؤ ژانگ، تاریخ: 2025-01-17 14:39:19
ٹیگز:ای ایم اے

 Dual Trend Confirmation Trading Strategy Based on Moving Averages and Outside Bar Pattern

جائزہ

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

حکمت عملی کے اصول

بنیادی منطق مندرجہ ذیل اہم عناصر پر مبنی ہے: بنیادی رجحان کی سمت کا تعین کرنے کے لئے 5 مدت اور 9 مدت کے EMA کراس اوور کا استعمال بیرونی بار پیٹرن کے ذریعے مارکیٹ کی اتار چڑھاؤ کی تصدیق (موجودہ بار پچھلے بار کے اوپر اعلی اور پچھلے بار کے نیچے کم) جب ای ایم اے کراس اوور سگنل بیرونی بار پیٹرن کے ساتھ ملتے ہیں تو تجارت میں داخل ہونا بیرونی بار کی اونچائی کا استعمال کرتے ہوئے متحرک طور پر سٹاپ نقصان اور منافع لینے کی سطح مقرر کرنے کے لئے، 50٪ پر منافع لینے اور بار کی اونچائی کے 100٪ پر سٹاپ نقصان کے ساتھ 5. ممکنہ رجحان کی تبدیلیوں کو پکڑنے کے لئے اسٹاپ نقصان کو متحرک کرنے پر خود بخود ریورس پوزیشنوں کو انجام دینا

حکمت عملی کے فوائد

  1. دوہری تصدیق کا طریقہ کار ایک ہی اشارے سے غلط سگنل سے بچنے سے ٹریڈنگ کی درستگی کو بہتر بناتا ہے
  2. متحرک سٹاپ نقصان اور منافع لینے کی ترتیبات کو مارکیٹ کی اتار چڑھاؤ کے مطابق بہتر بنایا جاتا ہے ، مختلف مارکیٹ کے حالات میں مناسب رسک مینجمنٹ کو برقرار رکھا جاتا ہے
  3. پوزیشن ریورس میکانزم تیزی سے مارکیٹ کے رجحان کی تبدیلیوں کو اپنانے، سرمایہ کاری کی کارکردگی کو بہتر بنانے
  4. حکمت عملی میں داخلہ اور باہر نکلنے کے واضح قوانین ہیں ، جس سے اس پر عمل درآمد اور بیک ٹیسٹ آسان ہوجاتا ہے

حکمت عملی کے خطرات

  1. کم اتار چڑھاؤ والے بازاروں میں بار کے باہر پیٹرن کم کثرت سے ہوسکتے ہیں ، جس سے تجارتی تعدد پر اثر پڑتا ہے
  2. اسٹاپ نقصان کی پوزیشنیں تیزی سے اتار چڑھاؤ والے بازاروں میں بہت وسیع ہوسکتی ہیں ، جس سے فی تجارت کا خطرہ بڑھتا ہے
  3. پوزیشن ریورسنگ میکانزم کے نتیجے میں مختلف مارکیٹوں میں لگاتار نقصانات ہو سکتے ہیں
  4. فکسڈ ای ایم اے پیرامیٹرز مختلف مارکیٹ کے حالات میں متضاد کارکردگی کا مظاہرہ کر سکتے ہیں

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

  1. زیادہ لچکدار رسک مینجمنٹ کے لیے سٹاپ نقصان اور منافع لینے کے تناسب کو متحرک طور پر ایڈجسٹ کرنے کے لیے اتار چڑھاؤ کے اشارے متعارف کرانا
  2. کمزور رجحان کے ماحول میں تجارت سے بچنے کے لئے رجحان کی طاقت فلٹرز کو شامل کرنے پر غور کریں
  3. مارکیٹ میں اتار چڑھاؤ کے اشارے کو شامل کرکے پوزیشن ریورس ٹرگر کے حالات کو بہتر بنائیں
  4. ریسرچ EMA پیرامیٹر کی اصلاح مختلف ٹائم فریموں میں نظام کی موافقت کو بہتر بنانے کے لئے

خلاصہ

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


/*backtest
start: 2019-12-23 08:00:00
end: 2025-01-15 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}]
*/

//@version=5
strategy(title="Outside Bar EMA Crossover Strategy with EMA Shift", shorttitle="Outside Bar EMA Cross", overlay=true)

// Input for EMA lengths
lenEMA1 = input.int(5, title="EMA 5 Length")
lenEMA2 = input.int(9, title="EMA 9 Length")

// Input for EMA 9 shift
emaShift = input.int(1, title="EMA 9 Shift", minval=0)

// Calculate EMAs
ema1 = ta.ema(close, lenEMA1)
ema2 = ta.ema(close, lenEMA2)

// Apply shift to EMA 9
ema2Shifted = na(ema2[emaShift]) ? na : ema2[emaShift]  // Dịch chuyển EMA 9 bằng cách sử dụng offset

// Plot EMAs
plot(ema1, title="EMA 5", color=color.blue, linewidth=2)
plot(ema2Shifted, title="EMA 9 Shifted", color=color.red, linewidth=2)

// Outside Bar condition
outsideBar() => high > high[1] and low < low[1]

// Cross above EMA 5 and EMA 9 (shifted)
crossAboveEMA = close > ema1 and close > ema2Shifted

// Cross below EMA 5 and EMA 9 (shifted)
crossBelowEMA = close < ema1 and close < ema2Shifted

// Outside Bar cross above EMA 5 and EMA 9 (shifted)
outsideBarCrossAbove = outsideBar() and crossAboveEMA

// Outside Bar cross below EMA 5 and EMA 9 (shifted)
outsideBarCrossBelow = outsideBar() and crossBelowEMA

// Plot shapes for visual signals
plotshape(series=outsideBarCrossAbove, title="Outside Bar Cross Above", location=location.belowbar, color=color.green, style=shape.labelup, text="Buy", textcolor=color.white)
plotshape(series=outsideBarCrossBelow, title="Outside Bar Cross Below", location=location.abovebar, color=color.red, style=shape.labeldown, text="Sell", textcolor=color.white)

// Calculate Outside Bar height
outsideBarHeight = high - low  // Chiều cao của nến Outside Bar

// Calculate TP and SL levels
tpRatio = 0.5  // TP = 50% chiều cao nến Outside Bar
slRatio = 1.0  // SL = 100% chiều cao nến Outside Bar

tpLevelLong = close + outsideBarHeight * tpRatio  // TP cho lệnh mua
slLevelLong = close - outsideBarHeight * slRatio  // SL cho lệnh mua

tpLevelShort = close - outsideBarHeight * tpRatio  // TP cho lệnh bán
slLevelShort = close + outsideBarHeight * slRatio  // SL cho lệnh bán

// Strategy logic
if (outsideBarCrossAbove)
    strategy.entry("Buy", strategy.long)
    strategy.exit("Take Profit/Stop Loss", "Buy", stop=slLevelLong, limit=tpLevelLong)  // Thêm TP và SL

if (outsideBarCrossBelow)
    strategy.entry("Sell", strategy.short)
    strategy.exit("Take Profit/Stop Loss", "Sell", stop=slLevelShort, limit=tpLevelShort)  // Thêm TP và SL

// Logic: Nếu lệnh Buy bị Stop Loss => Vào lệnh Sell
if (strategy.position_size > 0 and close <= slLevelLong)
    strategy.close("Buy")
    strategy.entry("Sell After Buy SL", strategy.short)

// Logic: Nếu lệnh Sell bị Stop Loss => Vào lệnh Buy
if (strategy.position_size < 0 and close >= slLevelShort)
    strategy.close("Sell")
    strategy.entry("Buy After Sell SL", strategy.long)

// Cảnh báo khi label Buy xuất hiện
alertcondition(condition=outsideBarCrossAbove, title="Label Buy Xuất Hiện", message="Label Buy xuất hiện tại giá: {{close}}")

// Cảnh báo khi label Sell xuất hiện
alertcondition(condition=outsideBarCrossBelow, title="Label Sell Xuất Hiện", message="Label Sell xuất hiện tại giá: {{close}}")

متعلقہ

مزید