
یہ حکمت عملی ایک مکمل ٹریڈنگ سسٹم بنانے کے لئے ہینڈل آؤٹ آؤٹ ، زیڈ ایل ایس ایم اے ، اور رشتہ دار حجم کے ساتھ آر وی او ایل پلس کا پتہ لگانے کے ساتھ ملتی ہے۔ ہینڈل آؤٹ آؤٹ حکمت عملی متحرک طور پر روکنے کی پوزیشن کو حقیقی اتار چڑھاؤ کی چوڑائی کے ذریعے ایڈجسٹ کرتی ہے ، جو مارکیٹ میں تبدیلیوں کو بہتر طور پر ڈھال سکتی ہے۔ زیڈ ایل ایس ایم اے قیمتوں کے رجحانات کو درست طریقے سے پکڑ سکتا ہے اور تجارت کی سمت فراہم کرسکتا ہے۔ آر وی او ایل پلس کا پتہ لگانے سے حکمت عملی کو کم اتار چڑھاؤ والی مارکیٹ سے بچنے میں مدد مل سکتی ہے ، جس سے تجارت کا معیار بہتر ہوتا ہے۔
ZLSMA-Enhanced Pendant Exit Strategy and Transaction Pulse Detection ایک رجحان سے باخبر رہنے والی حکمت عملی ہے جو رجحان کے مواقع پر قابو پانے کے ساتھ ساتھ متحرک اسٹاپ نقصان ، رجحان کا فیصلہ اور ٹرانسمیشن پلس کا پتہ لگانے کے ذریعے تجارتی خطرہ کو کنٹرول کرتی ہے۔ حکمت عملی کی منطق واضح ، سمجھنے میں آسان اور لاگو کرنے کے لئے آسان ہے ، لیکن عملی استعمال میں ابھی بھی مارکیٹ کی مخصوص خصوصیات اور تجارت کی اقسام کے ساتھ مل کر اصلاح اور بہتر بنانے کی ضرورت ہے۔ زیادہ سگنل کی تصدیق کے اشارے ، باہر نکلنے کے حالات کو بہتر بنانے ، پیرامیٹرز کو منطقی ترتیب دینے ، اور پوزیشنوں کے سخت انتظام اور خطرے پر قابو پانے کے ذریعہ ، یہ حکمت عملی ایک مستحکم اور موثر تجارتی آلہ بننے کی امید رکھتی ہے۔
/*backtest
start: 2024-05-01 00:00:00
end: 2024-05-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Chandelier Exit Strategy with ZLSMA and Volume Spike Detection", shorttitle="CES with ZLSMA and Volume", overlay=true, process_orders_on_close=true, calc_on_every_tick=false)
// Chandelier Exit Inputs
lengthAtr = input.int(title='ATR Period', defval=1)
mult = input.float(title='ATR Multiplier', step=0.1, defval=2.0)
useClose = input.bool(title='Use Close Price for Extremums', defval=true)
// Calculate ATR
atr = mult * ta.atr(lengthAtr)
// Calculate Long and Short Stops
longStop = (useClose ? ta.highest(close, lengthAtr) : ta.highest(high, lengthAtr)) - atr
shortStop = (useClose ? ta.lowest(close, lengthAtr) : ta.lowest(low, lengthAtr)) + atr
// Update stops based on previous values
longStop := na(longStop[1]) ? longStop : close[1] > longStop[1] ? math.max(longStop, longStop[1]) : longStop
shortStop := na(shortStop[1]) ? shortStop : close[1] < shortStop[1] ? math.min(shortStop, shortStop[1]) : shortStop
// Determine Direction
var int dir = na
dir := na(dir[1]) ? (close > shortStop ? 1 : close < longStop ? -1 : na) : close > shortStop[1] ? 1 : close < longStop[1] ? -1 : dir[1]
// ZLSMA Inputs
lengthZLSMA = input.int(title="ZLSMA Length", defval=50)
offsetZLSMA = input.int(title="ZLSMA Offset", defval=0)
srcZLSMA = input.source(close, title="ZLSMA Source")
// ZLSMA Calculation
lsma = ta.linreg(srcZLSMA, lengthZLSMA, offsetZLSMA)
lsma2 = ta.linreg(lsma, lengthZLSMA, offsetZLSMA)
eq = lsma - lsma2
zlsma = lsma + eq
// Plot ZLSMA
plot(zlsma, title="ZLSMA", color=color.purple, linewidth=3)
// Swing High/Low Calculation
swingHigh = ta.highest(high, 5)
swingLow = ta.lowest(low, 5)
// Relative Volume (RVOL) Calculation
rvolLength = input.int(20, title="RVOL Length")
rvolThreshold = input.float(1.5, title="RVOL Threshold")
avgVolume = ta.sma(volume, rvolLength)
rvol = volume / avgVolume
// Define buy and sell signals based on ZLSMA and Volume Spike
buySignal = (dir == 1 and dir[1] == -1 and close > zlsma and rvol > rvolThreshold)
sellSignal = (dir == -1 and dir[1] == 1 and close < zlsma and rvol > rvolThreshold)
// Define exit conditions based on ZLSMA
exitLongSignal = (close < zlsma)
exitShortSignal = (close > zlsma)
// Strategy Entries and Exits
if (buySignal)
strategy.entry("Long", strategy.long, stop=swingLow)
if (sellSignal)
strategy.entry("Short", strategy.short, stop=swingHigh)
if (exitLongSignal)
strategy.close("Long")
if (exitShortSignal)
strategy.close("Short")
// Alerts
alertcondition(buySignal, title='Alert: CE Buy', message='Chandelier Exit Buy!')
alertcondition(sellSignal, title='Alert: CE Sell', message='Chandelier Exit Sell!')