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

رینکو اے ٹی آر رجحان الٹ کرنے کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2024-02-01 14:30:24
ٹیگز:

img

جائزہ

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

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

رینکو برک جنریشن

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

خرید و فروخت سگنل جنریشن

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

نقصانات کو روکیں اور منافع حاصل کریں

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

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

دوبارہ پینٹنگ کا خاتمہ

کھلنے اور بند ہونے کی قیمتوں کا دستی حساب لگانے سے ، دوبارہ پینٹنگ کو ختم کردیا جاتا ہے ، جس سے سگنل زیادہ درست اور بروقت ہوجاتے ہیں۔

اتار چڑھاؤ کے لیے خودکار موافقت

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

متحرک سٹاپ نقصان اور منافع لے لو

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

صاف چارٹ ویو

رینکو چارٹ مارکیٹ کے شور کو فلٹر کرتا ہے اور رجحان کی تبدیلیوں کو دیکھنے کے لئے ایک صاف بصری فراہم کرتا ہے۔

خطرے کا تجزیہ

پیرامیٹر کی اصلاح کے خطرات

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

واقعات کے خطرات

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

ناکام واپسی کے خطرات

بعض صورتوں میں، سگنل شدہ الٹ پیٹرن کو حاصل کرنے میں ناکام ہوسکتا ہے، جس کی وجہ سے تجارت کو کھونا پڑتا ہے.

بہتر مواقع

متعدد ٹائم فریم استعمال کرنا

مجموعی رجحان کی سمت کا اندازہ کرنے کے لئے زیادہ وقت کے فریم استعمال کیے جاسکتے ہیں۔ کم وقت کے فریم غلط سگنل کو فلٹر کرسکتے ہیں۔

دیگر اشارے کا امتزاج

رفتار، اتار چڑھاؤ یا دیگر اشارے کو مل کر استعمال کرنے سے سگنل کی کوالٹی میں اضافہ ہوسکتا ہے اور غلط سگنل سے بچنے سے بچ سکتا ہے.

متحرک طور پر منافع میں تبدیلی

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

نتیجہ

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


/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy(title='[tradinghook] - Renko Trend Reversal Strategy', shorttitle='[tradinghook] - Renko TRS', overlay=true ,initial_capital = 100, commission_value = 0.05, default_qty_value = 5)

// INPUTS
renkoATRLength = input.int(10, minval=1, title='ATR Length')
stopLossPct = input.float(3, title='Stop Loss Percentage', step=0.1)
takeProfitPct = input.float(20, title='Take Profit Percentage', step=0.1)
startDate = input(timestamp("01 July 2023 00:00"), title="Start Date")
endDate = input(timestamp("31 Dec 2025 23:59"), title="End Date")
enableShorts = input.bool(true, title="Enable Shorts")

var float stopLossPrice = na
var float takeProfitPrice = na

atr = ta.atr(renkoATRLength)

// thanks to https://www.tradingview.com/script/2vKhpfVH-Renko-XZ/ for manually calculating renkoClose and renkoOpen in order to remove repaint
getRenkoClose() =>
    p1 = 0.0
    p1 := close > nz(p1[1]) + atr ? nz(p1[1]) + atr : close < nz(p1[1]) - atr ? nz(p1[1]) - atr : nz(p1[1])
    p1

Renko3() =>
    p3 = 0.0
    p3 := open > nz(p3[1]) + atr ? nz(p3[1]) + atr : open < nz(p3[1]) - atr ? nz(p3[1]) - atr : nz(p3[1])
    p3

getRenkoOpen() =>
    open_v = 0.0
    Br_2 = Renko3()
    open_v := Renko3() != Renko3()[1] ? Br_2[1] : nz(open_v[1])
    open_v

renkoOpen = getRenkoOpen()
renkoClose = getRenkoClose()

// COLORS
colorGreen = #089981
colorRed = #F23645
bgTransparency = 95
bgColorRed = color.new(colorRed, bgTransparency)
bgColorGreen = color.new(colorGreen, bgTransparency)
lineColor = renkoClose < renkoOpen ?  colorRed : colorGreen 
bgColor = renkoClose < renkoOpen ?  bgColorRed : bgColorGreen 

// PLOTS
plot(renkoOpen, title="Renko Open", style=plot.style_line, linewidth=2, color=lineColor)
bgcolor(bgColor)

// SIGNALS
isWithinTimeRange = true
buySignal = ta.crossunder(renkoOpen, renkoClose) and isWithinTimeRange
sellSignal = ta.crossover(renkoOpen, renkoClose) and isWithinTimeRange and enableShorts

if (buySignal)
    stopLossPrice := renkoOpen * (1 - stopLossPct / 100)
    takeProfitPrice := renkoOpen * (1 + takeProfitPct / 100)
    strategy.entry("Long", strategy.long)
    strategy.exit("ExitLong", "Long", stop = stopLossPrice, limit = takeProfitPrice, comment="SL: " + str.tostring(stopLossPrice) + ", TP: " + str.tostring(takeProfitPrice))
if (sellSignal)
    stopLossPrice := renkoOpen * (1 + stopLossPct / 100)
    takeProfitPrice := renkoOpen * (1 - takeProfitPct / 100)
    strategy.entry("Short", strategy.short)
    strategy.exit("ExitShort", "Short", stop = stopLossPrice, limit = takeProfitPrice, comment="SL: " + str.tostring(stopLossPrice) + ", TP: " + str.tostring(takeProfitPrice))


مزید