حکمت عملی کے بعد قیمت کی رفتار کا رجحان


تخلیق کی تاریخ: 2023-11-13 16:44:58 آخر میں ترمیم کریں: 2023-11-13 16:44:58
کاپی: 0 کلکس کی تعداد: 652
1
پر توجہ دیں
1621
پیروکار

حکمت عملی کے بعد قیمت کی رفتار کا رجحان

جائزہ

متحرک قیمتوں کے رجحانات کی نگرانی کی حکمت عملی قیمتوں کے رجحانات کی نشاندہی کرنے کے لئے متعدد متحرک اشارے کا استعمال کرتے ہیں ، رجحانات کے آغاز کے مرحلے میں پوزیشن قائم کرتے ہیں ، منافع کو روکنے کے لئے روک تھام کو روکنے کے ذریعہ ، قیمتوں کے رجحانات کی نگرانی کے لئے۔

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

متحرک قیمتوں کے رجحانات کو ٹریک کرنے کی حکمت عملی میں بنیادی طور پر درج ذیل تکنیکی اشارے استعمال کیے جاتے ہیں۔

  1. آر او سی اشارے: یہ اشارے کسی خاص مدت کے دوران قیمت میں تبدیلی کی رفتار کی فیصد کا حساب کرکے قیمت کی نقل و حرکت کا فیصلہ کرتا ہے۔ جب آر او سی مثبت ہوتا ہے تو ، قیمت بڑھ رہی ہے۔ جب آر او سی منفی ہوتا ہے تو ، قیمت گر رہی ہے۔ حکمت عملی آر او سی اشارے کے ذریعہ قیمت کی رجحان کی سمت کا فیصلہ کرتی ہے۔

2۔ فضائی توانائی کا اشارے: یہ اشارے کثیر سر اور خالی سر قوت کے متضاد تعلقات کی عکاسی کرتا ہے۔ فضائی توانائی> 0 کا مطلب ہے کہ کثیر سر قوت فضائی سر قوت سے زیادہ ہے ، قیمت میں اضافہ ہوا ہے۔ اس کے برعکس قیمت میں کمی ہوئی ہے۔ حکمت عملی اس اشارے کا استعمال کثیر سر قوت کے موازنہ کا فیصلہ کرنے اور قیمت کی سمت کی پیش گوئی کرنے کے لئے کرتی ہے۔

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

4.ڈونچیان چینل: یہ اشارے قیمت کی اونچائی اور کم قیمت کے ذریعے چینل بناتا ہے ، چینل کی حدود حمایت اور مزاحمت کی حیثیت سے کام کرتی ہیں۔ حکمت عملی کو چینل کا استعمال کرتے ہوئے رجحان کی سمت کا فیصلہ کرنا ہے۔

5۔ منتقل اوسط: یہ اشارے قیمتوں کی حمایت کی اعلی یا کم اتار چڑھاؤ کو دور کرتا ہے ، جس سے اہم رجحانات کی سمت کا پتہ چلتا ہے۔ حکمت عملی اس کا استعمال قیمتوں کے مجموعی رجحانات کا اندازہ لگانے کے لئے کرتی ہے۔

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

طاقت کا تجزیہ

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

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

  2. انڈیکیٹرز کا استعمال کرتے ہوئے رجحانات کو درست طریقے سے پکڑنے کے لئے موڑنے کے نقطہ نظر سے دور.

  3. چینل اور حرکت پذیر اوسط کے ساتھ مل کر ، بڑے رجحانات کی سمت کا تعین کریں۔

  4. روک تھام کی روک تھام کا مقام مقرر کریں ، جو وقت پر روکنے کے قابل ہو ، تاکہ واپسی میں توسیع نہ ہو۔

  5. پیرامیٹرز کے مطابق ایڈجسٹ کیا جاسکتا ہے ، جو مختلف ادوار اور اقسام کے لین دین کے لئے موزوں ہے۔

  6. حکمت عملی کی منطق واضح اور آسانی سے سمجھنے کے لئے آسان ہے، بعد میں بہتر بنانے کے لئے.

خطرے کا تجزیہ

