تکرار والی والیوم ٹریڈنگ کی حکمت عملی


تخلیق کی تاریخ: 2024-01-31 16:56:31 آخر میں ترمیم کریں: 2024-01-31 16:56:31
کاپی: 0 کلکس کی تعداد: 327
1
پر توجہ دیں
1166
پیروکار

تکرار والی والیوم ٹریڈنگ کی حکمت عملی

جائزہ

یہ حکمت عملی رجحانات کی پیروی اور الیکسگروور کی طرف سے تیار کردہ رجحانات کی پیروی اور توڑنے کی حکمت عملی پر مبنی ہے. حکمت عملی قیمتوں کے رجحانات اور اہم معاون مزاحمت کی سطح کا تعین کرنے کے لئے رجحانات کی واپسی کا استعمال کرتی ہے.

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

ریکوری بینڈ اشارے کا حساب

ریکوری بینڈ انڈیکیٹر اوپری بینڈ ، نچلے بینڈ اور درمیانی لائن پر مشتمل ہے۔ انڈیکیٹر کا حساب کتاب اس طرح ہے:

اوپری بینڈ = زیادہ سے زیادہ قیمت ((پہلے K لائن کے اوپری بینڈ، اختتامی قیمت + n*اتار چڑھاؤ کی شرح) نیچے کی پٹی = کم سے کم قیمت ((پہلے K لائن کی نیچے کی پٹی ، بندش کی قیمت - n*اتار چڑھاؤ کی شرح)
درمیانی لائن = (اوپر کی پٹی + نیچے کی پٹی) / 2

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

اسٹریٹجک ٹریڈنگ کے قواعد

حکمت عملی سب سے پہلے یہ جانچتی ہے کہ آیا نیچے کی سمت میں اضافہ جاری ہے اور اوپر کی سمت میں کمی جاری ہے ، تاکہ جعلی بریک کو ختم کیا جاسکے۔

جب قیمت نیچے کی حد سے نیچے ہو تو زیادہ خریدیں اور جب قیمت اوپر کی حد سے اوپر ہو تو کم خریدیں۔

اس کے علاوہ ، حکمت عملی میں اسٹاپ نقصان کی منطق بھی شامل ہے۔

طاقت کا تجزیہ

اس حکمت عملی کے فوائد یہ ہیں:

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

خطرے کا تجزیہ

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

  1. پیرامیٹرز کی غلط ترتیب سے اعلی ٹرانزیکشن فریکوئنسی یا خراب سگنل کوالٹی کا سبب بن سکتا ہے
  2. جب بڑے دورانیہ کے رجحان میں تبدیلی آتی ہے تو ، زیادہ نقصانات ہوسکتے ہیں
  3. انتہائی سستے بازاروں پر قابو نہ رکھنے سے نقصان میں اضافہ ہوسکتا ہے

ان خطرات کو پیرامیٹرز کو بہتر بنانے، سٹاپ نقصان قائم کرنے اور پوائنٹس کو بڑھانے کے ذریعے کنٹرول کیا جا سکتا ہے.

اصلاح کی سمت

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

  1. ایک سے زیادہ ٹائم فریم ٹریڈنگ کے لئے ایک سے زیادہ ٹائم فریم اشارے کے ساتھ مل کر
  2. مشین لرننگ ماڈیول شامل کریں تاکہ پیرامیٹرز کو خود بخود بہتر بنایا جاسکے
  3. بہترین پیرامیٹرز کا مجموعہ تلاش کرنے کے لئے کوانٹومیٹک وابستگی کا تجزیہ شامل کریں
  4. گہری سیکھنے کا استعمال کرتے ہوئے قیمتوں کی پیشن گوئی کے راستے ، سگنل کی درستگی کو بہتر بنانا

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// @version=5
// Original indicator by alexgrover
strategy('Extended Recursive Bands Strategy', overlay=true, commission_type=strategy.commission.percent,commission_value=0.06,default_qty_type =strategy.percent_of_equity,default_qty_value = 100,initial_capital =1000)
length = input.int(260, step=10, title='Length')
src = input(close, title='Source')
method = input.string('Classic', options=['Classic', 'Atr', 'Stdev', 'Ahlr', 'Rfv'], title='Method')
bandDirectionCheck = input.bool(true, title='Bands Hold Direction')
lookback = input(3)
//----
atr = ta.atr(length)
stdev = ta.stdev(src, length)
ahlr = ta.sma(high - low, length)
rfv = 0.
rfv := ta.rising(src, length) or ta.falling(src, length) ? math.abs(ta.change(src)) : rfv[1]
//-----
f(a, b, c) =>
    method == a ? b : c
v(x) =>
    f('Atr', atr, f('Stdev', stdev, f('Ahlr', ahlr, f('Rfv', rfv, x))))
//----
sc = 2 / (length + 1)
a = 0.
a := math.max(nz(a[1], src), src) - sc * v(math.abs(src - nz(a[1], src)))
b = 0.
b := math.min(nz(b[1], src), src) + sc * v(math.abs(src - nz(b[1], src)))
c = (a+b)/2

// Colors
beColor = #675F76
buColor = #a472ff

// Plots
pA = plot(a, color=color.new(beColor, 0), linewidth=2, title='Upper Band')
pB = plot(b, color=color.new(buColor, 0), linewidth=2, title='Lower Band')
pC = plot(c, color=color.rgb(120,123,134,0), linewidth=2, title='Middle Band')
fill(pC, pA, color=color.new(beColor,90))
fill(pC, pB, color=color.new(buColor,90))

// Band keeping direction
// By Adulari
longc = 0
shortc = 0
for i = 0 to lookback-1
    if b[i] > b[i+1]
        longc:=longc+1
    if a[i] < a[i+1]
        shortc:=shortc+1
bhdLong = if bandDirectionCheck
    longc==lookback
else
    true
bhdShort = if bandDirectionCheck
    shortc==lookback
else
    true

// Strategy
if b>=low and bhdLong
    strategy.entry(id='Long',direction=strategy.long)
if high>=a and bhdShort
    strategy.entry(id='Short',direction=strategy.short)

// TP at middle line
//if low<=c and strategy.position_size<0 and strategy.position_avg_price>close
    //strategy.exit(id="Short",limit=close)
//if high>=c and strategy.position_size>0 and strategy.position_avg_price<close
    //strategy.exit(id="Long",limit=close)