ऑसिलेटिंग स्टॉप लॉस के साथ रिवर्सल क्लोजिंग प्राइस ब्रेकआउट रणनीति

लेखक:चाओझांग, दिनांक: 2023-12-11 11:44:49
टैगः

img

अवलोकन

यह रणनीति जोखिम प्रबंधन के लिए मूल्य ब्रेकआउट संकेतों और दोलन स्टॉप लॉस तंत्र का उपयोग करती है। जब कीमत प्रतिरोध को तोड़ती है तो यह लंबी जाती है और जब कीमत समर्थन को तोड़ती है तो यह छोटी हो जाती है। उसी समय, बेहतर जोखिम नियंत्रण के लिए दोलन स्टॉप लॉस और लाभ लेने वाले स्टॉप लागू किए जाते हैं।

रणनीति तर्क

यह रणनीति निम्नलिखित मुख्य बिंदुओं पर आधारित हैः

  1. प्रवृत्ति की दिशा निर्धारित करने के लिए एमए का उपयोग करना। तेज और धीमी एमए को ग्राफ किया जाता है, धीमी एमए के ऊपर तेजी से एमए पार करने से तेजी की प्रवृत्ति का संकेत मिलता है, जबकि संकेतों के नीचे पार करने से मंदी की प्रवृत्ति होती है।

  2. प्रतिरोध ब्रेकआउट लॉन्ग सिग्नल. जब कीमत बढ़ जाती है और हाल ही में स्विंग हाई को तोड़ती है, तो इसे प्रतिरोध स्तर को तोड़ने, लंबी होने के रूप में माना जाता है.

  3. समर्थन ब्रेकआउट शॉर्ट सिग्नल. जब कीमत गिरती है और हाल ही में स्विंग लो को तोड़ती है, तो इसे समर्थन स्तर को तोड़ने, शॉर्ट जाने के रूप में माना जाता है.

  4. अस्थिर स्टॉप लॉस. प्रवेश के बाद, स्टॉप लॉस लाइन सेट की जाती है और मूल्य उतार-चढ़ाव के आधार पर समायोजित होती रहती है, जिससे एक अस्थिर स्टॉप लॉस तंत्र बनता है.

  5. स्टॉप लॉस और ले लो लाभ बाहर. स्टॉप लॉस बाहर जोखिम नियंत्रण, ले लो लाभ लाभ में लॉक.

विशेष रूप से, यह स्रोत के रूप में उच्च और निम्न कीमतों के औसत का उपयोग करता है, रुझानों को निर्धारित करने के लिए तेज़ और धीमी ईएमए को प्लॉट करता है। जब तेज़ ईएमए धीमी ईएमए से ऊपर जाता है और प्रतिरोध ब्रेकआउट संकेत सामने आता है, तो यह लंबा हो जाता है। जब तेज़ ईएमए धीमी ईएमए से नीचे गिरता है और समर्थन ब्रेकआउट दिखाई देता है, तो यह छोटा हो जाता है। प्रवेश के बाद, कुछ अवधियों में सबसे कम कीमत स्टॉप लॉस लाइन के रूप में सेट की जाती है, कीमत बढ़ने के साथ समायोजित होती रहती है। लाभ लेने की रेखा लाभ में लॉक करने के लिए प्लॉट की जाती है। रणनीति प्रभावी रूप से जोखिम को नियंत्रित करती है जबकि रुझानों से लाभ होता है।

लाभ विश्लेषण

इस रणनीति के लाभों में निम्नलिखित शामिल हैंः

  1. स्थिर लाभप्रदता. रुझानों का अनुसरण करने से दीर्घकालिक रुझानों से स्थिर लाभ हो सकता है.

  2. उत्कृष्ट जोखिम नियंत्रण. दोलन रोक और सुरक्षात्मक रोक तेजी से नुकसान को कम करती है.

  3. सटीक संकेत प्रतिरोध ब्रेकआउट लंबा और समर्थन ब्रेकआउट छोटा विश्वसनीय संकेत प्रदान करते हैं।

  4. सरल नियम। संकेत और संकेत सीधे हैं, उनका पालन करना आसान है।

  5. विभिन्न उत्पादों और बाजार स्थितियों में अच्छी तरह से काम करता है।

जोखिम विश्लेषण

इस रणनीति के लिए कुछ जोखिमों पर ध्यान देंः

  1. ब्रेकआउट विफलता का जोखिम. प्रारंभिक ब्रेकआउट के बाद कीमत में रिटर्न या पॉलबैक हो सकता है, जिससे स्टॉप लॉस ट्रिगर हो सकता है.

  2. पैरामीटर अनुकूलन जोखिम. खराब पैरामीटर ट्यूनिंग बहुत अधिक या बहुत कम संकेतों की ओर जाता है. अनुकूलन को सावधानी की आवश्यकता होती है.

  3. अत्यधिक परिस्थितियों में ईएमए काम करना बंद कर सकते हैं या कीमत में पिछड़ सकते हैं।

  4. रुझान उलटने का जोखिम रुझान के विपरीत स्थिति रखने से रुझान उलटने पर घाटे का संचय होता है।

उचित पैरामीटर ट्यूनिंग, व्यापक स्टॉप लॉस, नियमों का सख्ती से पालन ऊपर जोखिमों को काफी हद तक कम कर सकता है।

अनुकूलन दिशाएँ

इस रणनीति में निम्नलिखित पहलुओं से और सुधार किया जा सकता हैः

  1. समय-सीमा अनुकूलन. एमए और मूल्य पैटर्न की गणना की अवधि को समायोजित करें, सर्वोत्तम संयोजन खोजें।

  2. अनुकूलन क्षमता अनुकूलन विभिन्न उत्पादों के लिए मापदंडों को समायोजित करें।

  3. स्टॉप लॉस अनुकूलन. अधिक उन्नत स्टॉप लॉस विधियों जैसे ट्रेलिंग स्टॉप, चांडिलियर स्टॉप का परीक्षण करें.

  4. लाभ अनुकूलन को लें. बेहतर इनाम के लिए अनुकूलन या घातीय लाभ लेने से बाहर निकलें।

  5. फ़िल्टर जोड़ें. झूठे ब्रेकआउट से बचने के लिए वॉल्यूम, अस्थिरता फ़िल्टर जोड़ें.

  6. प्रवेश संकेतों को बढ़ाएं. प्रविष्टियों की पुष्टि करने के लिए अधिक संकेतकों या पैटर्न को मिलाएं.

निष्कर्ष

यह एक प्रभावी ब्रेकआउट रणनीति है जिसमें अच्छा जोखिम नियंत्रण, स्थिर लाभ मॉडल और सीधा तर्क प्रवाह है। ठीक-सुधार और मॉड्यूलर वृद्धि इसे अधिक मजबूत और जटिल बाजारों के लिए अनुकूलनशील बना सकती है। इसमें अधिक उत्पादों में महान अनुप्रयोग क्षमताएं हैं।


/*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)


अधिक