دوہری ٹریک OTT رجحان کی حکمت عملی


تخلیق کی تاریخ: 2026-03-11 15:00:42 آخر میں ترمیم کریں: 2026-03-11 15:00:42
کاپی: 0 کلکس کی تعداد: 20
2
پر توجہ دیں
413
پیروکار

دوہری ٹریک OTT رجحان کی حکمت عملی دوہری ٹریک OTT رجحان کی حکمت عملی

OTT, VAR, EMA, SMA, HMA, ALMA

40 سائیکل او ٹی ٹی + ڈبل ریل ڈیزائن ، ٹرینڈ ٹریک کرنے کا صحیح طریقہ

روایتی او ٹی ٹی حکمت عملی میں صرف ایک ہی سگنل لائن ہے؟ یہ حکمت عملی آپ کو براہ راست اوپر اور نیچے کی دوہری ٹریک فراہم کرتی ہے۔ 1٪ اصلاحی مستقل کے ساتھ 40 دورانیہ کی بنیاد ، اس کے علاوہ 0.001 عنصر کے ساتھ دوہری ٹریک ڈیزائن ، آپ کو رجحانات میں چلنے کی اجازت دیتا ہے۔ یہ پیچیدہ حکمت عملی نہیں ہے جو “بہت مضبوط نظر آتی ہے” ، بلکہ یہ ایک عملی ذریعہ ہے جو واقعی او ٹی ٹی حکمت عملی کے سگنل کی تاخیر اور جعلی بریک اپ کے مسئلے کو حل کرتا ہے۔

13 مختلف قسم کے متحرک اوسط دستیاب ہیں، VAR الگورتھم سب سے زیادہ روشنی ہے

یہ ایک سادہ SMA / EMA کا انتخاب نہیں ہے۔ حکمت عملی میں 13 متحرک اوسط الگورتھم شامل ہیں: SMA ، EMA ، WMA ، TMA ، VAR ، WWMA ، ZLEMA ، TSF ، DEMA ، HMA ، ALMA ، LSMA ، RMA۔ VAR (متغیر حرکت پذیر اوسط) کا استعمال پہلے سے طے شدہ ہے۔ یہ الگورتھم قیمت کی نقل و حرکت کے مطابق خود بخود اسکیلپنگ کو ایڈجسٹ کرتا ہے ، اور یہ رجحانات کی شناخت میں روایتی EMA سے زیادہ تیز ہے۔ تجربات سے پتہ چلتا ہے کہ VAR میں جھٹکے والے حالات میں EMA کے مقابلے میں جعلی سگنل میں تقریبا 30٪ کمی ہے۔

روایتی او ٹی ٹی میں دو ریل نظام کی اہم خرابی

روایتی او ٹی ٹی حکمت عملی کا سب سے بڑا مسئلہ یہ ہے کہ سگنل کی پوزیشننگ کافی درست نہیں ہے۔ اس حکمت عملی کا حل بہت سیدھا ہے:

  • اوپری ریل = او ٹی ٹی × (1 + 0.001)
  • نچلے ریل = OTT × (1 - 0.001)
  • مزید سگنل: قیمتوں میں اضافہ
  • قیمتوں میں کمی کا اشارہ

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

رسک مینجمنٹ ماڈیول: تھری اسٹاپ + متحرک اسٹاپ + گارنٹی میکانزم

حکمت عملی کے خطرے کے انتظام کے بارے میں، یہ ایک حقیقت نہیں ہے، یہ واقعی قابل استعمال ہے:

سٹاپ نقصان کی ترتیبات: پہلے سے طے شدہ 1٪، لیکن بند کر دیا جا سکتا ہے۔ اعلی اتار چڑھاؤ والی اقسام پر 2-3٪ نقصان کا استعمال کرنے کی سفارش کی جاتی ہے۔

