
रणनीति एक ट्रेडिंग प्रणाली है जो जापान के चार्ट तकनीकी विश्लेषण में तीन-लाइन ब्रेकआउट पैटर्न पर आधारित है। गतिशील जोखिम प्रबंधन के लिए, एक प्रवृत्ति फ़िल्टर के रूप में सूचकांक चलती औसत (ईएमए) और एक वास्तविक तरंग दैर्ध्य संकेतक (एटीआर) के संयोजन के माध्यम से, पारंपरिक तीन-लाइन ब्रेकआउट मॉडल की विश्वसनीयता में सुधार किया गया है। रणनीति न केवल बाजार के रुझान मोड़ को पकड़ने में सक्षम है, बल्कि जोखिम को प्रभावी ढंग से नियंत्रित करने में भी सक्षम है, जो मध्यम और दीर्घकालिक प्रवृत्ति व्यापार के लिए उपयुक्त है।
रणनीति का मुख्य तर्क निम्नलिखित महत्वपूर्ण तत्वों पर आधारित हैः पहला, तीन-लाइन ब्रेकआउट की पहचान करना, जो कि एक ही रंग के तीन लगातार तारों के बाद एक बड़ा रिवर्स-ग्लॉवर है। दूसरा, ईएमए को एक प्रवृत्ति फ़िल्टर के रूप में उपयोग करना, केवल ईएमए के ऊपर और ईएमए के नीचे होने पर एक शून्य संकेत पर विचार करना। अंत में, एटीआर सूचक का उपयोग करके स्टॉपलॉस को गतिशील रूप से सेट करना, विशेष रूप से स्टॉपलॉस को 2 गुना एटीआर और स्टॉपलॉस को 1 गुना एटीआर पर सेट करना।
यह एक रणनीति प्रणाली है जो तकनीकी विश्लेषण के क्लासिक सिद्धांतों और आधुनिक मात्रात्मक व्यापारिक विचारों को जोड़ती है। पारंपरिक तीन-लाइन ब्रेकआउट पैटर्न को ट्रेंड ट्रैकिंग और जोखिम प्रबंधन के साथ जोड़कर, एक अपेक्षाकृत पूर्ण व्यापार प्रणाली का निर्माण किया गया है। हालांकि कुछ सीमाएं हैं, लेकिन प्रदान की गई अनुकूलन दिशा रणनीति की स्थिरता और अनुकूलनशीलता को और बढ़ा सकती है। रणनीति के सफल अनुप्रयोग के लिए एक व्यापारी को बाजार की विशेषताओं की गहरी समझ की आवश्यकता होती है और विशिष्ट परिस्थितियों के अनुसार पैरामीटर को समायोजित किया जाता है।
/*backtest
start: 2025-01-18 00:00:00
end: 2025-02-17 00:00:00
period: 2h
basePeriod: 2h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// Copyright ...
// Based on the TMA Overlay by Arty, converted to a simple strategy example.
// Pine Script v5
//@version=5
strategy(title='3 Line Strike [TTF] - Strategy with ATR and EMA Filter',
shorttitle='3LS Strategy [TTF]',
overlay=true,
initial_capital=100000,
default_qty_type=strategy.percent_of_equity,
default_qty_value=100,
pyramiding=0)
// -----------------------------------------------------------------------------
// INPUTS
// -----------------------------------------------------------------------------
// ATR and EMA Inputs
atrLength = input.int(title='ATR Length', defval=14, group='ATR & EMA')
emaLength = input.int(title='EMA Length', defval=200, group='ATR & EMA')
// ### 3 Line Strike
showBear3LS = input.bool(title='Show Bearish 3 Line Strike', defval=true, group='3 Line Strike',
tooltip="Bearish 3 Line Strike (3LS-Bear) = 3 zelené sviečky, potom veľká červená sviečka (engulfing).")
showBull3LS = input.bool(title='Show Bullish 3 Line Strike', defval=true, group='3 Line Strike',
tooltip="Bullish 3 Line Strike (3LS-Bull) = 3 červené sviečky, potom veľká zelená sviečka (engulfing).")
// -----------------------------------------------------------------------------
// CALCULATIONS
// -----------------------------------------------------------------------------
// Calculate ATR
atr = ta.atr(atrLength)
// Calculate EMA
ema = ta.ema(close, emaLength)
// Helper Functions
getCandleColorIndex(barIndex) =>
int ret = na
if (close[barIndex] > open[barIndex])
ret := 1
else if (close[barIndex] < open[barIndex])
ret := -1
else
ret := 0
ret
isEngulfing(checkBearish) =>
sizePrevCandle = close[1] - open[1]
sizeCurrentCandle = close - open
isCurrentLargerThanPrevious = math.abs(sizeCurrentCandle) > math.abs(sizePrevCandle)
if checkBearish
isGreenToRed = (getCandleColorIndex(0) < 0) and (getCandleColorIndex(1) > 0)
isCurrentLargerThanPrevious and isGreenToRed
else
isRedToGreen = (getCandleColorIndex(0) > 0) and (getCandleColorIndex(1) < 0)
isCurrentLargerThanPrevious and isRedToGreen
isBearishEngulfing() => isEngulfing(true)
isBullishEngulfing() => isEngulfing(false)
is3LSBear() =>
is3LineSetup = (getCandleColorIndex(1) > 0) and (getCandleColorIndex(2) > 0) and (getCandleColorIndex(3) > 0)
is3LineSetup and isBearishEngulfing()
is3LSBull() =>
is3LineSetup = (getCandleColorIndex(1) < 0) and (getCandleColorIndex(2) < 0) and (getCandleColorIndex(3) < 0)
is3LineSetup and isBullishEngulfing()
// Signals
is3LSBearSig = is3LSBear() and close < ema
is3LSBullSig = is3LSBull() and close > ema
// Take Profit and Stop Loss
longTP = close + 2 * atr
longSL = close - 1 * atr
shortTP = close - 2 * atr
shortSL = close + 1 * atr
// -----------------------------------------------------------------------------
// STRATEGY ENTRY PRÍKAZY
// -----------------------------------------------------------------------------
if (showBull3LS and is3LSBullSig)
strategy.entry("3LS_Bull", strategy.long, comment="3LS Bullish")
strategy.exit("Exit Bull", from_entry="3LS_Bull", limit=longTP, stop=longSL)
if (showBear3LS and is3LSBearSig)
strategy.entry("3LS_Bear", strategy.short, comment="3LS Bearish")
strategy.exit("Exit Bear", from_entry="3LS_Bear", limit=shortTP, stop=shortSL)