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

BB SMA GRID stdev
تخلیق کی تاریخ: 2025-02-21 11:52:10 آخر میں ترمیم کریں: 2025-02-27 17:04:20
کاپی: 3 کلکس کی تعداد: 691
2
پر توجہ دیں
319
پیروکار

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

جائزہ

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

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

حکمت عملی 20 دوروں کی متحرک اوسط کا استعمال کرتی ہے جس میں بُرین بینڈ کے لئے درمیانی ریل ، اور بینڈوتھ کے طور پر دوگنا معیاری فرق ہوتا ہے۔ بُرین بینڈ کی بنیاد پر ، حکمت عملی میں اوپر اور نیچے کی ریلوں کے مابین 4 گرڈ لیول لگائے گئے ہیں ، اور گرڈ کا وقفہ 1٪ ہے۔ جب قیمت کسی گرڈ لائن کو اوپر کی طرف توڑتی ہے تو ، نظام متعدد کارروائی کرتا ہے۔ جب قیمت کسی گرڈ لائن کو نیچے کی طرف توڑتی ہے تو ، نظام خالی کارروائی کرتا ہے۔ اس ڈیزائن نے حکمت عملی کو زلزلے والے بازار میں مستقل منافع بخش بنانے کے قابل بنا دیا ہے۔

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

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

اسٹریٹجک رسک

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

حل:

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

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

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

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2024-12-19 00:00:00
end: 2025-02-19 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/

//@version=6
strategy("Grid Bot based on Bollinger Bands with Adjustable Levels", overlay=true)

// Settings
source = close
length = input.int(20, minval=1, title="Bollinger Bands Length")
mult = input.float(2.0, minval=0.001, maxval=50, title="Bollinger Bands Multiplier")
gridDistancePercent = input.float(1.0, title="Distance Between Levels (%)") / 100 // Distance between grid levels in percentage
gridSize = input.int(4, title="Number of Grid Levels") // Number of grid levels

// Bollinger Bands Calculation
basis = ta.sma(source, length)
dev = mult * ta.stdev(source, length)
upper = basis + dev
lower = basis - dev

// Middle line between the upper and lower Bollinger Bands
middle = (upper + lower) / 2

// Levels for long and short positions
var float[] longLevels = array.new_float(gridSize)
var float[] shortLevels = array.new_float(gridSize)

// Filling levels for long and short positions
for i = 0 to gridSize - 1
    array.set(longLevels, i, lower * (1 + gridDistancePercent * (i + 1))) // For longs, increase the lower band
    array.set(shortLevels, i, upper * (1 - gridDistancePercent * (i + 1))) // For shorts, decrease the upper band

// Logic for entering a long position (buy) at the first level crossover
longCondition = ta.crossover(source, array.get(longLevels, 0)) // Condition for buying — crossover with the first long level
if longCondition
    strategy.entry("GridLong", strategy.long, comment="GridLong")

// Logic for entering a short position (sell) at the first level crossunder
shortCondition = ta.crossunder(source, array.get(shortLevels, 0)) // Condition for selling — crossunder with the first short level
if shortCondition
    strategy.entry("GridShort", strategy.short, comment="GridShort")

// Logic for additional buys/sells when reaching subsequent levels
// For longs:
for i = 1 to gridSize - 1
    if ta.crossover(source, array.get(longLevels, i))
        strategy.entry("GridLong" + str.tostring(i), strategy.long, comment="GridLong")

// For shorts:
for i = 1 to gridSize - 1
    if ta.crossunder(source, array.get(shortLevels, i))
        strategy.entry("GridShort" + str.tostring(i), strategy.short, comment="GridShort")

// Visualization of the levels
plot(upper, color=color.red, linewidth=2, title="Upper Bollinger Band")
plot(lower, color=color.green, linewidth=2, title="Lower Bollinger Band")
plot(middle, color=color.blue, linewidth=2, title="Middle Line")

// Display additional grid levels (fixed titles)
plot(array.get(longLevels, 0), color=color.green, linewidth=1, title="Long Level 1") // For the 1st long level
plot(array.get(longLevels, 1), color=color.green, linewidth=1, title="Long Level 2") // For the 2nd long level
plot(array.get(longLevels, 2), color=color.green, linewidth=1, title="Long Level 3") // For the 3rd long level
plot(array.get(longLevels, 3), color=color.green, linewidth=1, title="Long Level 4") // For the 4th long level

plot(array.get(shortLevels, 0), color=color.red, linewidth=1, title="Short Level 1") // For the 1st short level
plot(array.get(shortLevels, 1), color=color.red, linewidth=1, title="Short Level 2") // For the 2nd short level
plot(array.get(shortLevels, 2), color=color.red, linewidth=1, title="Short Level 3") // For the 3rd short level
plot(array.get(shortLevels, 3), color=color.red, linewidth=1, title="Short Level 4") // For the 4th short level