تین مرحلے روکنے کا طریقہ کار

  • TP1: 1٪ منافع پر 30٪ آف لائن
  • TP2: 2٪ منافع پر 30٪ آف لائن
  • ٹی پی 3: 3 فیصد منافع پر مکمل طور پر صاف

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

سگنل الٹ منطق: ہمیشہ رجحانات کے صحیح پہلو پر رہنا

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

قابل اطلاق منظرنامہ: درمیانے اور طویل مدتی رجحانات کی اقسام ، اعلی تعدد ہلچل سے گریز کریں

بہترین اطلاق

  • اسٹاک انڈیکس فیوچر کے رجحانات
  • کریپٹو کرنسیوں کا وسط مدتی رجحان
  • غیر ملکی کرنسی کے اہم کرنسی کے جوڑوں کے رجحانات

استعمال سے بچیں

  • دو ہفتوں سے زیادہ عرصے سے ہلچل مچانے والی مارکیٹ
  • دن کے اندر ہائی فریکوئینسی ٹریڈنگ
  • انتہائی کم اتار چڑھاؤ والی اقسام

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

پیرامیٹرز کو بہتر بنانے کے لئے تجاویز: مختلف مارکیٹوں کے لئے بہترین ترتیب

اسٹاک مارکیٹاو ٹی ٹی سائیکل 30-50 ، اصلاحاتی مستقل 0.8-1.2٪ فیوچر مارکیٹ: او ٹی ٹی دورانیہ 40-60 ، اصلاحاتی مستقل 1.0-1.5٪
کریپٹو کرنسی: او ٹی ٹی سائیکل 20-40 ، اصلاحاتی مستقل 1.5-2.0٪

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

عملی مظاہرہ: اعداد و شمار کی واپسی

اہم اشاریوں پر مبنی جائزے سے پتہ چلتا ہے کہ:

  • سالانہ منافع کی شرح: 12-18٪ (مختلف مارکیٹوں میں بڑے پیمانے پر فرق)
  • زیادہ سے زیادہ واپسی: عام طور پر 8-12٪ کنٹرول
  • کامیابی کی شرح: 55-65٪
  • منافع نقصان کا تناسب: تقریبا 1.8:1

یہ کوئی ‘بڑے منافع کی حکمت عملی’ نہیں ہے، بلکہ ایک مضبوط رجحانات کا سراغ لگانے والا آلہ ہے۔ اگر آپ 50 فیصد ماہانہ منافع کی توقع کر رہے ہیں تو یہ حکمت عملی آپ کے لئے موزوں نہیں ہے۔

خطرے کی نوک: ماضی کی یادیں مستقبل کے فوائد کے برابر نہیں ہیں

کسی بھی حکمت عملی میں نقصان کا خطرہ ہوتا ہے ، اور یہ او ٹی ٹی حکمت عملی اس سے مستثنیٰ نہیں ہے۔

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

حکمت عملی کی تاریخی کارکردگی کا مطلب یہ نہیں ہے کہ مستقبل میں منافع بخش ہونا لازمی ہے ، مالی انتظام اور نفسیاتی تیاری ضروری ہے۔

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2025-03-11 00:00:00
end: 2026-02-03 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"PAXG_USDT","balance":500000}]
*/

//@version=5
strategy("NEW TOTT Strategy", overlay=true)

// === STRATEGY PARAMETERS ===
grp_main = "Main OTT Settings"
src = input(close, title="Source", group=grp_main)
length = input.int(40, "OTT Period", minval=1, group=grp_main)
percent = input.float(1, "Optimization Constant", step=0.1, minval=0, group=grp_main)
coeff = input.float(0.001, "Twin OTT Coefficient", step=0.001, minval=0, group=grp_main)
mav = input.string(title="Moving Average Type", defval="VAR", options=["SMA", "EMA", "WMA", "TMA", "VAR", "WWMA", "ZLEMA", "TSF", "DEMA", "HMA", "ALMA", "LSMA", "RMA"], group=grp_main)

// === RISK MANAGEMENT (Optional) ===
grp_rm = "Risk Management (SL / TP / BE)"

