جان بوجھ کر ریورسل لفافے کا مطلب حکمت عملی


تخلیق کی تاریخ: 2023-12-04 16:12:39 آخر میں ترمیم کریں: 2023-12-04 16:12:39
کاپی: 0 کلکس کی تعداد: 759
1
پر توجہ دیں
1619
پیروکار

جان بوجھ کر ریورسل لفافے کا مطلب حکمت عملی

جائزہ

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

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

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

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

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

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

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

اسٹریٹجک رسک

  • اس کے علاوہ ، اس نے کہا کہ اس کی وجہ یہ ہے کہ اس کی وجہ یہ ہے کہ اس کی وجہ یہ ہے کہ اس کی وجہ یہ ہے کہ اس کی وجہ یہ ہے کہ اس کی وجہ یہ ہے:
  • پیرامیٹرز کی غلط ترتیب کے نتیجے میں زیادہ بار بار تجارت ہوسکتی ہے۔
  • اس کے علاوہ، یہ ایک نسبتا مستحکم مارکیٹ کی ضرورت ہوتی ہے، جو بڑے پیمانے پر اتار چڑھاؤ کے ساتھ منسلک نہیں ہے.
  • اس کے علاوہ ، یہ بھی کہا گیا ہے کہ اس کے نتیجے میں ، اس کے نتیجے میں ، اس کے نتیجے میں ، اس کے نتیجے میں ، اس کے نتیجے میں ، اس کے نتیجے میں ، اس کے نتیجے میں۔

اس خطرے کو کم کرنے کے لئے ، مناسب طریقے سے بٹ نیٹ ورک کے دائرہ کار کو کھول کر ، قیمتوں میں تبدیلیوں کو متحرک کرنے کے لئے حساسیت میں اضافہ کیا جاسکتا ہے۔

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

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

  1. متحرک اوسط الگورتھم کو بہتر بنائیں۔ مختلف قسم کے متحرک اوسط اشارے کے اثرات کی جانچ کی جاسکتی ہے۔

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

  3. بہتر بنانا باکس نیٹ ورک کے پیرامیٹرز مختلف فیصد کی ترتیبات کی جانچ پڑتال کر سکتے ہیں، بہترین پیرامیٹرز کا مجموعہ تلاش کریں

  4. اضافی اسٹاپ اسٹریٹجی۔ متحرک اسٹاپ یا واپسی کی روک تھام کو ترتیب دیں ، جو انفرادی نقصان کو مؤثر طریقے سے کنٹرول کرسکے۔

  5. فلٹرنگ کی شرائط میں اضافہ کریں۔ غیر معقول حالات میں پوزیشنوں کو غیر فعال کرنے سے بچنے کے لئے دوسرے اشارے کے اشارے کے ساتھ مل کر۔

خلاصہ کریں۔

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

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

//@version=5
strategy("Mean Reversion - Envelope Strategy", overlay=true )

// ----------------------- DESCRIPTION -----------------------
// THIS SCRIPT IS A MEAN REVERSION SYSTEM THAT USES A MOVING AVERAGE AS BASE CALCULATION AND A % OF THIS MOVING AVERAGE TO CALCULATE THE ENVELOPE
// BY DEFAULT, THE SYSTEM WILL PLACE LONG ORDERS ON THE MOVING AVERAGE -5% PER ENVELOPE COUNT (5%, 10% AND SO ON...)
// YOU CAN ENABLE THE SHORT ORDERS THAT WILL FOLLOW THE SAME LOGIC ON THE OPPOSITE SIDE
// THE SYSTEM WILL CLOSE EVERY ONGOING TRADE WHEN THE PRICE RETURNS TO THE MEAN

// ---------------------------------------------
// ---------------- SETTINGS -------------------
src = input(close, "Moving Average Source", group = "Moving Average")
ma_window = input.int(5, "Moving Average Window", step = 1, group = "Moving Average")
ma_type = input.string('4. DEMA', "Moving Average Type", options=['1. SMA', '2. EMA', '3. RMA', '4. DEMA'], group = "Moving Average")
enveloppe_step = input.float(0.05, "Delta Per Enveloppe", step = 0.01, group = "Envelope")
envelope_count = input.int(5, "Envelope count", options = [1, 2, 3, 4, 5], group = "Envelope")
use_longs = input.bool(true, 'Use Long Orders ?', group = "Orders") 
use_short = input.bool(false, 'Use Short Orders ?', group = "Orders")


// ---------------------------------------------
// -------------- INDICATORS -------------------
ma_funct() =>
    if(ma_type == '1. SMA') 
        ta.sma(src, ma_window)
    if(ma_type == '2. EMA') 
        ta.ema(src, ma_window)
    if(ma_type == '3. RMA') 
        ta.rma(src, ma_window)
    if(ma_type == '4. DEMA') 
        2 * ta.ema(src, ma_window) - ta.ema(ta.ema(src, ma_window), ma_window)

