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

کثیر ٹائم فریم مشترکہ موم بتی پیٹرن کی شناخت ٹریڈنگ کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2024-12-11 11:04:35
ٹیگز:جے ایس سیسی پیٹی ایس

img

جائزہ

یہ حکمت عملی موم بتی کے نمونوں کی شناخت پر مبنی ایک خودکار تجارتی نظام ہے۔ اس میں دس کلاسیکی موم بتی کے نمونوں کو مربوط کیا گیا ہے ، جن میں پانچ تیزی کے نمونے (ہیمر ، بولش نگلنگ ، سوراخ کرنے والی لائن ، مارننگ اسٹار ، اور تین سفید فوجی) اور پانچ bearish پیٹرن (ہینگنگ مین ، بیئرش نگلنگ ، ڈارک کلاؤڈ کور ، ایوننگ اسٹار ، اور تین بلیک کروز) شامل ہیں۔ ان نمونوں کی حقیقی وقت کی نشاندہی اور تجزیہ کے ذریعے ، یہ حکمت عملی تاجروں کو ممکنہ مارکیٹ الٹ سگنل اور تجارتی مواقع فراہم کرتی ہے۔

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

اس حکمت عملی کا مرکز عین مطابق موم بتی کے نمونوں کی شناخت کے اس کے پروگراماتی نفاذ میں ہے۔ ہر نمونہ کی اپنی منفرد ریاضی کی تعریف اور شرط کے معیار ہیں۔

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

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

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

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

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

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

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

خلاصہ

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


/*backtest
start: 2024-11-10 00:00:00
end: 2024-12-09 08:00:00
period: 2h
basePeriod: 2h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
// Author: Raymond Ngobeni
strategy('Candlestick Pattern Strategy [Ubaton]', 'Ubaton - Candlestick Pattern Strategy', overlay = true, max_labels_count = 500, max_lines_count = 500, max_boxes_count = 500)

// User Inputs: Enable/Disable Patterns
// Bullish Patterns
enableHammer = input.bool(true, "Show Hammer")
enableBullEngulfing = input.bool(true, "Show Bullish Engulfing")
enablePiercingLine = input.bool(true, "Show Piercing Line")
enableMorningStar = input.bool(true, "Show Morning Star")
enableThreeWhiteSoldiers = input.bool(true, "Show Three White Soldiers")

// Bearish Patterns
enableHangingMan = input.bool(true, "Show Hanging Man")
enableBearEngulfing = input.bool(true, "Show Bearish Engulfing")
enableDarkCloudCover = input.bool(true, "Show Dark Cloud Cover")
enableEveningStar = input.bool(true, "Show Evening Star")
enableThreeBlackCrows = input.bool(true, "Show Three Black Crows")

// Helper Functions
isHammer() =>
    bodySize = math.abs(open - close)
    shadowSize = low < math.min(open, close) ? math.min(open, close) - low : na
    shadowSize >= 2 * bodySize and high - math.max(open, close) <= bodySize

isBullishEngulfing() =>
    close[1] < open[1] and close > open and open <= close[1] and close >= open[1]

isPiercingLine() =>
    close[1] < open[1] and close > close[1] + (open[1] - close[1]) * 0.5 and close < open[1]

isMorningStar() =>
    close[2] < open[2] and math.abs(close[1] - open[1]) < (high[1] - low[1]) * 0.3 and close > open

isThreeWhiteSoldiers() =>
    close > open and close[1] > open[1] and close[2] > open[2] and open > close[1] and open[1] > close[2]

isHangingMan() =>
    bodySize = math.abs(open - close)
    shadowSize = low < math.min(open, close) ? math.min(open, close) - low : na
    shadowSize >= 2 * bodySize and high - math.max(open, close) <= bodySize and close < open

isBearishEngulfing() =>
    close[1] > open[1] and close < open and open >= close[1] and close <= open[1]

isDarkCloudCover() =>
    close[1] > open[1] and open > close[1] and close < open[1] and close < close[1] + (open[1] - close[1]) * 0.5

isEveningStar() =>
    close[2] > open[2] and math.abs(close[1] - open[1]) < (high[1] - low[1]) * 0.3 and close < open

isThreeBlackCrows() =>
    close < open and close[1] < open[1] and close[2] < open[2] and open < close[1] and open[1] < close[2]

// Detect Patterns
// Bullish
hammerDetected = enableHammer and isHammer()
bullEngulfDetected = enableBullEngulfing and isBullishEngulfing()
piercingDetected = enablePiercingLine and isPiercingLine()
morningStarDetected = enableMorningStar and isMorningStar()
threeWhiteDetected = enableThreeWhiteSoldiers and isThreeWhiteSoldiers()

// Bearish
hangingManDetected = enableHangingMan and isHangingMan()
bearEngulfDetected = enableBearEngulfing and isBearishEngulfing()
darkCloudDetected = enableDarkCloudCover and isDarkCloudCover()
eveningStarDetected = enableEveningStar and isEveningStar()
threeBlackDetected = enableThreeBlackCrows and isThreeBlackCrows()

// Plot Bullish Patterns
plotshape(enableHammer and hammerDetected, title="Hammer", location=location.belowbar, color=color.green, style=shape.labelup, text="Hammer")
plotshape(enableBullEngulfing and bullEngulfDetected, title="Bullish Engulfing", location=location.belowbar, color=color.green, style=shape.labelup, text="Engulf")
plotshape(enablePiercingLine and piercingDetected, title="Piercing Line", location=location.belowbar, color=color.green, style=shape.labelup, text="Piercing")
plotshape(enableMorningStar and morningStarDetected, title="Morning Star", location=location.belowbar, color=color.green, style=shape.labelup, text="Morning")
plotshape(enableThreeWhiteSoldiers and threeWhiteDetected, title="Three White Soldiers", location=location.belowbar, color=color.green, style=shape.labelup, text="3 Soldiers")

// Plot Bearish Patterns
plotshape(enableHangingMan and hangingManDetected, title="Hanging Man", location=location.abovebar, color=color.red, style=shape.labeldown, text="Hanging")
plotshape(enableBearEngulfing and bearEngulfDetected, title="Bearish Engulfing", location=location.abovebar, color=color.red, style=shape.labeldown, text="Engulf")
plotshape(enableDarkCloudCover and darkCloudDetected, title="Dark Cloud Cover", location=location.abovebar, color=color.red, style=shape.labeldown, text="Dark Cloud")
plotshape(enableEveningStar and eveningStarDetected, title="Evening Star", location=location.abovebar, color=color.red, style=shape.labeldown, text="Evening")
plotshape(enableThreeBlackCrows and threeBlackDetected, title="Three Black Crows", location=location.abovebar, color=color.red, style=shape.labeldown, text="3 Crows")

// Strategy Execution
if hammerDetected or bullEngulfDetected or piercingDetected or morningStarDetected or threeWhiteDetected
    strategy.entry("Bullish Entry", strategy.long)

if hangingManDetected or bearEngulfDetected or darkCloudDetected or eveningStarDetected or threeBlackDetected
    strategy.entry("Bearish Entry", strategy.short)

متعلقہ

مزید