पैराबोलिक एसएआर ट्रेंड ट्रैकिंग स्टॉप लॉस रिवर्सल रणनीति एक रणनीति है जो ट्रेंड की पहचान करने के लिए पैराबोलिक एसएआर संकेतक का उपयोग करती है और ट्रेंड रिवर्स होने पर काउंटर ट्रेंड पोजीशन में प्रवेश करती है। रणनीति में जोखिम को नियंत्रित करने के लिए स्टॉप लॉस और लाभ लेने के तंत्र भी शामिल हैं।
रणनीति वर्तमान बाजार की प्रवृत्ति का न्याय करने के लिए पैराबोलिक एसएआर संकेतक का उपयोग करती है। पैराबोलिक एसएआर
जब एसएआर अंक गिर रहे हैं और कीमत से नीचे हैं, तो यह एक तेजी की प्रवृत्ति का प्रतिनिधित्व करता है; जब एसएआर अंक बढ़ रहे हैं और कीमत से ऊपर हैं, तो यह एक मंदी की प्रवृत्ति का प्रतिनिधित्व करता है। रणनीति एसएआर अंक
विशेष रूप से, जब एसएआर अंक एक अपट्रेंड दिखाते हैं और कीमतों से ऊपर होते हैं, तो रणनीति शॉर्ट जाएगी; जब एसएआर अंक एक डाउनट्रेंड दिखाते हैं और कीमतों से नीचे होते हैं, तो रणनीति लंबी होगी। जब एसएआर अंक प्रवृत्ति उलट का संकेत देते हैं तो यह काउंटर ट्रेंड पोजीशन में प्रवेश कर रहा है।
इसके अलावा, रणनीति स्टॉप लॉस और ले लाभ तंत्र भी निर्धारित करती है। जब लंबी जाती है, तो यह नुकसान को सीमित करने के लिए स्टॉप लॉस मूल्य निर्धारित कर सकती है; साथ ही, यह एक निश्चित लक्ष्य लाभ तक पहुंचने के बाद पदों को बंद करने के लिए लाभ मूल्य निर्धारित कर सकती है। शॉर्ट जाना समान है।
प्रवृत्ति संकेतक और स्टॉप लॉस/टेक प्रॉफिट तंत्र के संयोजन के मुख्य लाभ निम्नलिखित हैंः
इस रणनीति के लिए कुछ जोखिम भी ध्यान देने योग्य हैंः
इन जोखिमों को पैरामीटर अनुकूलन, अन्य फिल्टर संकेतकों आदि का उपयोग करके हल किया जा सकता है।
इस रणनीति को निम्नलिखित पहलुओं में अनुकूलित किया जा सकता हैः
सामान्य तौर पर, यह एक काफी क्लासिक ट्रेंड ट्रैकिंग स्टॉप लॉस रिवर्स रणनीति है। यह ट्रेंड रिवर्स की पहचान करता है और स्टॉप लॉस और टेक प्रॉफिट के माध्यम से जोखिमों को भी नियंत्रित करता है। अनुकूलन के बाद यह लाइव ट्रेडिंग के लिए एक सार्थक रणनीति बन सकती है।
/*backtest start: 2024-01-24 00:00:00 end: 2024-01-31 00:00:00 period: 30m basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Parabolic SAR Strategy", overlay=true) start = input(0.02) increment = input(0.02) maximum = input(0.2) var bool uptrend = na var float EP = na var float SAR = na var float AF = start var float nextBarSAR = na if bar_index > 0 firstTrendBar = false SAR := nextBarSAR if bar_index == 1 float prevSAR = na float prevEP = na lowPrev = low[1] highPrev = high[1] closeCur = close closePrev = close[1] if closeCur > closePrev uptrend := true EP := high prevSAR := lowPrev prevEP := high else uptrend := false EP := low prevSAR := highPrev prevEP := low firstTrendBar := true SAR := prevSAR + start * (prevEP - prevSAR) if uptrend if SAR > low firstTrendBar := true uptrend := false SAR := max(EP, high) EP := low AF := start else if SAR < high firstTrendBar := true uptrend := true SAR := min(EP, low) EP := high AF := start if not firstTrendBar if uptrend if high > EP EP := high AF := min(AF + increment, maximum) else if low < EP EP := low AF := min(AF + increment, maximum) if uptrend SAR := min(SAR, low[1]) if bar_index > 1 SAR := min(SAR, low[2]) else SAR := max(SAR, high[1]) if bar_index > 1 SAR := max(SAR, high[2]) nextBarSAR := SAR + AF * (EP - SAR) if barstate.isconfirmed if uptrend strategy.entry("ParSE", strategy.short, stop=nextBarSAR, comment="ParSE") strategy.cancel("ParLE") else strategy.entry("ParLE", strategy.long, stop=nextBarSAR, comment="ParLE") strategy.cancel("ParSE") plot(SAR, style=plot.style_cross, linewidth=3, color=color.orange) plot(nextBarSAR, style=plot.style_cross, linewidth=3, color=color.aqua) //Stop Loss Inputs use_short_stop_loss = input(false, title="Short Stop Loss", group="Stop Loss and Take Profit", inline="Short_SL") short_stop_loss = input(title="(%)", type=input.float, minval=0.0, step=0.1, defval=5, group="Stop Loss and Take Profit", inline="Short_SL") * 0.01 use_long_stop_loss = input(false, title="Long Stop Loss", group="Stop Loss and Take Profit", inline="Long_SL") long_stop_loss = input(title="(%)", type=input.float, minval=0.0, step=0.1, defval=5, group="Stop Loss and Take Profit", inline="Long_SL") * 0.01 //Take Profit Inputs use_short_take_profit = input(false, title="Short Take Profit", group="Stop Loss and Take Profit", inline="Short_TP") short_take_profit = input(title="(%)", type=input.float, minval=0.0, step=0.1, defval = 20, group="Stop Loss and Take Profit", inline="Short_TP") * .01 use_long_take_profit = input(false, title="Long Take Profit", group="Stop Loss and Take Profit", inline="Long_TP") long_take_profit = input(title="(%)", type=input.float, minval=0.0, step=0.1, defval = 20, group="Stop Loss and Take Profit", inline="Long_TP") * .01 longStopPrice = strategy.position_avg_price * (1 - long_stop_loss) shortStopPrice = strategy.position_avg_price * (1 + short_stop_loss) longLimitPrice = strategy.position_avg_price * (1 + long_take_profit) shortLimitPrice = strategy.position_avg_price * (1 - short_take_profit) if (strategy.position_size > 0.0) if (use_long_stop_loss and not use_long_take_profit) strategy.exit("Long", stop = longStopPrice) if (use_long_take_profit and not use_long_stop_loss) strategy.exit("Long", limit = longLimitPrice) if (use_long_take_profit and use_long_stop_loss) strategy.exit("Long", stop = longStopPrice, limit=longLimitPrice) if (strategy.position_size < 0.0) if (use_short_stop_loss and not use_short_take_profit) strategy.exit("Short", stop = shortStopPrice) if (use_short_take_profit and not use_short_stop_loss) strategy.exit("Short", limit = shortLimitPrice) if (use_short_take_profit and use_short_stop_loss) strategy.exit("Short", stop = shortStopPrice, limit = shortLimitPrice) //plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)