اس حکمت عملی میں کچھ خطرات بھی ہیں:

  1. ایک سے زیادہ اشارے کے مجموعے کے فیصلے سے غلط سگنل کا امکان بڑھ جاتا ہے ، اور اشارے کے وزن کو بہتر بنانے کے لئے پیرامیٹرز کو ایڈجسٹ کرنے کی ضرورت ہے۔

  2. اسٹاپ نقصان کا نقطہ بہت چھوٹا ہونا اسٹاپ نقصان کی امکان کو بڑھا سکتا ہے ، اور اس سے زیادہ حد تک واپسی کو بڑھا سکتا ہے۔ معقول اسٹاپ نقصان کا تعین کرنے کے لئے جامع غور کی ضرورت ہے۔

  3. مختلف مارکیٹ سائیکل پیرامیٹرز کو ایڈجسٹ کرنے کی ضرورت ہے ، اندھے اطلاق سے مارکیٹ کے ماحول میں عدم موافقت پیدا ہوسکتی ہے۔

  4. کافی فنڈز کی ضرورت ہوتی ہے جو کثیر یونٹ سمیٹ ٹریڈنگ کی حمایت کرے ، ورنہ اس سے زیادہ منافع حاصل کرنا مشکل ہوگا۔

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

اصلاح کی سمت

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

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

  2. مشین سیکھنے کے الگورتھم کو شامل کریں اور خود کار طریقے سے بہترین پیرامیٹرز تلاش کریں.

  3. مارکیٹ کے حالات کے مطابق اسٹاپ نقصان کو ایڈجسٹ کرنے کے لئے ایڈجسٹ اسٹاپ نقصان کا طریقہ کار شامل کریں۔

  4. اعلی تعدد عنصر اور بنیادی اشارے کے ساتھ مل کر ، حکمت عملی کو بہتر بنانے کے لئے الفا

  5. خودکار ٹیسٹنگ فریم ورک تیار کریں ، پیرامیٹرز کے مجموعے کو ایڈجسٹ کریں اور ٹرانزیکشن کی تاثیر کی توثیق کریں۔

  6. خطرے کے انتظام کے ماڈیول کو متعارف کرانے، پوزیشن کے سائز کو کنٹرول کرنے اور واپسی کو کم کرنے کے لئے.

  7. سیمالٹ ٹرانزیکشنز اور ریئل ٹائم کی توثیق کو بڑھانا، حکمت عملی کی استحکام کو بہتر بنانا

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-11-05 00:00:00
end: 2023-11-09 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © mbagheri746

//@version=4
strategy("Bagheri IG Ether v2", overlay=true, margin_long=100, margin_short=100)

TP = input(3000, minval = 1 , title ="Take Profit")
SL = input(2200, minval = 1 , title ="Stop Loss")


//_________________ RoC Definition _________________


rocLength = input(title="ROC Length", type=input.integer, minval=1, defval=186)
smoothingLength = input(title="Smoothing Length", type=input.integer, minval=1, defval=50)
src = input(title="Source", type=input.source, defval=close)

ma = ema(src, smoothingLength)
mom = change(ma, rocLength)

sroc = nz(ma[rocLength]) == 0
     ? 100
     : mom == 0
         ? 0
         : 100 * mom / ma[rocLength]

//srocColor = sroc >= 0 ? #0ebb23 : color.red
//plot(sroc, title="SROC", linewidth=2, color=srocColor, transp=0)
//hline(0, title="Zero Level", linestyle=hline.style_dotted, color=#989898)


//_________________ Donchian Channel _________________

length1 = input(53, minval=1, title="Upper Channel")
length2 = input(53, minval=1, title="Lower Channel")
offset_bar = input(91,minval=0, title ="Offset Bars")

upper = highest(length1)
lower = lowest(length2)

basis = avg(upper, lower)


DC_UP_Band = upper[offset_bar]
DC_LW_Band = lower[offset_bar]

l = plot(DC_LW_Band, style=plot.style_line, linewidth=1, color=color.red)
u = plot(DC_UP_Band, style=plot.style_line, linewidth=1, color=color.aqua)

fill(l,u,color = color.new(color.aqua,transp = 90))

//_________________ Bears Power _________________


wmaBP_period = input(65,minval=1,title="BearsP WMA Period")
line_wma = ema(close, wmaBP_period)

BP = low - line_wma


//_________________ Balance of Power _________________

ES_BoP=input(15, title="BoP Exponential Smoothing")
BOP=(close - open) / (high - low)

SBOP = rma(BOP, ES_BoP)

//_________________ Alligator _________________

//_________________ CCI _________________

//_________________ Moving Average _________________

sma_period = input(74, minval = 1 , title = "SMA Period")
sma_shift = input(37, minval = 1 , title = "SMA Shift")

sma_primary = sma(close,sma_period)

SMA_sh = sma_primary[sma_shift]