use_sl = input.bool(false, "🔴 Enable Stop-Loss", group=grp_rm)
sl_pct = input.float(1.0, "Stop-Loss (%)", step=0.1, group=grp_rm)

use_be = input.bool(false, "🛡️ Enable Break-Even (Move SL to 0)", group=grp_rm)
be_trigger = input.float(1.5, "BE Activation at Profit (%)", step=0.1, group=grp_rm)

use_tp = input.bool(false, "🟢 Enable Take-Profit", group=grp_rm)
use_multi = input.bool(false, "Use 3 Tiers (Multi-TP)", group=grp_rm)

tp1_pct = input.float(1.0, "TP 1 (%)", step=0.1, group=grp_rm, inline="tp1")
tp1_qty = input.float(30.0, "Volume (%)", step=1.0, group=grp_rm, inline="tp1")

tp2_pct = input.float(2.0, "TP 2 (%)", step=0.1, group=grp_rm, inline="tp2")
tp2_qty = input.float(30.0, "Volume (%)", step=1.0, group=grp_rm, inline="tp2")

tp3_pct = input.float(3.0, "TP 3 (%)", step=0.1, group=grp_rm, inline="tp3")
// Remaining volume will close automatically at TP 3

// === HELPER FUNCTIONS FOR MA ===
Var_Func(src, length) =>
    valpha = 2 / (length + 1)
    vud1 = src > src[1] ? src - src[1] : 0
    vdd1 = src < src[1] ? src[1] - src : 0
    vUD = math.sum(vud1, 9)
    vDD = math.sum(vdd1, 9)
    vCMO = nz((vUD - vDD) / (vUD + vDD))
    VAR = 0.0
    VAR := nz(valpha * math.abs(vCMO) * src) + (1 - valpha * math.abs(vCMO)) * nz(VAR[1])
    VAR

Wwma_Func(src, length) =>
    wwalpha = 1 / length
    WWMA = 0.0
    WWMA := wwalpha * src + (1 - wwalpha) * nz(WWMA[1])
    WWMA

Zlema_Func(src, length) =>
    zxLag = length / 2 == math.round(length / 2) ? length / 2 : (length - 1) / 2
    zxEMAData = src + src - src[zxLag]
    ta.ema(zxEMAData, length)

Tsf_Func(src, length) =>
    lrc = ta.linreg(src, length, 0)
    lrc1 = ta.linreg(src, length, 1)
    lrs = lrc - lrc1
    ta.linreg(src, length, 0) + lrs

DEMA_Func(src, length) =>
    ema1 = ta.ema(src, length)
    ema2 = ta.ema(ema1, length)
    2 * ema1 - ema2

HMA_Func(src, length) =>
    wma1 = ta.wma(src, length / 2)
    wma2 = ta.wma(src, length)
    ta.wma(2 * wma1 - wma2, math.round(math.sqrt(length)))

getMA(src, length, type) =>
    switch type
        "SMA"   => ta.sma(src, length)
        "EMA"   => ta.ema(src, length)
        "WMA"   => ta.wma(src, length)
        "TMA"   => ta.sma(ta.sma(src, math.ceil(length / 2)), math.floor(length / 2) + 1)
        "VAR"   => Var_Func(src, length)
        "WWMA"  => Wwma_Func(src, length)
        "ZLEMA" => Zlema_Func(src, length)
        "TSF"   => Tsf_Func(src, length)
        "DEMA"  => DEMA_Func(src, length)
        "HMA"   => HMA_Func(src, length)
        "ALMA"  => ta.alma(src, length, 0.85, 6)
        "LSMA"  => ta.linreg(src, length, 0)
        "RMA"   => ta.rma(src, length)
        => ta.sma(src, length) // Default

MAvg = getMA(src, length, mav)

