یہ حکمت عملی ہائکن ایشی موم بتیوں اور رجحان کی نشاندہی اور تجارتی اشاروں کے لئے پی ایس اے آر اشارے کو جوڑتی ہے۔ اس کا مقصد درمیانی اور طویل مدتی رجحانات کو پکڑنا ہے۔
حکمت عملی منطق:
حساب Heikin-Ashi کھلی، قریبی، اعلی اور کم.
موم بتی کا رنگ عبوری بیل/بہار رجحان کا تعین کرتا ہے۔
پی ایس اے آر کا حساب لگائیں اور جب یہ ہیکن-اشی قیمت کو عبور کرتا ہے تو رجحان کی تبدیلی کی نشاندہی کریں۔
پی ایس اے آر ڈاؤن ٹرینڈ پر لانگ اور پی ایس اے آر اپ ٹرینڈ پر شارٹ کریں۔
پی ایس اے آر نئے اعلی / کم اور تیز رفتار فیکٹر کی بنیاد پر اپنانے.
فوائد:
مجموعہ درستگی کو بہتر بناتا ہے - ہیکن-اشی شور فلٹر کرتا ہے ، پی ایس اے آر الٹ کو پکڑتا ہے۔
انکولی پی ایس اے آر جو مارکیٹ کے بدلتے حالات کے مطابق ہو سکتا ہے۔
واضح قواعد پیرامیٹر کی اصلاح کو فائدہ پہنچاتے ہیں۔
خطرات:
ہیکن اشی اور پی ایس اے آر کے پیچھے پڑنے سے بہترین اندراجات غائب ہوسکتے ہیں۔
PSAR متضاد رجحانات میں جھوٹے سگنل کا شکار.
سخت رسک مینجمنٹ کی ضرورت ہے کہ وہ وِپساؤز کے خلاف دفاع کریں۔
خلاصہ میں ، یہ حکمت عملی رجحان کے تناظر کے لئے ہائکن آشی کو پی ایس اے آر کے ساتھ جوڑتی ہے۔ تاخیر اور جھوٹے سگنلز کو محتاط رہنے کی ضرورت ہوتی ہے لیکن طویل مدتی مستحکم فوائد کے ل optimization اصلاح کے ذریعے قابو پایا جاسکتا ہے۔
/*backtest start: 2023-08-12 00:00:00 end: 2023-09-11 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("QuantNomad - Heikin-Ashi PSAR Strategy", shorttitle = "HA-PSAR[QN]", overlay = false) //////////// // INPUTS // start = input(0.02, title = "PSAR Start") increment = input(0.02, title = "PSAR Increment") maximum = input(0.2, title = "PSAR Max") start_year = input(2018, 'Start Year', input.integer) start_month = input(1, 'Start Month', input.integer) start_day = input(1, 'Start Day', input.integer) end_year = input(2100, 'End Year', input.integer) end_month = input(1, 'End Month', input.integer) end_day = input(1, 'End Day', input.integer) date_start = timestamp(start_year, start_month, start_day, 00, 00) date_end = timestamp(end_year, end_month, end_day, 00, 00) // if time is in correct period time_cond = time >= date_start and time <= date_end // Calculation HA Values haopen = 0.0 haclose = (open + high + low + close) / 4 haopen := na(haopen[1]) ? (open + close) / 2 : (haopen[1] + haclose[1]) / 2 hahigh = max(high, max(haopen, haclose)) halow = min(low, min(haopen, haclose)) // HA colors hacolor = haclose > haopen ? color.green : color.red psar = 0.0 // PSAR af = 0.0 // Acceleration Factor trend_dir = 0 // Current direction of PSAR ep = 0.0 // Extreme point trend_bars = 0 sar_long_to_short = trend_dir[1] == 1 and haclose <= psar[1] // PSAR switches from long to short sar_short_to_long = trend_dir[1] == -1 and haclose >= psar[1] // PSAR switches from short to long trend_change = barstate.isfirst[1] or sar_long_to_short or sar_short_to_long // Calculate trend direction trend_dir := barstate.isfirst[1] and haclose[1] > haopen[1] ? 1 : barstate.isfirst[1] and haclose[1] <= haopen[1] ? -1 : sar_long_to_short ? -1 : sar_short_to_long ? 1 : nz(trend_dir[1]) trend_bars := sar_long_to_short ? -1 : sar_short_to_long ? 1 : trend_dir == 1 ? nz(trend_bars[1]) + 1 : trend_dir == -1 ? nz(trend_bars[1]) - 1 : nz(trend_bars[1]) // Calculate Acceleration Factor af := trend_change ? start : (trend_dir == 1 and hahigh > ep[1]) or (trend_dir == -1 and low < ep[1]) ? min(maximum, af[1] + increment) : af[1] // Calculate extreme point ep := trend_change and trend_dir == 1 ? hahigh : trend_change and trend_dir == -1 ? halow : trend_dir == 1 ? max(ep[1], hahigh) : min(ep[1], halow) // Calculate PSAR psar := barstate.isfirst[1] and haclose[1] > haopen[1] ? halow[1] : barstate.isfirst[1] and haclose[1] <= haopen[1] ? hahigh[1] : trend_change ? ep[1] : trend_dir == 1 ? psar[1] + af * (ep - psar[1]) : psar[1] - af * (psar[1] - ep) plotcandle(haopen, hahigh, halow, haclose, title = "HA", color = hacolor) plot(psar, style=plot.style_cross, color=trend_dir == 1 ? color.green : color.red, linewidth = 2) // Strategy strategy.entry("long", true, when = sar_short_to_long and time_cond) strategy.entry("short", false, when = sar_long_to_short and time_cond)