plot(SMA_sh, style=plot.style_line, linewidth=2, color=color.yellow)

//_________________ Long Entry Conditions _________________//

MA_Lcnd = SMA_sh > low and SMA_sh < high

ROC_Lcnd = sroc < 0

DC_Lcnd = open < DC_LW_Band

BP_Lcnd = BP[1] < BP[0] and BP[1] < BP[2]

BOP_Lcnd = SBOP[1] < SBOP[0]

//_________________ Short Entry Conditions _________________//

MA_Scnd = SMA_sh > low and SMA_sh < high

ROC_Scnd = sroc > 0

DC_Scnd = open > DC_UP_Band

BP_Scnd = BP[1] > BP[0] and BP[1] > BP[2]

BOP_Scnd = SBOP[1] > SBOP[0]

//_________________ OPEN POSITION __________________//

if strategy.position_size  == 0
    strategy.entry(id = "BUY", long = true , when = MA_Lcnd and ROC_Lcnd and DC_Lcnd and BP_Lcnd and BOP_Lcnd)
    strategy.entry(id = "SELL", long = false , when = MA_Scnd and ROC_Scnd and DC_Scnd and BP_Scnd and BOP_Scnd)

//_________________ CLOSE POSITION __________________//

strategy.exit(id = "CLOSE BUY", from_entry = "BUY", profit = TP , loss = SL)

strategy.exit(id = "CLOSE SELL", from_entry = "SELL" , profit = TP , loss = SL)

//_________________ TP and SL Plot __________________//

currentPL= strategy.openprofit
pos_price = strategy.position_avg_price
open_pos = strategy.position_size

TP_line = (strategy.position_size  > 0) ? (pos_price + TP/100) : strategy.position_size < 0 ? (pos_price - TP/100) : 0.0
SL_line = (strategy.position_size  > 0) ? (pos_price - SL/100) : strategy.position_size < 0 ? (pos_price + SL/100) : 0.0

// hline(TP_line, title = "Take Profit", color = color.green , linestyle = hline.style_dotted, editable = false)
// hline(SL_line, title = "Stop Loss", color = color.red , linestyle = hline.style_dotted, editable = false)


Tline = plot(TP_line != 0.0 ? TP_line : na , title="Take Profit", color=color.green, trackprice = true, show_last = 1)
Sline = plot(SL_line != 0.0 ? SL_line : na, title="Stop Loss", color=color.red, trackprice = true, show_last = 1)
Pline = plot(pos_price != 0.0 ? pos_price : na, title="Stop Loss", color=color.gray, trackprice = true, show_last = 1)


fill(Tline , Pline, color = color.new(color.green,transp = 90))
fill(Sline , Pline, color = color.new(color.red,transp = 90))

//_________________ Alert __________________//

//alertcondition(condition = , title = "Position Alerts", message = "Bagheri IG Ether\n Symbol: {{ticker}}\n Type: {{strategy.order.id}}")

//_________________ Label __________________//


inMyPrice           = input(title="My Price", type=input.float, defval=0)
inLabelStyle        = input(title="Label Style", options=["Upper Right", "Lower Right"], defval="Lower Right")

posColor = color.new(color.green, 25)
negColor = color.new(color.red, 25)
dftColor = color.new(color.aqua, 25)
posPnL   = (strategy.position_size != 0) ? (close * 100 / strategy.position_avg_price - 100) : 0.0
posDir   = (strategy.position_size  > 0) ? "long" : strategy.position_size < 0 ? "short" : "flat"
posCol   = (strategy.openprofit > 0) ? posColor : (strategy.openprofit < 0) ? negColor : dftColor
myPnL    = (inMyPrice != 0) ? (close * 100 / inMyPrice - 100) : 0.0

var label lb = na
label.delete(lb)
lb := label.new(bar_index, close,
   color=posCol,
   style=inLabelStyle=="Lower Right"?label.style_label_upper_left:label.style_label_lower_left,
   text=
      "╔═══════╗" +"\n" + 
      "Pos: "  +posDir +"\n" +
      "Pos Price: "+tostring(strategy.position_avg_price) +"\n" +
      "Pos PnL: "  +tostring(posPnL, "0.00") + "%" +"\n" +
      "Profit: "  +tostring(strategy.openprofit, "0.00") + "$" +"\n" +
      "TP: "  +tostring(TP_line, "0.00") +"\n" +
      "SL: "  +tostring(SL_line, "0.00") +"\n" +
      "╚═══════╝")