
یہ حکمت عملی ایک انکولی ٹریڈنگ سسٹم ہے جس میں ٹریڈنگ کے متعدد طریقوں کو شامل کیا گیا ہے۔ یہ مارکیٹ کے مختلف حالات کو ایڈجسٹ کرنے کے لئے تین حکمت عملیوں کے لچکدار امتزاج کے ذریعہ تیار کیا گیا ہے: رجحان سے باخبر رہنے ، وقفہ ٹریڈنگ اور توڑنے والی تجارت۔ یہ نظام مارکیٹ کی حالت کا فیصلہ کرنے کے لئے ای ایم اے ، آر ایس آئی ، او بی وی جیسے تکنیکی اشارے استعمال کرتا ہے ، اور اے ٹی آر کے متحرک اسٹاپ نقصان کے ذریعہ خطرے کو کنٹرول کرنے کے لئے اے ڈی ایکس اشارے کے ساتھ مل کر رجحان کی طاقت کی تصدیق کرتا ہے۔ حکمت عملی کی منفرد بات یہ ہے کہ صارفین کو آزادانہ طور پر منتخب کرنے کی اجازت دی جاتی ہے کہ کون سی تجارتی حکمت عملی کو چالو کیا جائے اور فنڈ مینجمنٹ پیرامیٹرز کے ذریعہ ہر تجارت کے خطرے کو درست طریقے سے کنٹرول کیا جائے۔
حکمت عملی میں تین اہم تجارتی ماڈیولز شامل ہیں:
ہر ماڈیول میں اے ٹی آر پر مبنی متحرک اسٹاپ نقصان کا پروگرام ہوتا ہے اور صارف کے اپنی مرضی کے مطابق رسک ریٹرن کے ذریعہ منافع کا ہدف طے کیا جاتا ہے۔ سسٹم کافی لیکویڈیٹی کے ماحول میں تجارت کو یقینی بنانے کے لئے حجم فلٹر کے ذریعہ کام کرتا ہے۔
خطرے کو کنٹرول کرنے کے لئے مندرجہ ذیل اقدامات کی سفارش کی جاتی ہے:
مارکیٹ میں اتار چڑھاؤ کے لیے ایڈجسٹمنٹ کو بڑھانا:
اس کے بعد ، ہم نے ایک اور قدم اٹھایا:
فنڈ مینجمنٹ سسٹم کو مضبوط بنائیں:
سگنل فلٹرنگ کے طریقہ کار کو بہتر بنائیں:
اس حکمت عملی میں متعدد حکمت عملیوں کا مجموعہ اور سخت رسک کنٹرول سسٹم شامل ہے ، جس سے مختلف مارکیٹ کے حالات کے مطابق موافقت پذیر تجارت ممکن ہوتی ہے۔ نظام کا ماڈیولر ڈیزائن لچکدار ترتیب کی اجازت دیتا ہے ، جبکہ فنڈ مینجمنٹ کا ایک مکمل میکانزم تجارت کی حفاظت کو یقینی بناتا ہے۔ مسلسل اصلاح اور بہتری کے ذریعہ ، اس حکمت عملی کو مختلف مارکیٹ کے حالات میں مستحکم کارکردگی کا مظاہرہ کرنے کی امید ہے۔ حکمت عملی کی استحکام کو مزید بڑھانے کے لئے ، یہ تجویز کیا گیا ہے کہ اسٹریٹجک ٹریڈنگ میں محتاط فنڈ مینجمنٹ سسٹم کو اپنایا جائے ، اور اسٹریٹجک پیرامیٹرز کا باقاعدگی سے جائزہ لیا جائے اور ان کو ایڈجسٹ کیا جائے۔
/*backtest
start: 2024-01-01 00:00:00
end: 2024-11-11 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Ceulemans Trading Bot met ADX, Trendfilter en Selecteerbare Strategieën", overlay=true)
// Parameters voor indicatoren
emaLength = input.int(50, title="EMA Lengte")
rsiLength = input.int(14, title="RSI Lengte")
obvLength = input.int(20, title="OBV Lengte")
rsiOverbought = input.int(65, title="RSI Overbought")
rsiOversold = input.int(35, title="RSI Oversold")
atrLength = input.int(14, title="ATR Lengte")
adxLength = input.int(14, title="ADX Lengte")
adxSmoothing = input.int(14, title="ADX Smoothing") // Voeg de smoothing parameter toe
// Money Management Parameters
capitalRisk = input.float(1.0, title="Percentage van kapitaal per trade", step=0.1)
riskReward = input.float(3.0, title="Risk/Reward ratio", step=0.1)
stopLossMultiplier = input.float(1.2, title="ATR Stop-Loss Multiplier", step=0.1)
// Strategieën selecteren (aan/uit schakelaars)
useTrendTrading = input.bool(true, title="Gebruik Trend Trading")
useRangeTrading = input.bool(true, title="Gebruik Range Trading")
useBreakoutTrading = input.bool(true, title="Gebruik Breakout Trading")
// Berekening indicatoren
ema = ta.ema(close, emaLength)
rsi = ta.rsi(close, rsiLength)
obv = ta.cum(ta.change(close) * volume)
atr = ta.atr(atrLength)
[diplus, diminus, adx] = ta.dmi(adxLength, adxSmoothing) // ADX berekening met smoothing
avgVolume = ta.sma(volume, obvLength)
// Huidige marktsituatie analyseren
isTrending = close > ema and adx > 25 // Trend is sterk als ADX boven 25 is
isOversold = rsi < rsiOversold
isOverbought = rsi > rsiOverbought
isBreakout = close > ta.highest(close[1], obvLength) and obv > ta.cum(ta.change(close[obvLength]) * volume)
isRange = not isTrending and (close < ta.highest(close, obvLength) and close > ta.lowest(close, obvLength))
volumeFilter = volume > avgVolume
// Strategie logica
// 1. Trend Trading met tight stop-loss en ADX filter
if (useTrendTrading and isTrending and isOversold and volumeFilter)
strategy.entry("Koop Trend", strategy.long)
strategy.exit("Exit Trend", stop=strategy.position_avg_price - stopLossMultiplier * atr, limit=strategy.position_avg_price + riskReward * stopLossMultiplier * atr)
// 2. Range Trading
if (useRangeTrading and isRange and rsi < rsiOversold and volumeFilter)
strategy.entry("Koop Range", strategy.long)
strategy.exit("Verkoop Range", stop=strategy.position_avg_price - stopLossMultiplier * atr, limit=strategy.position_avg_price + riskReward * stopLossMultiplier * atr)
if (useRangeTrading and isRange and rsi > rsiOverbought and volumeFilter)
strategy.entry("Short Range", strategy.short)
strategy.exit("Exit Short Range", stop=strategy.position_avg_price + stopLossMultiplier * atr, limit=strategy.position_avg_price - riskReward * stopLossMultiplier * atr)
// 3. Breakout Trading met volume
if (useBreakoutTrading and isBreakout and volumeFilter)
strategy.entry("Koop Breakout", strategy.long)
strategy.exit("Exit Breakout", stop=strategy.position_avg_price - stopLossMultiplier * atr, limit=strategy.position_avg_price + riskReward * stopLossMultiplier * atr)
// Indicatoren plotten
plot(ema, title="EMA", color=color.blue, linewidth=2)
hline(rsiOverbought, "RSI Overbought", color=color.red)
hline(rsiOversold, "RSI Oversold", color=color.green)
plot(rsi, title="RSI", color=color.purple)
plot(adx, title="ADX", color=color.orange)