इस रणनीति का मुख्य विचार एक विशिष्ट कैंडलस्टिक पैटर्न के उभरने के बाद एक लंबी स्थिति खोलना है, अर्थात् एक डाउनसाइड गैप (कलरबार) के बाद अगले बार में एक लंबी स्थिति खोलना जिसके बाद पिछले बार के निचले स्तर पर वापस जाना है।
इस रणनीति के लिए विशिष्ट शर्तें हैंः पिछले बार में पिछले दो बार की तुलना में एक निचला कम और उच्च उच्च है, जो एक डाउनसाइड गैप को इंगित करता है; और वर्तमान बार के कम पिछले बार के कम से कम या बराबर है, जो संकेत देता है कि एक पुलबैक हुआ है। जब दोनों शर्तें पूरी हो जाती हैं, तो अगली बार के खुलने पर एक लंबी स्थिति खोली जाती है।
लॉन्ग पोजीशन खोलने के बाद, स्टॉप लॉस को पॉलबैक लो पर सेट किया जाता है, जो कि पिछले बार के निचले स्तर पर है, और ले लाभ को प्रवेश मूल्य से 2% से अधिक पर सेट किया जाता है। जब ले लाभ या स्टॉप लॉस को छू लिया जाता है, तो स्थिति बंद हो जाती है।
इस रणनीति का सबसे बड़ा लाभ विशिष्ट कैंडलस्टिक पैटर्न के बाद उच्च संभावना रिबाउंड अवसर को जब्त करना है। पॉलबैक के बाद डाउनसाइड गैप एक बेहद शक्तिशाली तकनीकी पैटर्न का प्रतिनिधित्व करता है जो इंगित करता है कि बिक्री दबाव इस स्तर पर समाप्त हो सकता है और उच्च संभावना रिबाउंड होने की संभावना है। इसलिए, यह रणनीति अल्पकालिक व्यापार के लिए अधिक उपयुक्त है।
प्रमुख जोखिम पॉलबैक समाप्त होने के बाद निरंतर गिरावट है। चूंकि हम पॉलबैक निचले स्तर के आसपास लंबी स्थिति ले रहे हैं, इसलिए यदि समय पर नुकसान को काटने में असमर्थ हैं तो महत्वपूर्ण नुकसान हो सकते हैं। इसके अलावा, यदि पॉलबैक रेंज छोटी है, तो स्टॉप लॉस बहुत तंग सेट किया गया है, तो इसे रोक दिया जा सकता है। इस प्रकार यह रणनीति अल्पकालिक व्यापार के लिए अधिक पसंद की जाती है, जिसके लिए बाजार के करीब ध्यान देने और समय पर स्टॉप लॉस की आवश्यकता होती है।
सिग्नल सटीकता और रणनीति स्थिरता में सुधार के लिए अन्य तकनीकी संकेतकों को शामिल किया जा सकता है, जैसे कि एमएसीडी गोल्ड क्रॉस पर प्रवेश करना, या प्रवेश से पहले विशिष्ट मूल्य समर्थन स्तर पर है। इसके अलावा, इष्टतम पैरामीटर सेट खोजने के लिए विभिन्न उत्पादों और समय सीमाओं में आगे का अनुकूलन किया जा सकता है। स्वचालित पैरामीटर ट्यूनिंग के लिए मशीन लर्निंग तकनीकों का भी लाभ उठाया जा सकता है।
संक्षेप में, यह एक विशिष्ट अल्पकालिक ब्रेकआउट पुलबैक लंबी रणनीति है। यह पुलबैक के बाद डाउनसाइड गैप के मजबूत पैटर्न के बाद रिबाउंड अवसर को पकड़ती है। लेकिन यह समय पर नुकसान में कटौती करने में विफल रहने पर भारी नुकसान का जोखिम भी उठाता है। अनुकूल परिणामों के लिए लगातार बाजार निगरानी की आवश्यकता होती है। अधिक संकेतकों और पैरामीटर अनुकूलन के साथ फ़िल्टरिंग संकेतों के माध्यम से आगे सुधार किए जा सकते हैं।
/*backtest start: 2024-01-22 00:00:00 end: 2024-02-21 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 // Created by Leon Ross //study(title="OutsideDownOpenLower", shorttitle="ODOL", overlay=true) strategy(title = "Outside", shorttitle = "OB", overlay = true ) //Window of time //start = timestamp(2018, 01, 01, 00, 00) // backtest start window //finish = timestamp(2018, 12, 31, 23, 59) // backtest finish window //window() => time >= start and time <= finish ? true : false // create function "within window of time" //Conditions outsideBar = low < low[1] and high > high[1] and close < open allConditions = outsideBar //Stop and Take Profit as percentages //inpTakeProfit = input(2, title='Take Profit %', type=float)/100 //takeProfitValue = strategy.position_avg_price * (1 + inpTakeProfit) //useTakeProfit = inpTakeProfit > 0 ? takeProfitValue : na //inpStopLoss = input(1, title='Stop Loss %', type=float)/100 //stopLossValue = strategy.position_avg_price * (1 - inpStopLoss) //useStopLoss = inpStopLoss > 0 ? stopLossValue : na //entry = strategy.position_avg_price //Stop as last bars low and profit as percentage entry = strategy.position_avg_price inpTakeProfit = input(2.0, title='Take Profit %', type=float)/100 takeProfitValue = strategy.position_avg_price * (1 + inpTakeProfit) useTakeProfit = inpTakeProfit > 0 ? takeProfitValue : na inpStopLoss = valuewhen(allConditions, low, 0) stopLossValue = inpStopLoss useStopLoss = inpStopLoss > 0 ? stopLossValue : na //Plots bgcolor(allConditions ==1 ? aqua : na, transp=70) plot(entry, color=blue, style=linebr, linewidth=2) plot(useStopLoss, color=red, style=linebr, linewidth=2) plot(useTakeProfit, color=green, style=linebr, linewidth=2) //Entires strategy.entry(id = "Long", long = true, when = allConditions) // use function or simple condition to decide when to get in //Exits //if (barssince(allConditions) == 2) //strategy.close("Long") //else strategy.exit("Exit Long", from_entry = "Long", stop = useStopLoss)