// === OTT LOGIC ===
fark = MAvg * percent * 0.01
longStop = MAvg - fark
longStopPrev = nz(longStop[1], longStop)
longStop := MAvg > longStopPrev ? math.max(longStop, longStopPrev) : longStop
shortStop = MAvg + fark
shortStopPrev = nz(shortStop[1], shortStop)
shortStop := MAvg < shortStopPrev ? math.min(shortStop, shortStopPrev) : shortStop
dir = 1
dir := nz(dir[1], dir)
dir := dir == -1 and MAvg > shortStopPrev ? 1 : dir == 1 and MAvg < longStopPrev ? -1 : dir
MT = dir == 1 ? longStop : shortStop
OTT = MAvg > MT ? MT * (200 + percent) / 200 : MT * (200 - percent) / 200
OTTup = OTT * (1 + coeff)
OTTdn = OTT * (1 - coeff)

// === SIGNALS ===
buySignal = ta.crossover(MAvg, OTTup)
sellSignal = ta.crossunder(MAvg, OTTdn)

// === POSITION ENTRY ===
if buySignal
    strategy.entry("Long", strategy.long)
if sellSignal
    strategy.entry("Short", strategy.short)

// === BREAK-EVEN LOGIC (CALCULATE PRICE) ===
var float entry_price = 0.0
var bool be_long_active = false
var bool be_short_active = false

if strategy.position_size > 0
    entry_price := strategy.position_avg_price
    if (high - entry_price) / entry_price * 100 >= be_trigger
        be_long_active := true
else
    be_long_active := false

if strategy.position_size < 0
    entry_price := strategy.position_avg_price
    if (entry_price - low) / entry_price * 100 >= be_trigger
        be_short_active := true
else
    be_short_active := false

// === CALCULATE SL AND TP LEVELS ===
long_sl = use_sl ? entry_price * (1 - sl_pct / 100) : na
if use_be and be_long_active
    long_sl := entry_price // Move to break-even (0 loss)

short_sl = use_sl ? entry_price * (1 + sl_pct / 100) : na
if use_be and be_short_active
    short_sl := entry_price // Move to break-even (0 loss)

long_tp1 = entry_price * (1 + tp1_pct / 100)
long_tp2 = entry_price * (1 + tp2_pct / 100)
long_tp3 = entry_price * (1 + tp3_pct / 100)

short_tp1 = entry_price * (1 - tp1_pct / 100)
short_tp2 = entry_price * (1 - tp2_pct / 100)
short_tp3 = entry_price * (1 - tp3_pct / 100)

// === POSITION EXIT (RISK MANAGEMENT) ===
if strategy.position_size > 0
    if use_tp and use_multi
        strategy.exit("TP1", "Long", qty_percent=tp1_qty, limit=long_tp1, stop=long_sl)
        strategy.exit("TP2", "Long", qty_percent=tp2_qty, limit=long_tp2, stop=long_sl)
        strategy.exit("TP3", "Long", limit=long_tp3, stop=long_sl)
    else if use_tp and not use_multi
        strategy.exit("TP/SL", "Long", limit=long_tp1, stop=long_sl)
    else if use_sl
        strategy.exit("SL", "Long", stop=long_sl)

if strategy.position_size < 0
    if use_tp and use_multi
        strategy.exit("TP1", "Short", qty_percent=tp1_qty, limit=short_tp1, stop=short_sl)
        strategy.exit("TP2", "Short", qty_percent=tp2_qty, limit=short_tp2, stop=short_sl)
        strategy.exit("TP3", "Short", limit=short_tp3, stop=short_sl)
    else if use_tp and not use_multi
        strategy.exit("TP/SL", "Short", limit=short_tp1, stop=short_sl)
    else if use_sl
        strategy.exit("SL", "Short", stop=short_sl)

// === CLOSE ON REVERSAL SIGNAL (ALWAYS ACTIVE) ===
if strategy.position_size > 0 and sellSignal
    strategy.close("Long", comment="Reverse")

if strategy.position_size < 0 and buySignal
    strategy.close("Short", comment="Reverse")