
یہ “ملٹی اوسیلیٹر متحرک فلٹرڈ اوسط واپسی بٹ کوائن ٹریڈنگ اسٹریٹجی” ایک مقداری حکمت عملی ہے جو خاص طور پر بٹ کوائن شارٹ لائن ٹریڈنگ کے لئے ڈیزائن کی گئی ہے۔ یہ آر ایس آئی چینل ، ویو ٹرینڈ اشارے اور بے ترتیب آر ایس آئی اشارے کو ہوشیار طریقے سے مل کر ایک کثیر پرت فلٹرنگ سسٹم تشکیل دیتا ہے۔ اس حکمت عملی کا بنیادی مقصد آر ایس آئی چینل پر قیمت کی توڑ واپسی کی خصوصیات کا استعمال کرنا ہے ، جبکہ WaveTrend اور بے ترتیب آر ایس آئی کے ذریعہ تصدیق شدہ فلٹر کے طور پر ، اوور بیئر اوور سیل زون میں اعلی جیتنے والے تجارت کو یقینی بنانا ہے۔ اس حکمت عملی میں 1 منٹ کے وقت کے فریم ورک پر اعلی تعدد شارٹ لائن ٹریڈنگ کی جاتی ہے ، اور اس میں لچکدار اسٹاپ نقصان کے طریقہ کار اور ریورس ٹریڈنگ کی خصوصیات ہیں۔
یہ حکمت عملی تین بنیادی تکنیکی اشارے پر مبنی ہے:
آر ایس آئی بینڈحکمت عملی نے آر ایس آئی چینل اشارے کے بہتر ورژن کا استعمال کیا ، جس میں آر ایس آئی کے اووربائ ((70) اور اوور سیل ((30) کی سطح پر مبنی قیمتوں کے اوپری ، نچلے اور درمیانی راستے کا حساب لگایا گیا ہے۔ جب قیمت نیچے کی طرف بڑھتی ہے تو ایک سے زیادہ سگنل پیدا ہوتا ہے ، اور جب قیمت اوپر کی طرف بڑھتی ہے تو اس میں ایک چھوٹا سا سگنل پیدا ہوتا ہے۔ یہ طریقہ کار مارکیٹ کی اوسط قیمت کی واپسی کی خصوصیات کا استعمال کرتا ہے۔
WaveTrend (WT) اشارے: LazyBear کے WT1 اشارے کا استعمال کرتے ہوئے ، ڈیفالٹ چینل کی لمبائی 11 ہے ، اوسط لمبائی 12 ہے ، اوور بائڈ لیول + 60 ہے ، اوور سیل لیول -60 ہے۔ یہ اشارے ایک متحرک اوسیلیٹر ہے جو اس بات کی تصدیق کرنے کے لئے استعمال کیا جاتا ہے کہ آیا مارکیٹ اوور بائڈ یا اوور سیل حالت میں ہے۔
سٹوکاسٹک RSI: صرف K لائن کا استعمال کرتے ہوئے ، K کی لمبائی 5 ، RSI کی لمبائی 14 ، اور بے ترتیب لمبائی 10 ہے۔ یہ اشارے مارکیٹ میں زیادہ خرید و فروخت کی صورتحال کی مزید تصدیق کرتا ہے ، جس سے سگنل کی وشوسنییتا میں اضافہ ہوتا ہے۔
حکمت عملی کا سگنل جنریشن منطق مندرجہ ذیل ہے:
ٹریڈنگ ٹرگر موڈ کے دو اختیارات ہیں: “کراس ((close) ” اختتامی قیمت کو آر ایس آئی چینل کو عبور کرنے کا استعمال کرتا ہے ، اور “ٹچ ((wick) ” شیڈ لائن کو آر ایس آئی چینل ٹرگر سگنل کو چھونے کی اجازت دیتا ہے۔ اس کے علاوہ ، اس حکمت عملی میں ریورس ایگزٹ میکانزم بھی شامل ہے ، یعنی جب مخالف سگنل سامنے آجائے تو پوزیشن خالی اور ریورس کھول دی جاسکتی ہے ، جو زیادہ اتار چڑھاؤ والی مارکیٹ کے ماحول کے لئے موزوں ہے۔
اس حکمت عملی کے کوڈ کا گہرائی سے تجزیہ کرنے سے درج ذیل اہم فوائد سامنے آتے ہیں:
ملٹی فلٹریشن سسٹم: تین مختلف تکنیکی اشارے ((آر ایس آئی چینل ، ویو ٹرینڈ اور رینڈم آر ایس آئی) کو یکجا کرکے ، ایک طاقتور کثیر پرت فلٹرنگ سسٹم تشکیل دیا گیا ہے ، جس سے جعلی توڑنے کا خطرہ بہت کم ہوجاتا ہے اور تجارتی سگنل کے معیار اور وشوسنییتا میں اضافہ ہوتا ہے۔
لچکدار ٹرانزیکشن: حکمت عملی میں متعدد حسب ضرورت اختیارات پیش کیے گئے ہیں ، بشمول ریورس آؤٹ کا استعمال کرنا ، اسٹاپ / اسٹاپ نقصان کو چالو کرنا ، ٹریلر موڈ کے اختیارات وغیرہ ، تا کہ تاجر مارکیٹ کی صورتحال اور ذاتی خطرے کی ترجیحات کے مطابق ایڈجسٹ کرسکیں۔
مؤثر خطرے کا انتظام: بلٹ میں فی صد سٹاپ نقصان کا طریقہ کار ہے جو ہر تجارت کے لئے خطرہ اور واپسی کے تناسب کو درست طریقے سے کنٹرول کرتا ہے، فنڈز کی حفاظت کرتا ہے۔
آٹومیٹڈ الرٹ سسٹم: ٹیلیگرام الرٹ فنکشن کو مربوط کیا گیا ہے ، جس میں ٹریڈنگ سگنل کی اصل وقت کی اطلاع دی گئی ہے ، جس سے تاجروں کو بروقت ٹریکنگ اور ٹرانزیکشن کی سہولت ملتی ہے۔
فضول خرچی کے خلاف معلومات کا نظام: حکمت عملی نے ایک بار پھر الارم کو روکنے کے لئے ایک میکانزم کو لاگو کیا ہے، اس بات کو یقینی بنانا کہ ایک ہی K لائن میں صرف ایک بار سگنل بھیجا جائے، معلومات کی ضرورت سے بچنے سے بچنے کے لئے
ہائی فریکوئینسی ٹریڈنگ کی موافقتیہ حکمت عملی 1 منٹ کے ٹائم فریم پر مبنی ہے جو اعلی تعدد ٹریڈنگ کے ماحول کے لئے موزوں ہے اور مختصر مدت کی قیمتوں میں اتار چڑھاو کو پکڑنے کے لئے مارکیٹ میں تیزی سے داخل ہونے اور باہر نکلنے کے قابل ہے۔
اس حکمت عملی کے باوجود اس میں کچھ ممکنہ خطرات ہیں:
ہائی فریکوئینسی ٹریڈنگ کے خطرات: 1 منٹ کے ٹائم فریم پر مبنی اعلی تعدد تجارت سے زیادہ ٹریڈنگ سگنل پیدا ہوتے ہیں ، جس سے زیادہ تجارت اور تجارت کی لاگت میں اضافہ ہوسکتا ہے۔ حل: اضافی ٹائم فلٹرز کو شامل کرنے یا صرف مخصوص مارکیٹ کے اوقات میں تجارت کرنے پر غور کیا جاسکتا ہے۔
جعلی دراندازی کا خطرہ: متعدد فلٹرز کے باوجود ، اعلی اتار چڑھاؤ والے بازاروں میں جعلی بریک کا سامنا کرنا پڑ سکتا ہے ، جس سے تجارت میں نقصان ہوتا ہے۔ حل: اشارے کے پیرامیٹرز کو ایڈجسٹ کرنا ، تصدیق کی شرائط میں اضافہ کرنا ، یا طویل عرصے تک کے دورانیے کے ساتھ رجحانات کا فیصلہ کرنا۔
پیرامیٹر کی حساسیت: حکمت عملی کی کارکردگی پیرامیٹرز کی ترتیب پر بہت زیادہ انحصار کرتی ہے ، مختلف مارکیٹ کے حالات میں مختلف پیرامیٹرز کی ضرورت ہوسکتی ہے۔ حل: کافی تاریخ کی جانچ پڑتال کریں ، بہترین پیرامیٹرز کا مجموعہ تلاش کریں ، اور پیرامیٹرز کو باقاعدگی سے دوبارہ بہتر بنائیں۔
مارکیٹ کے رجحانات کے مطابق: یہ اوسط واپسی کی حکمت عملی اتار چڑھاؤ والے بازاروں میں اچھی کارکردگی کا مظاہرہ کرتی ہے ، لیکن مضبوط رجحان والے بازاروں میں خراب کارکردگی کا مظاہرہ کرسکتی ہے۔ حل: رجحان فلٹر شامل کریں ، اور مضبوط رجحان کے دوران رجحان مخالف تجارت کو محدود کریں۔
سسٹم کا خطرہ: ٹیلیگرام نوٹیفکیشن سسٹم پر انحصار کریں ، اگر نوٹیفکیشن سسٹم میں خرابی ہو تو ، آپ کو تجارت کا موقع ضائع کرنا پڑسکتا ہے۔ حل: بیک اپ نوٹیفکیشن چینلز یا مقامی انتباہ کے نظام کو نافذ کریں۔
کوڈ تجزیہ کی بنیاد پر ، اس حکمت عملی کو مندرجہ ذیل سمتوں میں بہتر بنایا جاسکتا ہے۔
مارکیٹ کی حالت کا تعین شامل کریں: مارکیٹ میں اتار چڑھاؤ اور رجحان کی طاقت کے مطابق حکمت عملی کے پیرامیٹرز کو متحرک طور پر ایڈجسٹ کرنے کے لئے ایک موافقت کا طریقہ کار متعارف کرایا گیا۔ اس طرح حکمت عملی مختلف مارکیٹ کے ماحول میں اچھی کارکردگی کا مظاہرہ کرسکتی ہے۔ اس کے عملی نفاذ سے مارکیٹ کی حالت کا اندازہ لگایا جاسکتا ہے کہ اے ٹی آر ((اوسط حقیقی طول و عرض) یا اتار چڑھاؤ کی شرح کے اشارے کے حساب سے۔
ملٹی ٹائم فریم تجزیہ: اعلی ٹائم فریم کی مارکیٹ ٹرینڈ کی معلومات کو مربوط کریں ، صرف مرکزی رجحان کی سمت میں تجارت کریں ، یا مختلف رجحانات کے حالات میں مختلف پیرامیٹرز کی ترتیبات کا استعمال کریں۔ مثال کے طور پر ، ایک دن کی لائن یا 4 گھنٹے کی رجحان کا فیصلہ شامل کریں ، اور صرف بڑھتے ہوئے رجحان میں زیادہ کام کریں ، اور صرف گرنے والے رجحان میں خالی کام کریں۔
داخلہ کے وقت کو بہتر بنانا: حجم کی تصدیق یا قیمت کے طرز عمل کی شناخت میں اضافہ کرکے داخلے کی درستگی کو بہتر بنائیں۔ سگنل کی تخلیق کے بعد داخلے کے زیادہ فائدہ مند مقامات کا انتظار کرنے پر غور کیا جاسکتا ہے ، نہ کہ فوری طور پر داخل ہونا۔
سٹاپ نقصان کے طریقہ کار کو بہتر بنانا: متحرک اسٹاپ اسٹاپ کو لاگو کریں ، جیسے ٹریکنگ اسٹاپ یا اتار چڑھاؤ کی بنیاد پر اسٹاپ سیٹنگ ، مختلف مارکیٹ کے حالات کے مطابق۔ مثال کے طور پر ، اے ٹی آر پر مبنی اسٹاپ ڈسٹنس سیٹ کیا جاسکتا ہے ، یا موبائل اسٹاپ پروٹیکشن منافع کا استعمال کیا جاسکتا ہے۔
مشین سیکھنے کے عناصر شامل کریں: مشین لرننگ الگورتھم کا استعمال کرتے ہوئے خود کار طریقے سے بہترین پیرامیٹرز کے مجموعے کی شناخت یا سگنل کی تاثیر کی پیش گوئی کریں۔ تاریخی اعداد و شمار کے ساتھ تربیت یافتہ ماڈل کے ذریعہ ، ہر تجارتی سگنل کو ایک امکان کا وزن دیا جاتا ہے۔
خطرے کی چوٹی کا انتظام: اکاؤنٹ کی خالص مالیت پر مبنی متحرک پوزیشن اسکیل ایڈجسٹمنٹ ، مسلسل نقصان کے بعد تجارتی حجم کو کم کرنا ، مسلسل منافع کے بعد تجارتی حجم میں اضافہ ، زیادہ سائنسی فنڈ مینجمنٹ حاصل کرنا۔
“ملٹی اوسیلیٹر متحرک فلٹرڈ میڈین ریورینٹ بٹ کوائن ٹریڈنگ اسٹریٹجی” ایک اچھی طرح سے ڈیزائن کیا گیا شارٹ لائن ٹریڈنگ سسٹم ہے ، جو آر ایس آئی چینل ، ویو ٹرینڈ اور بے ترتیب آر ایس آئی کے ہم آہنگی کے ذریعہ مارکیٹ میں اوورلوڈ اوورلوڈ اسٹیٹس کی مؤثر طریقے سے نشاندہی کرتا ہے اور ٹریڈنگ کے مواقع کو میڈین ریورینٹ پر قبضہ کرتا ہے۔ اس حکمت عملی میں متعدد فلٹرنگ ، لچکدار ٹریڈنگ میکانزم ، موثر رسک مینجمنٹ اور خودکار انتباہات جیسے فوائد ہیں ، جو بٹ کوائن مارکیٹ میں شارٹ لائن تاجروں کے لئے موزوں ہیں۔
تاہم ، اس حکمت عملی کو بھی چیلنجوں کا سامنا کرنا پڑتا ہے ، جیسے کہ اعلی تعدد ٹریڈنگ کا خطرہ ، جعلی بریک آؤٹ کا خطرہ ، اور مارکیٹ کی موافقت۔ حکمت عملی کی استحکام اور منافع کو مزید بڑھانے کے لئے مارکیٹ کی حیثیت کا فیصلہ ، کثیر وقتی فریم تجزیہ ، انٹری ٹائمنگ کو بہتر بنانا ، اسٹاپ نقصان کو روکنے کے طریقہ کار کو بہتر بنانا ، اور متحرک پوزیشن مینجمنٹ کو نافذ کرنا شامل ہے۔
یہ حکمت عملی ایک ٹھوس بنیادی فریم ورک فراہم کرتی ہے جس میں انفرادی ٹریڈنگ سٹائل اور مارکیٹ کی شناخت کے مطابق انفرادی ایڈجسٹمنٹ اور اصلاح کے ساتھ مستحکم منافع کے مقصد کو حاصل کرنے کے لئے بٹ کوائن مارکیٹ میں مختصر تجارت کرنے کے خواہاں مقدار کے تاجروں کے لئے.
/*backtest
start: 2024-08-15 00:00:00
end: 2025-08-13 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BNB_USDT"}]
*/
//@version=5
strategy("RS BTC 1", overlay=true, max_labels_count=500, initial_capital=100, commission_type=strategy.commission.percent, commission_value=0.003, default_qty_type=strategy.percent_of_equity, default_qty_value=100, calc_on_every_tick=true, process_orders_on_close=false, pyramiding=0)
// ==== Inputs
// RSI Bands
rsiLen = input.int(14, "RSI Length")
obLevel = input.int(70, "RSI Overbought")
osLevel = input.int(30, "RSI Oversold")
// WT (LazyBear)
wtLen1 = input.int(11, "WT Channel Length")
wtLen2 = input.int(12, "WT Avg Length")
wtOB = input.float( 60.0, "WT Overbought (+)")
wtOS = input.float(-60.0, "WT Oversold (-)")
// Stoch RSI (sadece K filtresi)
kLen = input.int(5, "StochRSI K")
rsiLenSR = input.int(14, "StochRSI RSI Length")
stLen = input.int(10, "Stoch Length")
rsiSrc = input.source(close, "RSI Source")
stochOB = input.float(100.0, "StochRSI OB (K ≥)", step=0.1)
stochOS = input.float(0.0, "StochRSI OS (K ≤)", step=0.1)
eps = input.float(0.5, "Tolerance around 0/100", step=0.1)
// Tetik modu
triggerMode = input.string("Cross(close)", "Trigger mode", options=["Cross(close)","Touch(wick)"])
showMid = input.bool(true, "Show RSI mid band")
// Çıkış seçenekleri
useReverseExit = input.bool(true, "Exit & reverse on opposite band cross (swing)")
useTP = input.bool(true, "Enable Take Profit %")
useSL = input.bool(true, "Enable Stop Loss %")
tpPerc = input.float(1.00, "TP %", step=0.01, minval=0.01)
slPerc = input.float(1.00, "SL %", step=0.01, minval=0.01)
// ==== RSI Bands (LazyBear) – Mantık aynı, sadece ince çizgi
src = close
ep = 2 * rsiLen - 1
auc = ta.ema(math.max(src - src[1], 0), ep)
adc = ta.ema(math.max(src[1] - src, 0), ep)
x1 = (rsiLen - 1) * (adc * obLevel / (100 - obLevel) - auc)
x2 = (rsiLen - 1) * (adc * osLevel / (100 - osLevel) - auc)
ub = x1 >= 0 ? src + x1 : src + x1 * (100 - obLevel) / obLevel
lb = x2 >= 0 ? src + x2 : src + x2 * (100 - osLevel) / osLevel
mid = (ub + lb) / 2.0
plot(ub, "RSI Upper", color=color.yellow, linewidth=1)
plot(lb, "RSI Lower", color=color.aqua, linewidth=1)
plot(showMid ? mid : na, "RSI Mid", color=color.gray, linewidth=1)
// ==== WaveTrend (LazyBear WT1)
ap = hlc3
esa = ta.ema(ap, wtLen1)
d = ta.ema(math.abs(ap - esa), wtLen1)
ci = (ap - esa) / (0.015 * d)
wt1 = ta.ema(ci, wtLen2)
// ==== Stoch RSI K (0..100)
rsiVal = ta.rsi(rsiSrc, rsiLenSR)
stochRaw = ta.stoch(rsiVal, rsiVal, rsiVal, stLen)
stochK = ta.sma(stochRaw, kLen)
// ==== Sinyaller
longCrossRaw = triggerMode == "Cross(close)" ? ta.crossunder(close, lb) : ta.crossunder(low, lb)
shortCrossRaw = triggerMode == "Cross(close)" ? ta.crossover( close, ub) : ta.crossover( high, ub)
stochLongOK = stochK <= (stochOS + eps)
stochShortOK = stochK >= (stochOB - eps)
wtLongOK = wt1 < wtOS
wtShortOK = wt1 > wtOB
longSig_raw = longCrossRaw and wtLongOK and stochLongOK
shortSig_raw = shortCrossRaw and wtShortOK and stochShortOK
longSig = useReverseExit ? longSig_raw : (longSig_raw and strategy.position_size == 0)
shortSig = useReverseExit ? shortSig_raw : (shortSig_raw and strategy.position_size == 0)
// ==== İşlemler
if longSig
if useReverseExit and strategy.position_size < 0
strategy.close("S")
if strategy.position_size <= 0
strategy.entry("L", strategy.long)
if shortSig
if useReverseExit and strategy.position_size > 0
strategy.close("L")
if strategy.position_size >= 0
strategy.entry("S", strategy.short)
// ==== TP / SL
if strategy.position_size > 0 and (useTP or useSL)
longEntryPrice = strategy.position_avg_price
longTP = useTP ? longEntryPrice * (1 + tpPerc/100.0) : na
longSL = useSL ? longEntryPrice * (1 - slPerc/100.0) : na
strategy.exit(id="L-EXIT", from_entry="L", limit=longTP, stop=longSL)
if strategy.position_size < 0 and (useTP or useSL)
shortEntryPrice = strategy.position_avg_price
shortTP = useTP ? shortEntryPrice * (1 - tpPerc/100.0) : na
shortSL = useSL ? shortEntryPrice * (1 + slPerc/100.0) : na
strategy.exit(id="S-EXIT", from_entry="S", limit=shortTP, stop=shortSL)
// ==== ENTRY alert (tek bar / tek kez) ====
// TV Alert -> Condition: Any alert() function call
// Webhook -> https://api.telegram.org/bot<YOUR_TOKEN>/sendMessage
// Message -> BOŞ (alert() JSON yolluyor)
chatId = input.string("-1002849453919", "Telegram chat_id (channel)")
lotTxt = input.string("0.20", "Lot (text)")
tpPips = input.int(10000, "TP (pip)") // SL yok
makeJson(_txt) => '{"chat_id":"' + chatId + '","text":"' + _txt + '"}'
// MT5 sembolü sabit
longTxt = 'BUY BTCUSD# ' + lotTxt + ' TP=' + str.tostring(tpPips) + 'pip'
shortTxt = 'SELL BTCUSD# ' + lotTxt + ' TP=' + str.tostring(tpPips) + 'pip'
// Giriş oldu mu? (bar içinde)
enteredLong = strategy.position_size > 0 and strategy.position_size[1] <= 0
enteredShort = strategy.position_size < 0 and strategy.position_size[1] >= 0
// --- anti-spam: aynı barda yalnızca 1 kere gönder ---
var int lastEntryBar = na
var int lastDir = 0 // +1: long, -1: short
if enteredLong and (lastEntryBar != bar_index or lastDir != 1)
alert(makeJson(longTxt), alert.freq_once_per_bar) // tek gönderim
lastEntryBar := bar_index
lastDir := 1
if enteredShort and (lastEntryBar != bar_index or lastDir != -1)
alert(makeJson(shortTxt), alert.freq_once_per_bar)
lastEntryBar := bar_index
lastDir := -1