رفتار توڑ دو طرفہ ٹریکنگ کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-12-18 10:47:46
ٹیگز:

img

جائزہ

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

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

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

  2. اوسط سمت کا اشاریہ (ADX) رجحان کی طاقت کا اندازہ کرنے کے لئے استعمال کیا جاتا ہے۔ ADX کی قیمت جتنی زیادہ ہوگی ، رجحان اتنا ہی مضبوط ہوگا۔ یہ حکمت عملی سگنل کو فلٹر کرنے کے لئے ایک حد کے ساتھ ADX کا استعمال کرتی ہے ، صرف اس وقت سگنل پیدا کرتی ہے جب رجحان کافی مضبوط ہوتا ہے۔

  3. ڈائریکشنل اشارے DI+ اور DI- بالترتیب اپ ٹرینڈ اور ڈاؤن ٹرینڈ کی طاقت کی نمائندگی کرتے ہیں۔ یہ حکمت عملی غلط اشاروں سے بچنے کے لئے طاقت کی تصدیق کے لئے DI+ اور DI- حدوں کا بھی استعمال کرتی ہے۔

  4. خریدنے کے سگنل اس وقت پیدا ہوتے ہیں جب قیمتیں وسط پوائنٹ سے اوپر ہوتی ہیں ، ADX حد سے زیادہ ہے ، اور DI + حد سے زیادہ ہے۔ فروخت کے سگنل اس وقت پیدا ہوتے ہیں جب قیمتیں وسط پوائنٹ سے نیچے ہوتی ہیں ، ADX حد سے زیادہ ہے ، اور DI- حد سے زیادہ ہے۔

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

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

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

مجموعی طور پر، یہ حکمت عملی رجحانات کو آسانی سے ٹریک کر سکتی ہے، بروقت داخل اور باہر نکل سکتی ہے، اور اس وقت بھی رجحانات کی تبدیلیوں سے نقصانات کو کم کرنے کے دوران مضبوطی میں پھنس جانے سے بچ سکتی ہے.

خطرے کا تجزیہ

اس حکمت عملی میں عارضی قیمتوں میں ردوبدل سے کچھ خطرہ ہے جو غلط سگنل پیدا کرتا ہے۔ نیز ، ADX اور DI کی حدوں کا استعمال کچھ ابتدائی مواقع کو ضائع کرنے کا سبب بن سکتا ہے۔

وِپسا خطرات کو کم کرنے کے لیے، ہیلو ایکٹیویٹر پیرامیٹرز کو بڑھا کر بریک آؤٹ رینج بڑھانا۔ مزید مواقع حاصل کرنے کے لیے، سگنل کے معیار کی قیمت پر ADX اور DI کی حدیں کم کریں۔

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

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

اس حکمت عملی کو بہتر بنانے کے اہم طریقے شامل ہیں:

  1. ہلو ایکٹیویٹر کی مدت اور ٹرگر کی سطح کو ایڈجسٹ کریں تاکہ وِپسا کے خطرات اور ٹائمنگ کو متوازن کیا جا سکے۔

  2. سگنل کی کیفیت اور تعدد کو متوازن کرنے کے لئے ADX مدت اور حد کو ایڈجسٹ کریں.

  3. DI+ اور DI- کے لئے الگ الگ حد مقرر کریں تاکہ اوپر اور نیچے کے رجحانات کے درمیان اختلافات کو ایڈجسٹ کیا جاسکے۔

  4. ایک ہی تجارت کے نقصان کو کنٹرول کرنے کے لئے سٹاپ نقصان کی سطح کے ساتھ سٹاپ نقصان کی حکمت عملی شامل کریں.

  5. مجموعی استحکام کو بہتر بنانے کے لئے دیگر معاون اشارے کے ساتھ مل کر.

نتیجہ

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


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

//@version=4
strategy("HiLo Activator with ADX", shorttitle="HASB_ADX", overlay=true)

// Parameters for the HiLo Activator
length_ha = input(14, title="HiLo Activator Period")
offset_ha = input(0, title="Offset")
trigger_ha = input(1, title="Trigger for Buy/Sell")

// Parameters for ADX
adx_length = input(14, title="ADX Period", minval=1)
adx_threshold = input(25, title="ADX Threshold")
di_threshold = input(50, title="DI Threshold")

// Parameter for choosing the number of candles for backtest
backtest_candles = input(1000, title="Number of Candles for Backtest", minval=1)

// Function to get backtest data
getBacktestData() =>
    var float data = na
    if bar_index >= backtest_candles
        data := security(syminfo.tickerid, "D", close[backtest_candles])
    data

// HiLo Activator calculations
ha = (highest(high, length_ha) + lowest(low, length_ha)) / 2

// ADX calculations
trh = high - high[1]
trl = low[1] - low
tr = max(trh, trl)
atr = sma(tr, adx_length)
plus_dm = high - high[1] > low[1] - low ? max(high - high[1], 0) : 0
minus_dm = low[1] - low > high - high[1] ? max(low[1] - low, 0) : 0
smoothed_plus_dm = sma(plus_dm, adx_length)
smoothed_minus_dm = sma(minus_dm, adx_length)
di_plus = 100 * (smoothed_plus_dm / atr)
di_minus = 100 * (smoothed_minus_dm / atr)
dx = 100 * abs(di_plus - di_minus) / (di_plus + di_minus)
adx = sma(dx, adx_length)

// Buy and Sell signals based on HiLo Activator and ADX
signalLong = crossover(close, ha) and adx > adx_threshold and di_plus > di_threshold
signalShort = crossunder(close, ha) and adx > adx_threshold and di_minus > di_threshold

// Plot HiLo Activator and ADX
plot(ha, color=color.blue, title="HiLo Activator")
plot(offset_ha, color=color.red, style=plot.style_histogram, title="Offset")
plot(adx, color=color.purple, title="ADX")

// Backtest strategy
strategy.entry("Buy", strategy.long, when = signalLong)
strategy.entry("Sell", strategy.short, when = signalShort)
strategy.close("Buy", when = signalShort)
strategy.close("Sell", when = signalLong)

// Accuracy percentage
var accuracy = 0.0
var totalTrades = 0
var winningTrades = 0

if (signalLong or signalShort)
    totalTrades := totalTrades + 1

if (signalLong and (not na(signalLong[1]) and (not signalLong[1])))
    winningTrades := winningTrades + 1

if (signalShort and (not na(signalShort[1]) and (not signalShort[1])))
    winningTrades := winningTrades + 1

accuracy := totalTrades > 0 ? (winningTrades / totalTrades) * 100 : 0

// Plot accuracy percentage on the chart
plot(accuracy, title="Accuracy Percentage", color=color.purple, style=plot.style_histogram)


مزید