حرکت پذیری اوسط اور اتار چڑھاؤ پر مبنی حکمت عملی کے بعد رجحان


تخلیق کی تاریخ: 2023-09-21 21:32:40 آخر میں ترمیم کریں: 2023-09-21 21:32:40
کاپی: 0 کلکس کی تعداد: 658
1
پر توجہ دیں
1617
پیروکار

جائزہ

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

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

اس حکمت عملی میں درج ذیل اہم اقدامات شامل ہیں:

  1. تیز اوسط لائن اور سست اوسط لائن کا حساب لگائیں۔ اوسط لائن کا حساب کتاب VWAP کے بجائے اختتامی قیمت کا استعمال کرتے ہوئے کیا جاتا ہے ، جو حقیقی تجارت کی قیمت کو زیادہ درست طریقے سے ظاہر کرتا ہے۔

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

  3. ٹائم فریم حجم (TSV) کا اشارے متعارف کرایا گیا ہے تاکہ یہ معلوم کیا جا سکے کہ آیا ٹرانزیکشن کی مقدار میں اضافہ ہورہا ہے یا نہیں ، تاکہ رجحان کی تصدیق کی جاسکے۔

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

  5. اوسط لائن کی واپسی اور برن کے نیچے کی ریل کو اسٹاپ نقصانات کے طور پر استعمال کیا جاتا ہے۔

اسٹریٹجک فوائد

  • ایک سے زیادہ اشارے کا استعمال کرتے ہوئے کی تصدیق، مؤثر طریقے سے جعلی توڑ فلٹرنگ، رجحانات کی شناخت شروع

  • اوسط لکیری حساب کتاب کا طریقہ کار حقیقی ٹرانزیکشن کی قیمتوں کو زیادہ درست طریقے سے ظاہر کرتا ہے

  • رجحانات کا تعین کرنے کے لئے اتار چڑھاؤ کی شرح کے اشارے کے ساتھ مل کر

  • تجارت کے حجم کے اشارے میں اضافہ ، ترقی کے رجحانات کی تصدیق

  • معقول سٹاپ اور اسٹاپ معیار کا تعین کریں اور خطرات کو کنٹرول کریں

  • پیرامیٹرز کو ترتیب دیا جا سکتا ہے، بہترین حالت میں لچکدار ایڈجسٹ کر سکتے ہیں

اسٹریٹجک رسک

  • کثیر پیمائش کا مجموعہ فیصلہ، پیرامیٹرز کی اصلاح کے لئے مشکل مسئلہ

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

  • ٹائم فریم انڈیکیٹر پیرامیٹرز کی ترتیب کے لئے حساس ہے ، مختلف مارکیٹوں میں ایڈجسٹمنٹ کی ضرورت ہے

  • مارکیٹوں میں جمع کرنے کے لئے، ممکنہ طور پر زیادہ غلط سگنل پیدا کرنے کا امکان ہے

  • ٹرانزیکشن لاگت کے اثرات کو مدنظر نہ رکھتے ہوئے ، اصل منافع اور نقصان کی پیمائش کے نتائج سے کم ہوگی

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

  • مشین سیکھنے کے طریقوں کو استعمال کرتے ہوئے پیرامیٹرز کے مجموعے کو خود کار طریقے سے بہتر بنانے کی کوشش کریں

  • منافع کو بہتر طور پر لاک کرنے کے لئے متحرک موزوں اسٹاپ یا ٹریکنگ اسٹاپ سیٹ کریں

  • ٹرانزیکشن حجم توانائی کے اشارے متعارف کرانے سے ٹرانزیکشن کی غلطیوں سے بچنے سے بچنے سے بچنے کے لئے

  • لہر نظریہ کے ساتھ مل کر ، اس بات کا تعین کرنے کے لئے کہ کیا یہ رجحان کے ابتدائی ، درمیانی اور آخری مرحلے میں ہے ، متحرک ایڈجسٹمنٹ حکمت عملی کے پیرامیٹرز

  • اصل ٹرانزیکشن لاگت کے اثرات کو مدنظر رکھتے ہوئے ، لاگت کی کارکردگی پر قابو پانے کے لئے کم سے کم اسٹاپ اسپریڈ سیٹ کریں

خلاصہ کریں۔

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

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

// @version=4

// Credits

// "Vwap with period" code which used in this strategy to calculate the leadLine was written by "neolao" active on https://tr.tradingview.com/u/neolao/
// "TSV" code which used in this strategy was written by "liw0" active on https://www.tradingview.com/u/liw0. The code is corrected by "vitelot" December 2018.

strategy("HYE Trend Hunter [Strategy]", overlay = true, initial_capital = 1000, default_qty_value = 100, default_qty_type = strategy.percent_of_equity, commission_value = 0.025, pyramiding = 0)
  
// Strategy inputs 

slowtenkansenPeriod = input(9, minval=1, title="Slow Tenkan Sen VWAP Line Length", group = "Tenkansen / Kijunsen")
slowkijunsenPeriod = input(26, minval=1, title="Slow Kijun Sen VWAP Line Length", group = "Tenkansen / Kijunsen")
fasttenkansenPeriod = input(5, minval=1, title="Fast Tenkan Sen VWAP Line Length", group = "Tenkansen / Kijunsen")
fastkijunsenPeriod = input(13, minval=1, title="Fast Kijun Sen VWAP Line Length", group = "Tenkansen / Kijunsen")
BBlength = input(20, minval=1, title= "Bollinger Band Length", group = "Bollinger Bands")
BBmult = input(2.0, minval=0.001, maxval=50, title="Bollinger Band StdDev", group = "Bollinger Bands")
tsvlength  = input(13, minval=1, title="TSV Length", group = "Tıme Segmented Volume")
tsvemaperiod = input(7, minval=1, title="TSV Ema Length", group = "Tıme Segmented Volume")

