HLHB رجحان پکڑنے والی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-09-28 11:44:04
ٹیگز:

جائزہ

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

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

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

  • پانچ دورانیہ تیز EMA: نیلی لکیر
  • دس دورانیے کا سست EMA: سرخ لکیر
  • درمیانی قیمت پر لاگو 10 پیریڈ آر ایس آئی (H + L) / 2
  • 14 پیریڈ ADX

داخلہ سگنل:

  • لمبا: جب تیز EMA نیچے سے سست EMA سے اوپر اور RSI نیچے سے 50 سے اوپر عبور کرتا ہے
  • مختصر: جب تیز EMA اوپر سے سست EMA سے نیچے کراس کرتا ہے اور RSI اوپر سے 50 سے نیچے کراس کرتا ہے
  • صرف اس وقت سگنل لیں جب ADX > 25 ہو

باہر نکلنے کا اشارہ:

  • ٹریلنگ سٹاپ نقصان کا استعمال کریں، 150 پپس ٹریل فاصلے اور 400 پپس منافع لے
  • جب کوئی نیا اشارہ ظاہر ہوتا ہے تو تجارت بند کردیں
  • ہفتے کے اختتام سے پہلے تمام تجارت بند کریں

یہ حکمت عملی EMA کراس اوور ، RSI overbought / oversold اور ADX رجحان کی طاقت کو یکجا کرتی ہے تاکہ ٹھوس اندراج کے قوانین پیدا کیے جاسکیں۔ یہ تشکیل کے بعد رجحان پر سوار ہوتا ہے اور منافع کو زیادہ سے زیادہ کرنے اور خطرے کو کنٹرول کرنے کے لئے ٹریلنگ اسٹاپ کا استعمال کرتا ہے۔ مجموعی طور پر اس کا مقصد قلیل مدتی رجحانات کو مؤثر طریقے سے پکڑنا ہے۔

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

اس حکمت عملی کے مندرجہ ذیل فوائد ہیں:

  1. رجحان کی سمت کے لئے ای ایم اے کراس اوور۔ اوپر کی طرف کراس اپ ٹرینڈ کا اشارہ کرتا ہے جبکہ نیچے کی طرف کراس ڈاؤن ٹرینڈ۔ رجحان کی تبدیلیوں کی نشاندہی کرسکتا ہے۔

  2. آر ایس آئی کو شامل کرنے سے کچھ جھوٹے بریک آؤٹ سگنل فلٹر ہوجاتے ہیں۔ اوور سیلڈ / اوور بک زون مختصر مدت میں واپسی کی نشاندہی کرتے ہیں اور رینج مارکیٹوں میں غیر ضروری اندراجات سے بچتے ہیں۔

  3. حقیقی رجحان کی موجودگی کو یقینی بنانے کے لئے ADX۔ صرف تب ہی تجارتی سگنل پر غور کریں جب ADX > 25 ہو ، جس سے ٹھوس رجحان کی ضمانت ہو۔

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

  5. ہفتے کے آخر سے پہلے تمام پوزیشنوں کو بند کرنے سے ہفتے کے آخر کے خطرات سے بچنے اور تجارتی باقاعدگی کو نافذ کرنے میں مدد ملتی ہے۔

خطرے کا تجزیہ

اس حکمت عملی میں مندرجہ ذیل خطرات بھی ہیں:

  1. ای ایم اے کراس اوور سسٹم جھوٹے بریک آؤٹ سگنلز کا شکار ہوتے ہیں ، جس سے نقصانات ہوتے ہیں۔ ای ایم اے لمبائی کو ٹھیک کریں یا دوسرے فلٹر شامل کریں۔

  2. آر ایس آئی صرف اوور بکڈ / اوور سیلڈ سطحوں کی نشاندہی کرتا ہے ، رجحان کی تبدیلی نہیں کرتا ہے۔ رجحانات کو یاد یا الٹ سکتا ہے۔ دوسرے اشارے کے ساتھ مل کر۔

  3. ADX صرف رجحان کی موجودگی کا فیصلہ کرتا ہے، اندراج کا وقت بند ہوسکتا ہے۔ دوسرے قوانین شامل کریں یا ADX کی حد کو کم کریں۔

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

  5. جبری ہفتہ وار بندش سے اچھے رجحان کے مواقع ضائع ہو سکتے ہیں۔ روزانہ بندش یا مشروط باہر نکلنے پر غور کریں۔

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

