
এই কৌশলটি একাধিক প্রযুক্তিগত সূচকগুলির সাথে একটি প্রবণতা ট্র্যাকিং সিস্টেম যা একটি সম্পূর্ণ ট্রেডিং সিদ্ধান্ত গ্রহণের কাঠামো তৈরি করে, যেমন চলমান গড় (EMA), তুলনামূলকভাবে দুর্বল সূচক (RSI), চলমান গড় সমান্তরাল বিচ্ছিন্নতা সূচক (MACD) এবং বুলিন ব্যান্ড (BB) । কৌশলটি একটি গতিশীল ঝুঁকি ব্যবস্থাপনা পদ্ধতি ব্যবহার করে, যার মধ্যে শতাংশের উপর ভিত্তি করে স্টপ লস এবং ঝুঁকি-ভিত্তিক লাভের তুলনামূলক স্টপ সেটিং রয়েছে, যা একটি সুস্থ ঝুঁকি-সমন্বিত লাভ অর্জনের লক্ষ্যে কাজ করে।
এই কৌশলটির কেন্দ্রীয় যুক্তি বাজার বিশ্লেষণের বিভিন্ন স্তরের উপর ভিত্তি করে তৈরি করা হয়েছেঃ
এই কৌশলটি একাধিক প্রযুক্তিগত সূচকের সমন্বিত প্রয়োগের মাধ্যমে একটি সম্পূর্ণ প্রবণতা ট্র্যাকিং ট্রেডিং সিস্টেম তৈরি করে। কঠোর ঝুঁকি ব্যবস্থাপনা এবং বহু-মাত্রিক বাজার বিশ্লেষণের মাধ্যমে কৌশলটি ভাল অভিযোজনযোগ্যতা এবং স্থিতিশীলতা রয়েছে। যদিও কিছু অপ্টিমাইজেশনের জায়গা রয়েছে, তবে সামগ্রিক কাঠামোটি যুক্তিসঙ্গতভাবে ডিজাইন করা হয়েছে এবং মাঝারি এবং দীর্ঘমেয়াদী ট্রেডিং কৌশলগুলির ভিত্তিতে উপযুক্ত। কৌশলটির সফল বাস্তবায়ন অব্যাহত পর্যবেক্ষণ এবং বিভিন্ন বাজারের পরিবেশের সাথে খাপ খাইয়ে নেওয়ার জন্য সময়োচিত প্যারামিটার সমন্বয় প্রয়োজন।
/*backtest
start: 2025-01-10 00:00:00
end: 2025-02-09 00:00:00
period: 2h
basePeriod: 2h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Altcoin Long/Short Strategy", overlay=true, initial_capital=1000, default_qty_type=strategy.percent_of_equity, default_qty_value=200, commission_type=strategy.commission.percent, commission_value=0.1)
// —————— Inputs ——————
emaFastLength = input.int(20, "Fast EMA")
emaSlowLength = input.int(50, "Slow EMA")
rsiLength = input.int(14, "RSI Length")
bbLength = input.int(20, "Bollinger Bands Length")
riskRewardRatio = input.float(1.5, "Risk/Reward Ratio")
stopLossPerc = input.float(2, "Stop Loss %") / 100
// —————— Indicators ——————
// Trend: EMAs
emaFast = ta.ema(close, emaFastLength)
emaSlow = ta.ema(close, emaSlowLength)
ema200 = ta.ema(close, 200)
// Momentum: RSI & MACD
rsi = ta.rsi(close, rsiLength)
[macdLine, signalLine, _] = ta.macd(close, 12, 26, 9)
// Volatility: Bollinger Bands
basis = ta.sma(close, bbLength)
dev = ta.stdev(close, bbLength)
upperBand = basis + 2 * dev
lowerBand = basis - 2 * dev
// —————— Strategy Logic ——————
// Long Conditions
longCondition =
close > ema200 and // Long-term bullish
ta.crossover(emaFast, emaSlow) and // EMA crossover
rsi > 50 and // Momentum rising
close > lowerBand and // Bounce from lower Bollinger Band
macdLine > signalLine // MACD bullish
// Short Conditions
shortCondition =
close < ema200 and // Long-term bearish
ta.crossunder(emaFast, emaSlow) and // EMA crossunder
rsi < 50 and // Momentum weakening
close < upperBand and // Rejection from upper Bollinger Band
macdLine < signalLine // MACD bearish
// —————— Risk Management ——————
stopLoss = strategy.position_avg_price * (1 - stopLossPerc)
takeProfit = strategy.position_avg_price * (1 + (riskRewardRatio * stopLossPerc))
// —————— Execute Trades ——————
if (longCondition)
strategy.entry("Long", strategy.long)
strategy.exit("Exit Long", "Long", stop=stopLoss, limit=takeProfit)
if (shortCondition)
strategy.entry("Short", strategy.short)
strategy.exit("Exit Short", "Short", stop=stopLoss, limit=takeProfit)
// —————— Plotting ——————
plot(emaFast, "Fast EMA", color=color.blue)
plot(emaSlow, "Slow EMA", color=color.orange)
plot(ema200, "200 EMA", color=color.gray)
plot(upperBand, "Upper Bollinger", color=color.red)
plot(lowerBand, "Lower Bollinger", color=color.green)