
یہ کوئی عام ملٹی اشارے کی حکمت عملی نہیں ہے۔ WaveTrend + Connors RSI + Linear Regression Deviation کا مجموعہ۔ ونڈو کی ہم آہنگی میں کلیدی بات یہ ہے کہ تمام خرید سگنل 2K لائنوں کے اندر اندر ظاہر ہونے چاہئیں ، اور انفرادی سگنل کو براہ راست نظرانداز کیا جائے گا۔ یہ ڈیزائن 90٪ جعلی سگنل کو براہ راست فلٹر کرتا ہے۔
روایتی حکمت عملی یا تو ہر اشارے کو آزادانہ طور پر فیصلہ کرنے میں آسانی سے شور پیدا کرتی ہے ، یا ایک ہی وقت میں بہت سارے مواقع کو متحرک کرنے کی ضرورت ہوتی ہے۔ اس حکمت عملی میں توازن پایا گیا ہے: 2 روٹ K لائن کی غلطی سے متعلق ونڈو سگنل کی مطابقت کو یقینی بناتی ہے اور اس کے ساتھ ساتھ انتہائی سخت ہم وقت سازی کی ضروریات سے بھی گریز کرتی ہے۔
ڈبلیو ٹی کی لمبائی 10 سائیکل ، اوور سیل لائن -48 ، اوور بُل لائن -48 ہے۔ یہ پیرامیٹرز کا مجموعہ روایتی آر ایس آئی کے 30⁄70 سے زیادہ جارحانہ ہے ، اور قیمت کے الٹ سگنل کو جلد پکڑ سکتا ہے۔ ڈبلیو ٹی کا فائدہ یہ ہے کہ یہ قیمت کی پوزیشن اور اتار چڑھاؤ کو جوڑتا ہے ، اور یہ کہ یہ صرف آر ایس آئی سے زیادہ قابل اعتماد ہے۔
اہم بات یہ ہے کہ WT کا حساب کس طرح کیا جاتا ہے:*اس فارمولے میں قدرتی طور پر اتار چڑھاؤ کی شرح کو ایڈجسٹ کرنے کا فنکشن ہے۔ جب مارکیٹ میں اتار چڑھاؤ بڑھ جاتا ہے تو ، فریکوئنسی بڑھ جاتی ہے ، اور WT قدر نسبتا stable مستحکم ہوتی ہے ، جس سے عام RSI میں اعلی اتار چڑھاؤ کے دوران غلط ہونے کا مسئلہ ہوتا ہے۔
سی آر ایس آئی عام آر ایس آئی نہیں ہے ، یہ قیمت کے آر ایس آئی ، لگاتار آر ایس آئی اور قیمت میں تبدیلی کے فیصد کی درجہ بندی کو جوڑتا ہے۔ 20 کی اوور سیل کی حد روایتی 30 سے زیادہ سخت ہے ، لیکن سی آر ایس آئی کے ٹرپل توثیق کے طریقہ کار سے جھوٹے سگنل کی امکان کم ہوجاتی ہے۔
6 سائیکلوں کی RSI لمبائی سگنل کی حساسیت کو بہتر بنانے کے لئے مختصر کی گئی ہے۔ 15 منٹ کی سطح پر ، 6 سائیکلوں کی قیمت کی یادداشت کے 1.5 گھنٹے کے برابر ہے ، جو نہ تو قلیل مدتی اوور سیل کو پکڑ سکتی ہے اور نہ ہی ضرورت سے زیادہ پیچھے رہ سکتی ہے۔ یہ پیرامیٹر بی ٹی سی کی طرح 24 گھنٹے کی تجارت کی قسم پر خاص طور پر موثر ہے۔
LSDD = موجودہ قیمت - لکیری رجعت کی قیمت ، جب ایل ایس ڈی ڈی 0 محور پر گزرے تو اس کی نشاندہی کی جاتی ہے کہ قیمت نیچے کی رجحان لائن سے ہٹنا شروع ہوگئی ہے۔ 20 ادوار کی ترتیب 15 منٹ کے چارٹ پر 5 گھنٹے پر محیط ہے ، جس سے درمیانی اور قلیل مدتی رجحان کی تبدیلیوں کو مؤثر طریقے سے پہچانا جاسکتا ہے۔
اس اشارے کی خوبصورتی یہ ہے کہ یہ محض رجحان کی پیروی نہیں ہے ، بلکہ اس رجحان کے انحراف کی پیمائش ہے۔ جب قیمتوں میں مسلسل کمی کے بعد واپسی کی لائن کو اوپر کی طرف موڑنا شروع ہوتا ہے تو ، یہ اکثر باؤنس کے آغاز کی نشاندہی کرتا ہے۔ ڈبلیو ٹی اور سی آر ایس آئی کے اوور سیل سگنل کے ساتھ مل کر ، “اوور سیل + رجحان موڑ” کی دوہری تصدیق کی تشکیل ہوتی ہے۔
حکمت عملی کو خالص کثیر سر کے طور پر ڈیزائن کیا گیا ہے ، ہر پوزیشن پر 30٪ فنڈ ، جس میں ایک اضافی پوزیشن کی اجازت ہے۔ یہ ترتیب کریپٹوکرنسیوں کے طویل مدتی عروج کے رجحان کے لئے موزوں ہے ، جبکہ پوزیشن کنٹرول کے ذریعہ خطرے کا انتظام کیا جاتا ہے۔ 30٪ کی ایک پوزیشن سے کافی منافع ملتا ہے اور ایک ہی تجارت کے زیادہ خطرہ سے بچا جاتا ہے۔
باہر نکلنے کی شرائط بھی اتنے ہی سخت ہیں: WT اوور بُو ((>48) AND CRSI اوور بُو ((>80) AND LSDD ٹرانسمیشن ، تینوں شرائط کو ایک ساتھ پورا کرنا ہوگا۔ یہ ڈیزائن رجحان کی تجارت کی سالمیت کو یقینی بناتا ہے اور قبل از وقت باہر نکلنے سے بچتا ہے۔
حکمت عملی نے بی ٹی سی کے 15 منٹ کی سطح پر اچھی کارکردگی کا مظاہرہ کیا ، لیکن اس کا مطلب یہ نہیں ہے کہ یہ تمام مارکیٹ کے حالات میں موثر ہے۔
خطرے سے متعلق اشارہ: تاریخی ریٹرن مستقبل کی آمدنی کی نمائندگی نہیں کرتا ، کریپٹوکرنسی مارکیٹ میں بہت زیادہ اتار چڑھاؤ ہے ، جس میں دارالحکومت کے نقصان کا خطرہ ہے۔ یہ تجویز کیا جاتا ہے کہ عملی تجارت سے پہلے کاغذی تجارت کی مکمل تصدیق کی جائے ، اور مجموعی پوزیشنوں پر سخت کنٹرول کیا جائے۔
/*backtest
start: 2024-10-09 00:00:00
end: 2025-10-07 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"BTC_USDT","balance":500000}]
*/
//@version=5
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © alescha13
// WT + CRSI + Linear Regression Long-only Strategy
// Description:
// This long-only trading strategy combines WaveTrend (WT),
// Connors RSI (CRSI), and a Linear Regression Slope (LSDD) trend filter.
// Signals are generated only when all three indicators align within a defined window.
// Exits occur when all indicators turn bearish.
// Backtested on BTC with 15-minute timeframe.
strategy("WT + CRSI + Linear Regression Long-only © alescha13",
overlay=true,
initial_capital=10000,
default_qty_type=strategy.percent_of_equity,
default_qty_value=30,
pyramiding=1,
calc_on_every_tick=false,
process_orders_on_close=true)
// =====================
// Inputs
// =====================
wtLength = input.int(10, "WT Length")
wtOversold = input.int(-48, "WT Oversold Level")
wtOverbought = input.int(48, "WT Overbought Level")
crsiRSILength = input.int(6, "CRSI RSI Length")
crsiOversold = input.int(20, "CRSI Oversold Level")
crsiOverbought = input.int(80, "CRSI Overbought Level")
lsddLen = input.int(20, "Linear Regression Length")
windowSize = input.int(2, "Window size (bars) for all signals", minval=1)
// =====================
// Helper: CRSI Function
// =====================
updown(s) =>
isEqual = s == s[1]
isGrowing = s > s[1]
ud = 0.0
ud := isEqual ? 0 : isGrowing ? (nz(ud[1]) <= 0 ? 1 : nz(ud[1]) + 1) : (nz(ud[1]) >= 0 ? -1 : nz(ud[1]) - 1)
ud
crsiFunc(src, lenrsi) =>
lenupdown = 2
lenroc = 100
rsi = ta.rsi(src, lenrsi)
updownrsi = ta.rsi(updown(src), lenupdown)
percentrank = ta.percentrank(ta.roc(src, 1), lenroc)
math.avg(rsi, updownrsi, percentrank)
// =====================
// WaveTrend (WT) Calculation
// =====================
ap = (high + low + close) / 3.0
esa = ta.ema(ap, wtLength)
d = ta.ema(math.abs(ap - esa), wtLength)
ci = (ap - esa) / (0.015 * d)
wt = ta.ema(ci, 3)
wtBull = ta.crossover(wt, wtOversold)
wtBear = wt > wtOverbought
// =====================
// CRSI Calculation
// =====================
crsiValue = crsiFunc(close, crsiRSILength)
crsiBull = crsiValue < crsiOversold
crsiBear = crsiValue > crsiOverbought
// =====================
// Linear Regression LSDD Calculation
// =====================
slope = ta.linreg(close, lsddLen, 0)
lsdd = close - slope
lsddBull = ta.crossover(lsdd, 0)
lsddBear = lsdd < 0
// =====================
// Window Logic (Synchronize Signals)
// =====================
var int wtBarIndex = na
var int crsiBarIndex = na
var int lsddBarIndex = na
if wtBull
wtBarIndex := bar_index
if crsiBull
crsiBarIndex := bar_index
if lsddBull
lsddBarIndex := bar_index
buySignal = false
if not na(wtBarIndex) and not na(crsiBarIndex) and not na(lsddBarIndex)
maxBar = math.max(wtBarIndex, crsiBarIndex, lsddBarIndex)
minBar = math.min(wtBarIndex, crsiBarIndex, lsddBarIndex)
if (maxBar - minBar) <= windowSize
buySignal := true
wtBarIndex := na
crsiBarIndex := na
lsddBarIndex := na
finalLong = buySignal
// =====================
// Exit Logic
// =====================
sellSignal = wtBear and crsiBear and lsddBear
// =====================
// Entries / Exits
// =====================
if finalLong
strategy.entry("Long", strategy.long, comment="Long Entry")
if sellSignal
strategy.close("Long", comment="Long Exit")
// =====================
// Background Color for Signals
// =====================
bgcolor(finalLong ? color.new(color.green, 85) : na)
bgcolor(sellSignal ? color.new(color.red, 85) : na)
// =====================
// Plots
// =====================
plot(wt, color=color.new(color.blue, 0), title="WT")
plot(crsiValue, color=color.new(color.purple, 0), title="CRSI")
plot(lsdd, color=color.new(color.orange, 0), title="LSDD")
plotshape(finalLong, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plotshape(sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)
// =====================
// Alerts
// =====================
alertcondition(finalLong, title="Long Alert", message="WT + CRSI + LSDD Long Signal")
alertcondition(sellSignal, title="Exit Alert", message="WT + CRSI + LSDD Exit Signal")