حکمت عملی کو مندرجہ ذیل پہلوؤں میں بہتر بنایا جاسکتا ہے:

  1. زیادہ سے زیادہ لمبائی تلاش کرنے کے لئے مختلف ای ایم اے کے مجموعے کی جانچ کریں۔ اضافی رجحان کی طاقت کے لئے ڈھلوان پر غور کریں۔

  2. مختلف آر ایس آئی پیرامیٹرز کو آزمائیں یا بہتر خریدی / oversold فیصلے کے لئے KDJ کے ساتھ مل کر.

  3. زیادہ مناسب فلٹرنگ اور اعلی انٹری معیار کے لئے ADX پیرامیٹرز کو بہتر بنائیں.

  4. فکسڈ اسٹاپ اور اے ٹی آر پر مبنی متحرک ٹریلنگ کا ٹیسٹ مجموعہ۔

  5. ٹرینڈ کی تصدیق کے بعد دن کے اندر بریکآؤٹ پل بیک اندراجات شامل کریں، جیسے کم ٹائم فریم۔

  6. مارکیٹ کی اتار چڑھاؤ پر مبنی متحرک ایڈجسٹمنٹ کے لئے اتار چڑھاؤ پر مبنی پوزیشن سائزنگ متعارف کرانا۔

  7. موافقت کے لئے پیرامیٹرز کو خودکار طور پر بہتر بنانے کے لئے مشین لرننگ کی تکنیکوں کا پتہ لگائیں۔

خلاصہ

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


