
रणनीति एक द्वि-सूचक चलती औसत (ईएमए) पर आधारित एक प्रवृत्ति-अनुवर्ती ट्रेडिंग प्रणाली है। रणनीति 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