
इस रणनीति में प्रतिरोध के माध्यम से मूल्य आकार के संकेतों और लूप ब्रेक के जोखिम नियंत्रण तंत्र का उपयोग किया जाता है। यह प्रतिरोध के माध्यम से तोड़ने के बाद अधिक स्थिति बनाता है, समर्थन के माध्यम से तोड़ने के बाद स्थिति को खाली करता है। साथ ही लूप ब्रेक और स्टॉप के साथ, जोखिम को प्रभावी ढंग से नियंत्रित करता है।
यह रणनीति मुख्य रूप से निम्नलिखित बातों पर आधारित हैः
औसत रेखा का उपयोग करके प्रवृत्ति की दिशा का आकलन करें। रणनीति में एक तेज़ और धीमी औसत रेखा सेट करें, तेज लाइन पर धीमी लाइन को पार करना लंबी लाइन को ऊपर की ओर और लंबी लाइन को नीचे की ओर देखना है।
प्रतिरोध को तोड़ने के लिए अधिक संकेत दें। जब कीमतें बढ़कर हाल की ऊंचाइयों को तोड़ती हैं, तो प्रतिरोध को तोड़ने के संकेत के रूप में माना जाता है और अधिक प्रवेश किया जाता है।
समर्थन को तोड़ने के लिए एक संकेत। जब कीमतें हाल के निचले स्तर को तोड़ती हैं, तो इसे समर्थन को तोड़ने का संकेत माना जाता है।
लूप स्टॉप सेट करें. स्टॉप लाइन को प्रवेश के बाद सेट करें और स्टॉप लाइन के चारों ओर कीमतों को चलाने के लिए कीमतों में उतार-चढ़ाव के साथ समायोजित करें।
स्टॉप लॉस और स्टॉप आउटेज. स्टॉप लॉस और स्टॉप आउटेज जोखिम को प्रभावी ढंग से नियंत्रित करते हैं, और स्टॉप आउटेज लाभ को लॉक करते हैं।
विशेष रूप से, इस रणनीति में कीमतों के स्रोत के रूप में उच्च और निम्न कीमतों के औसत का उपयोग किया जाता है, और तेजी से ईएमए की गणना की जाती है ताकि प्रवृत्ति की दिशा निर्धारित की जा सके। जब तेज लाइन धीमी लाइन को पार करती है और प्रतिरोध तोड़ने का संकेत देती है, तो अधिक करें, और जब तेज लाइन धीमी लाइन को पार करती है और समर्थन तोड़ने का संकेत देती है, तो खाली करें। प्रवेश के बाद, एक निश्चित अवधि के भीतर सबसे कम कीमत को स्टॉप लॉस के रूप में लें, और कीमतों में वृद्धि के साथ समायोजन करें, स्टॉप लॉकिंग लाइन सेट करें। जोखिम को प्रभावी ढंग से नियंत्रित करते हुए प्रवृत्ति में लाभ प्राप्त करें।
इस रणनीति के कुछ फायदे हैंः
लाभ स्थिरता. प्रवृत्ति का पालन करें, सूचकांक स्तर पर लंबी रेखा प्रवृत्ति में लाभ कमाने के लिए।
अच्छी तरह से नियंत्रित जोखिम. एक चक्र के साथ रोक और रोकना, समय पर रोकना और बाहर निकलना।
सिग्नल सटीक. प्रतिरोध बिंदु के माध्यम से अधिक और समर्थन बिंदु के माध्यम से खाली, सिग्नल सटीक और विश्वसनीय है.
सरल और आसान संचालन. संकेतक और सिग्नल नियम सरल और स्पष्ट हैं, और पैरामीटर सेट करना जटिल नहीं है.
बाजार के लिए अनुकूल। विभिन्न किस्मों और किसी भी बाजार की स्थिति में काम करने में सक्षम।
इस रणनीति के कुछ जोखिम भी हैं, जिनके बारे में ध्यान देने की आवश्यकता हैः
टूटने की विफलता का जोखिम। प्रतिरोध समर्थन के टूटने के बाद एक रिड्यूस और पुनः प्रयास हो सकता है, जिससे क्षतिग्रस्त हो सकता है।
पैरामीटर अनुकूलन जोखिम. गलत पैरामीटर सेटिंग से सिग्नल बार-बार या कम हो सकता है. अनुकूलन प्रक्रिया में सावधानी बरतने की आवश्यकता है.
संकेतकों के विफल होने का खतरा। विशेष बाजार स्थितियों में, ईएमए संकेतकों को विफल या देरी हो सकती है।
रुझान में बदलाव का जोखिम। अधिक से अधिक घाटा हो सकता है जब बाजार के विपरीत दिशा में कमोडिटी ट्रेडिंग होती है।
इन जोखिमों को काफी हद तक नियंत्रित और कम किया जा सकता है जैसे कि पैरामीटर अनुकूलन, उचित क्षतिपूर्ति, और संकेतों का सख्ती से पालन करना।
इस रणनीति को और अधिक अनुकूलित किया जा सकता हैः
समय चक्र अनुकूलन: औसत रेखा और मूल्य आकार की गणना करने के लिए समय चक्र पैरामीटर को समायोजित करना, सर्वोत्तम संयोजन की तलाश करना।
नस्ल अनुकूलन अनुकूलन. विभिन्न नस्लों की विशेषताओं के अनुसार पैरामीटर सेटिंग को समायोजित करें.
हानि को रोकने के लिए रणनीति का अनुकूलन करना। अधिक स्थिर और सटीक हानि को रोकने के तरीकों का उपयोग करना, जैसे कि चलती हानि, दोलन हानि आदि।
स्टॉप रणनीति का अनुकूलन करें। चलती स्टॉप या सूचकांक स्टॉप सेट करें ताकि लाभ अधिक हो सके।
फ़िल्टर की शर्तों को जोड़ना. फ़िल्टर की शर्तों को जोड़ना जैसे कि व्यापार की मात्रा, अस्थिरता, और झूठे ब्रेक को बाहर करना.
प्रवेश सिग्नल को मजबूत करना. प्रवेश सिग्नल की पुष्टि के रूप में अधिक संकेत या आकृति जोड़ना.
रणनीति समग्र रूप से सुचारू रूप से काम करती है, मुख्य विचार स्पष्ट हैं, मजबूत स्थिरता और मुनाफे की क्षमता है। जोखिम नियंत्रण और संकेतक का उपयोग करना भी उचित है, यह उपयोग करने के लिए एक महत्वपूर्ण वर्गीकरण रणनीति है। बाद में पैरामीटर और मॉड्यूल के माध्यम से अनुकूलन, रणनीति को अधिक विविधता और जटिल बाजार की स्थिति के लिए अनुकूलित किया जा सकता है।
/*backtest
start: 2023-12-03 00:00:00
end: 2023-12-10 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © EduardoMattje
//@version=4
strategy("Reversal closing price", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10, initial_capital=10000)
src = input(hl2, "Price source")
order_direction = input("Both", "Order direction", options=["Both", "Long", "Short"])
// EMA calculation and plot
ema_long_period = input(80, "EMA long period")
ema_short_period = input(8, "EMA short period")
ema_long = ema(src, ema_long_period)
ema_short = ema(src, ema_short_period)
ema_bull = ema_short > ema_long
ema_bear = ema_short < ema_long
plot(ema_long, "EMA long", ema_bull ? color.green : color.red, 3)
plot(ema_short, "EMA short", ema_bull ? color.green : color.red, 3)
// Settings
risk_reward_ratio = input(2.0, "Risk to reward ratio", minval=1.0, step=0.1)
stop_lookback = input(3, "Stoploss candle lookback", minval=1)
ema_cross_stop = input(true, "Close if EMA crosses in oposite direction")
allow_retracing = input(true, "Allow price retracing")
// RCP calculation
rcp_bull = low[0] < low[1] and low[0] < low[2] and close[0] > close[1]
rcp_bear = high[0] > high[1] and high[0] > high[2] and close[0] < close[1]
// Order placement
in_market = strategy.position_size != 0
long_condition = rcp_bull and ema_bull and not in_market and order_direction != "Short"
short_condition = rcp_bear and ema_bear and not in_market and order_direction != "Long"
bought = strategy.position_size[0] > strategy.position_size[1] and strategy.position_size[1] == 0
sold = strategy.position_size[0] < strategy.position_size[1] and strategy.position_size[1] == 0
closed = not in_market and in_market[1]
long_position = strategy.position_size > 0
short_position = strategy.position_size < 0
buy_price = high + syminfo.mintick
sell_price = low - syminfo.mintick
if long_condition
strategy.entry("Long", true, stop=buy_price)
if short_condition
strategy.entry("Short", false, stop=sell_price)
if allow_retracing
better_price_long = barssince(closed) > barssince(long_condition) and barssince(long_condition) >= 1 and not in_market and ema_bull and buy_price < valuewhen(long_condition, buy_price, 0) and buy_price[0] < buy_price[1]
if better_price_long
strategy.cancel("Long")
strategy.entry("Long", true, stop=buy_price)
better_price_short = barssince(closed) > barssince(short_condition) and barssince(short_condition) >= 1 and not in_market and ema_bear and sell_price > valuewhen(short_condition, sell_price, 0) and sell_price[0] > sell_price[1]
if better_price_short
strategy.cancel("Short")
strategy.entry("Short", false, stop=sell_price)
// Stoploss orders
stop_price = long_position ? valuewhen(bought, lowest(stop_lookback)[1] - syminfo.mintick, 0) : short_position ? valuewhen(sold, highest(3)[1] + syminfo.mintick, 0) : na
stop_comment = "Stoploss triggered"
strategy.close("Long", low <= stop_price, stop_comment)
strategy.close("Short", high >= stop_price, stop_comment)
plot(stop_price, "Stop price", color.red, 2, plot.style_linebr)
// EMA cross close orders
if ema_cross_stop
if long_position and ema_bear
strategy.close("Long", comment=stop_comment)
if short_position and ema_bull
strategy.close("Short", comment=stop_comment)
// Take profit orders
stop_ticks = abs(strategy.position_avg_price - stop_price)
take_profit_price = long_position ? valuewhen(bought, strategy.position_avg_price + stop_ticks * risk_reward_ratio, 0) : short_position ? valuewhen(sold, strategy.position_avg_price - (stop_ticks * risk_reward_ratio), 0) : na
target_comment = "Take profit"
strategy.close("Long", high >= take_profit_price, target_comment)
strategy.close("Short", low <= take_profit_price, target_comment)
plot(take_profit_price, "Target price", color.green, 2, plot.style_linebr)