// Make input options that configure backtest date range  
 
startDate = input(title="Start Date", type=input.integer,
     defval=1, minval=1, maxval=31, group = "Backtest Range")
startMonth = input(title="Start Month", type=input.integer,
     defval=1, minval=1, maxval=12, group = "Backtest Range")
startYear = input(title="Start Year", type=input.integer,
     defval=2000, minval=1800, maxval=2100, group = "Backtest Range")

endDate = input(title="End Date", type=input.integer, 
     defval=31, minval=1, maxval=31, group = "Backtest Range")
endMonth = input(title="End Month", type=input.integer,
     defval=12, minval=1, maxval=12, group = "Backtest Range") 
endYear = input(title="End Year", type=input.integer,
     defval=2021, minval=1800, maxval=2100, group = "Backtest Range")
     
inDateRange =  true

//Slow Tenkan Sen Calculation

typicalPriceTS = (high + low + close) / 3
typicalPriceVolumeTS = typicalPriceTS * volume
cumulativeTypicalPriceVolumeTS = sum(typicalPriceVolumeTS, slowtenkansenPeriod)
cumulativeVolumeTS = sum(volume, slowtenkansenPeriod)
slowtenkansenvwapValue = cumulativeTypicalPriceVolumeTS / cumulativeVolumeTS

//Slow Kijun Sen Calculation

typicalPriceKS = (high + low + close) / 3
typicalPriceVolumeKS = typicalPriceKS * volume
cumulativeTypicalPriceVolumeKS = sum(typicalPriceVolumeKS, slowkijunsenPeriod)
cumulativeVolumeKS = sum(volume, slowkijunsenPeriod)
slowkijunsenvwapValue = cumulativeTypicalPriceVolumeKS / cumulativeVolumeKS

//Fast Tenkan Sen Calculation

typicalPriceTF = (high + low + close) / 3
typicalPriceVolumeTF = typicalPriceTF * volume
cumulativeTypicalPriceVolumeTF = sum(typicalPriceVolumeTF, fasttenkansenPeriod)
cumulativeVolumeTF = sum(volume, fasttenkansenPeriod)
fasttenkansenvwapValue = cumulativeTypicalPriceVolumeTF / cumulativeVolumeTF

//Fast Kijun Sen Calculation

typicalPriceKF = (high + low + close) / 3
typicalPriceVolumeKF = typicalPriceKS * volume
cumulativeTypicalPriceVolumeKF = sum(typicalPriceVolumeKF, fastkijunsenPeriod)
cumulativeVolumeKF = sum(volume, fastkijunsenPeriod)
fastkijunsenvwapValue = cumulativeTypicalPriceVolumeKF / cumulativeVolumeKF

//Slow LeadLine Calculation
 
lowesttenkansen_s = lowest(slowtenkansenvwapValue, slowtenkansenPeriod)
highesttenkansen_s = highest(slowtenkansenvwapValue, slowtenkansenPeriod)

lowestkijunsen_s = lowest(slowkijunsenvwapValue, slowkijunsenPeriod)
highestkijunsen_s = highest(slowkijunsenvwapValue, slowkijunsenPeriod)

slowtenkansen = avg(lowesttenkansen_s, highesttenkansen_s)
slowkijunsen = avg(lowestkijunsen_s, highestkijunsen_s)
slowleadLine = avg(slowtenkansen, slowkijunsen)

//Fast LeadLine Calculation
 
lowesttenkansen_f = lowest(fasttenkansenvwapValue, fasttenkansenPeriod)
highesttenkansen_f = highest(fasttenkansenvwapValue, fasttenkansenPeriod)

lowestkijunsen_f = lowest(fastkijunsenvwapValue, fastkijunsenPeriod)
highestkijunsen_f = highest(fastkijunsenvwapValue, fastkijunsenPeriod)

fasttenkansen = avg(lowesttenkansen_f, highesttenkansen_f)
fastkijunsen = avg(lowestkijunsen_f, highestkijunsen_f)
fastleadLine = avg(fasttenkansen, fastkijunsen)

// BBleadLine Calculation

BBleadLine = avg(fastleadLine, slowleadLine)

// Bollinger Band Calculation
 
basis = sma(BBleadLine, BBlength)
dev = BBmult * stdev(BBleadLine, BBlength)
upper = basis + dev
lower = basis - dev

// TSV Calculation

tsv = sum(close>close[1]?volume*(close-close[1]):close<close[1]?volume*(close-close[1]):0,tsvlength)
tsvema = ema(tsv, tsvemaperiod)

// Rules for Entry & Exit  

if(fastleadLine > fastleadLine[1] and slowleadLine > slowleadLine[1] and tsv > 0 and tsv > tsvema and close > upper and inDateRange)
    strategy.entry("BUY", strategy.long)
 
if(fastleadLine < fastleadLine[1] and slowleadLine < slowleadLine[1])
    strategy.close("BUY")

// Plots 

colorsettingS = input(title="Solid Color Slow Leadline", defval=false, type=input.bool)
plot(slowleadLine, title = "Slow LeadLine", color = colorsettingS ? color.aqua : slowleadLine > slowleadLine[1] ? color.green : color.red, linewidth=3)

colorsettingF = input(title="Solid Color Fast Leadline", defval=false, type=input.bool)
plot(fastleadLine, title = "Fast LeadLine", color = colorsettingF ? color.orange : fastleadLine > fastleadLine[1] ? color.green : color.red, linewidth=3)

p1 = plot(upper, "Upper BB", color=#2962FF)
p2 = plot(lower, "Lower BB", color=#2962FF)
fill(p1, p2, title = "Background", color=color.blue)