
এই কৌশলটি একটি ট্রেডিং সিস্টেম যা দ্বি-সূচকীয় মুভিং এভারেজ (ইএমএ) উপর ভিত্তি করে ট্রেডিং ট্রেডিং ট্র্যাক করে। কৌশলটি 44-চক্র এবং 200-চক্রের দুটি ইএমএ লাইন ব্যবহার করে, দামের ব্রেকিং সিগন্যালের সাথে ট্রেডিংয়ের দিকনির্দেশনা নির্ধারণ করে। একই সাথে ঝুঁকি ব্যবস্থাপনার ব্যবস্থাও রয়েছে, যার মধ্যে রয়েছে গতিশীল অবস্থান গণনা এবং চলমান স্টপ লস।
কৌশলটির মূল যুক্তিটি দামের সাথে দ্বৈত ইএমএ লাইনের মিথস্ক্রিয়া উপর ভিত্তি করে। 44-চক্রের ইএমএ যথাক্রমে সর্বোচ্চ এবং সর্বনিম্ন দামের জন্য একটি উত্থান-পতন চ্যানেল তৈরি করতে ব্যবহৃত হয়, 200-চক্রের ইএমএ দীর্ঘমেয়াদী প্রবণতা ফিল্টার হিসাবে কাজ করে। যখন বন্ধের দামটি উচ্চতর ইএমএ অতিক্রম করে এবং 200 ইএমএ ফিল্টার শর্ত পূরণ করে তখন সিস্টেমটি একাধিক সংকেত উত্পন্ন করে; যখন বন্ধের দামটি উচ্চতর ইএমএ অতিক্রম করে এবং 200 ইএমএ ফিল্টার শর্ত পূরণ করে তখন সিস্টেমটি খালি সংকেত উত্পন্ন করে। কৌশলটি অ্যাকাউন্টের সুবিধা-ভিত্তিক গতিশীল পজিশন ম্যানেজমেন্ট গ্রহণ করে, স্বয়ংক্রিয়ভাবে প্রতিটি ব্যবসায়ের ঝুঁকির শতাংশের ভিত্তিতে পজিশন খোলার সংখ্যা গণনা করে। স্টপ লসটি সংশ্লিষ্ট ইএমএ লাইনের অবস্থানের জন্য সেট করা হয়েছে।
এটি একটি কাঠামোগত, যুক্তিসঙ্গতভাবে পরিষ্কার প্রবণতা ট্র্যাকিং কৌশল। ডাবল ইএমএ চ্যানেল এবং দীর্ঘমেয়াদী প্রবণতা ফিল্টারিংয়ের মাধ্যমে ট্রেডিং সংকেত সরবরাহ করা হয়, যা একটি ভাল ঝুঁকি ব্যবস্থাপনা ব্যবস্থার সাথে ভাল ব্যবহারযোগ্যতা রয়েছে। কৌশলটির অপ্টিমাইজেশনের স্থানটি মূলত সংকেত নিশ্চিতকরণ, গতিশীল পরামিতি সমন্বয় এবং ঝুঁকি ব্যবস্থাপনা ব্যবস্থার উন্নতিতে রয়েছে। বাস্তব প্রয়োগে, প্যারামিটারের সংবেদনশীলতা পুরোপুরি পরীক্ষা করার পরামর্শ দেওয়া হয় এবং নির্দিষ্ট ট্রেডিং জাতের বৈশিষ্ট্যগুলির সাথে মিলিত লক্ষ্যযুক্ত অপ্টিমাইজেশন করা হয়।
/*backtest
start: 2024-02-25 00:00:00
end: 2024-03-17 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Binance","currency":"SOL_USDT"}]
*/
//@version=5
strategy("RENTABLE Dual EMA Breakout TSLA ", overlay=true)
// Inputs for EMA lengths and risk per trade
length = input(44, title="EMA Length")
longTermLength = input(200, title="Long-Term EMA Length")
riskPerTrade = input.float(1.0, title="Risk per Trade (%)", minval=0.1, maxval=10.0)
// Additional inputs for strategy customization
useFilter = input.bool(true, title="Use 200 EMA Filter")
tradeDirection = input.string("Both", title="Trade Direction", options=["Long", "Short", "Both"])
// EMAs based on the high and low prices and long-term EMA
emaHigh = ta.ema(high, length)
emaLow = ta.ema(low, length)
ema200 = ta.ema(close, longTermLength)
// Plotting EMAs on the chart
plot(emaHigh, color=color.green, title="High EMA")
plot(emaLow, color=color.red, title="Low EMA")
plot(ema200, color=color.blue, title="200 EMA")
// Entry conditions with optional EMA filter
longCondition = close > emaHigh and (useFilter ? close > ema200 : true)
shortCondition = close < emaLow and (useFilter ? close < ema200 : true)
// Calculating stop-loss and position size
longStop = emaLow
shortStop = emaHigh
riskPerShareLong = close - longStop
riskPerShareShort = shortStop - close
equity = strategy.equity
// Ensure risk per share is positive for calculations
riskPerShareLong := riskPerShareLong > 0 ? riskPerShareLong : 0.01
riskPerShareShort := riskPerShareShort > 0 ? riskPerShareShort : 0.01
positionSizeLong = (equity * riskPerTrade / 100) / riskPerShareLong
positionSizeShort = (equity * riskPerTrade / 100) / riskPerShareShort
// Ensure position sizes are positive before entering trades
if (longCondition and (tradeDirection == "Long" or tradeDirection == "Both") and positionSizeLong > 0)
strategy.entry("Long", strategy.long, qty= positionSizeLong)
if (shortCondition and (tradeDirection == "Short" or tradeDirection == "Both") and positionSizeShort > 0)
strategy.entry("Short", strategy.short, qty=positionSizeShort)
// Applying the stop-loss to strategy
strategy.exit("Exit Long", "Long", stop=longStop)
strategy.exit("Exit Short", "Short", stop=shortStop)
////Usar en 1,2 3 4 HRS TSLA