/*backtest
start: 2022-09-21 00:00:00
end: 2023-09-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Hucklekiwi Pip - HLHB Trend-Catcher System", shorttitle="HLHB TCS", overlay=true,
  default_qty_type=strategy.percent_of_equity, default_qty_value=100)

// -----------------------------------------------------------------------------
// HLHB Trend-Catcher System as described on BabyPips.com
//
// Strategy Author: Hucklekiwi Pip 
// Coded By: Backtest Rookies
// -----------------------------------------------------------------------------
//
// Refs:
//   - Original System: https://www.babypips.com/trading/forex-hlhb-system-explained
//   - Updated System: https://www.babypips.com/trading/forex-hlhb-system-20190311
//
//
// Description (From Hucklekiwi Pip)
// 
//   The HLHB System simply aims to catch short-term forex trends.
//   It is patterned after the Amazing Crossover System that Robopip once backtested.
//   In fact, it was one of his highest-scoring mechanical systems in 2014! 
//   The system can be applied to any pair, but since I’m into major pairs, 
//   I’m applying it to the 1-hour charts of EUR/USD and GBP/USD.
// -----------------------------------------------------------------------------
// STRATEGY REQUIREMENTS
// -----------------------------------------------------------------------------
//
// Setup
// -----
//  - EUR/USD 1-hour chart
//  - GBP/USD 1-hour chart
//  - 5 EMA: blue line
//  - 10 EMA: red line
//  - RSI (10) applied to the median price (HL/2)
//  - ADX (14)
//
// Entry
// -----
//  - BUY when the 5 EMA crosses above the 10 EMA from underneath and the RSI 
//    crosses above the 50.0 mark from the bottom.
//  - SELL when the 5 EMA crosses below the 10 EMA from the top and the RSI 
//    crosses below the 50.0 mark from the top.
//  - Make sure that the RSI did cross 50.0 from the top or bottom and not just 
//    ranging tightly around the level.
//  - ADX > 25 for Buy and Sells
//
// Exit
// ----
//  - Use a 50-pip trailing stop and a 200-pip profit target. This increases the 
//    chances of the system riding longer trends.
//  - Close the trade when a new signal materializes.
//  - Close all trades by the end of the week.
// 
// -----------------------------------------------------------------------------

// Strategy Varaibles
// -------------------
ema_fast_len = input(5, title='Fast EMA Length')
ema_slow_len = input(10 , title='Slow EMA Length')
rsi_len = input(10, title='Slow EMA Length')
session_end_hour = input(16, minval=0, maxval=23, title='Weekly Session End (Hour)')
session_end_minute = input(0, minval=0, maxval=59, title='Weekly Session End (Minute)')
// Targets taken from the update post which states 150 & 400 instead of 50 and 200.
profit_target = input(400, title='Profit Target (Pips/Points)')
trailing_stop_dist = input(150, title='Trailing Stop Distance (Pips/Points)')
adx_filt = input(true, title='User ADX Filter')
adx_min = input(25, minval=0, title='Minimum ADX Level')
adx_len = input(14, title="ADX Smoothing")
di_len = input(14, title="DI Length")

// Setup the Indicators
ema_fast = ema(close, ema_fast_len)
ema_slow = ema(close, ema_slow_len)
rsi_ind = rsi(close, rsi_len)

// ADX
adx_dirmov(len) =>
	up = change(high)
	down = -change(low)
	plusDM = na(up) ? na : (up > down and up > 0 ? up : 0)
    minusDM = na(down) ? na : (down > up and down > 0 ? down : 0)
	truerange = rma(tr, len)
	plus = fixnan(100 * rma(plusDM, len) / truerange)
	minus = fixnan(100 * rma(minusDM, len) / truerange)
	[plus, minus]

adx_adx(dilen, adxlen) =>
	[plus, minus] = adx_dirmov(dilen)
	sum = plus + minus
	adx = 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen)
	[adx, plus, minus]

[adx_sig, adx_plus, adx_minus] = adx_adx(di_len, adx_len)


// Strategy Logic
ema_long_cross = crossover(ema_fast, ema_slow)
ema_short_cross = crossunder(ema_fast, ema_slow)
rsi_long_cross = crossover(rsi_ind, 50)
rsi_short_cross = crossunder(rsi_ind, 50)
adx_check = adx_filt ? adx_sig >= adx_min : true

longCondition = ema_long_cross and rsi_long_cross and adx_check
if (longCondition)
    strategy.entry("Long", strategy.long)

shortCondition = ema_short_cross and rsi_short_cross and adx_check
if (shortCondition)
    strategy.entry("Short", strategy.short)

strategy.exit("SL/TP", "Long", profit=profit_target,  loss=trailing_stop_dist, trail_points=trailing_stop_dist)  
strategy.exit("SL/TP", "Short", profit=profit_target, loss=trailing_stop_dist, trail_points=trailing_stop_dist)  

// Friday = 6
// If we miss the hour for some reason (due to strange timeframe), then close immediately
// Else if we are on the closing hour, then check to see if we are on or passed the close minute
close_time = dayofweek == 6 ? 
  hour[0] > session_end_hour ? true :
  hour[0] == session_end_hour ?
      minute[0] >= session_end_minute :
  false : false

strategy.close_all(when=close_time)

// Plotting
plot(ema_fast, color=blue, title="Fast EMA")
plot(ema_slow, color=red, title="Slow EMA")

plotshape(rsi_long_cross, style=shape.triangleup, size=size.tiny, location=location.belowbar, color=green, title='RSI Long Cross Marker')
plotshape(rsi_short_cross, style=shape.triangledown, size=size.tiny, location=location.abovebar, color=red, title='RSI Short Cross Marker')

// ADX Filter Highlight
bgcolor(adx_filt and adx_check ? orange : na, transp=90)

مزید