ma_base = ma_funct()

ma_high_1 = envelope_count > 0 ? ma_base * (1 + enveloppe_step) : na
ma_high_2 = envelope_count > 1 ? ma_base * (1 + enveloppe_step * 2) : na
ma_high_3 = envelope_count > 2 ? ma_base * (1 + enveloppe_step * 3) : na
ma_high_4 = envelope_count > 3 ? ma_base * (1 + enveloppe_step * 4) : na
ma_high_5 = envelope_count > 4 ? ma_base * (1 + enveloppe_step * 5) : na

ma_low_1 = envelope_count > 0 ? ma_base * (1 - enveloppe_step) : na
ma_low_2 = envelope_count > 0 ? ma_base * (1 - enveloppe_step * 2) : na
ma_low_3 = envelope_count > 0 ? ma_base * (1 - enveloppe_step * 3) : na
ma_low_4 = envelope_count > 0 ? ma_base * (1 - enveloppe_step * 4) : na
ma_low_5 = envelope_count > 0 ? ma_base * (1 - enveloppe_step * 5) : na


// ---------------------------------------------
// --------------- STRATEGY --------------------
if use_longs
    if envelope_count > 0 and strategy.opentrades < 1
        strategy.entry('long 1', strategy.long, limit=ma_low_1, qty=(strategy.equity / ma_low_1) * (1 / envelope_count))
    if envelope_count > 1 and strategy.opentrades < 2
        strategy.entry('long 2', strategy.long, limit=ma_low_2, qty=(strategy.equity / ma_low_2) * (1 / envelope_count))
    if envelope_count > 2 and strategy.opentrades < 3
        strategy.entry('long 3', strategy.long, limit=ma_low_3, qty=(strategy.equity / ma_low_3) * (1 / envelope_count))
    if envelope_count > 3 and strategy.opentrades < 4
        strategy.entry('long 4', strategy.long, limit=ma_low_4, qty=(strategy.equity / ma_low_4) * (1 / envelope_count))
    if envelope_count > 4 and strategy.opentrades < 5
        strategy.entry('long 5', strategy.long, limit=ma_low_5, qty=(strategy.equity / ma_low_5) * (1 / envelope_count))


if use_short
    if envelope_count > 0 and strategy.opentrades < 1
        strategy.entry('short 1', strategy.short, limit=ma_high_1, qty=(strategy.equity / ma_high_1) * (1 / envelope_count))
    if envelope_count > 1 and strategy.opentrades < 2
        strategy.entry('short 2', strategy.short, limit=ma_high_2, qty=(strategy.equity / ma_high_2) * (1 / envelope_count))
    if envelope_count > 2 and strategy.opentrades < 3
        strategy.entry('short 3', strategy.short, limit=ma_high_3, qty=(strategy.equity / ma_high_3) * (1 / envelope_count))
    if envelope_count > 3 and strategy.opentrades < 4
        strategy.entry('short 4', strategy.short, limit=ma_high_4, qty=(strategy.equity / ma_high_4) * (1 / envelope_count))
    if envelope_count > 4 and strategy.opentrades < 5
        strategy.entry('short 5', strategy.short, limit=ma_high_5, qty=(strategy.equity / ma_high_5) * (1 / envelope_count))

strategy.exit('close', limit=ma_base)


// ---------------------------------------------
// ------------------ PLOT ---------------------
ma_base_plot = plot(ma_base, title = "Base MA", color = color.orange, linewidth = 3, offset = 1)

ma_high_1_plot = plot(ma_high_1, title = "MA high 1", color = color.red, offset = 1)
ma_high_2_plot = plot(ma_high_2, title = "MA high 2", color = color.red, offset = 1)
ma_high_3_plot = plot(ma_high_3, title = "MA high 3", color = color.red, offset = 1)
ma_high_4_plot = plot(ma_high_4, title = "MA high 4", color = color.red, offset = 1)
ma_high_5_plot = plot(ma_high_5, title = "MA high 5", color = color.red, offset = 1)

ma_low_1_plot = plot(ma_low_1, title = "MA low 1", color = color.green, offset = 1)
ma_low_2_plot = plot(ma_low_2, title = "MA low 2", color = color.green, offset = 1)
ma_low_3_plot = plot(ma_low_3, title = "MA low 3", color = color.green, offset = 1)
ma_low_4_plot = plot(ma_low_4, title = "MA low 4", color = color.green, offset = 1)
ma_low_5_plot = plot(ma_low_5, title = "MA low 5", color = color.green, offset = 1)