एल्गोरिथ्म आरएसआई रेंज ब्रेकआउट रणनीति

लेखक:चाओझांग, दिनांक: 2023-10-17 17:14:09
टैगः

img

अवलोकन

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

रणनीति तर्क

  1. आरएसआई अवधि को 14 पर सेट करें

  2. आरएसआई खरीद संकेत सीमाएँ सेट करें:

    • रेंज 1: आरएसआई <= 27
    • रेंज 2: आरएसआई <= 18
  3. आरएसआई बेचने के संकेत की सीमाएँ सेट करें:

    • रेंज 1: आरएसआई >= 68
    • रेंज 2: आरएसआई >= 80
  4. जब आरएसआई खरीद सीमा में प्रवेश करता है, लंबे जाओः

    • यदि आरएसआई सीमा 1 (27 से नीचे) में प्रवेश करता है, तो 1 लॉट के लिए लंबा करें
    • यदि आरएसआई सीमा 2 में प्रवेश करता है (18 से नीचे), तो अतिरिक्त लॉन्ग 1 लॉट चलाएं
  5. जब आरएसआई बेचने की सीमा में प्रवेश करता है, शॉर्ट जाएंः

    • यदि आरएसआई सीमा 1 (68 से ऊपर) में प्रवेश करता है, तो 1 लॉट शॉर्ट करें
    • यदि आरएसआई सीमा 2 (80 से ऊपर) में प्रवेश करता है, तो अतिरिक्त शॉर्ट 1 लॉट पर जाएं
  6. 2500 पिप्स पर लाभ लेने और 5000 पिप्स पर हानि रोकने के लिए निर्धारित करें

  7. जब आरएसआई सिग्नल रेंज से बाहर निकलता है तो स्थिति को बंद करें

लाभ विश्लेषण

  1. डबल रेंज सेटिंग अधिक खरीदे गए और अधिक बेचे गए स्थितियों को बेहतर ढंग से पहचानने में मदद करती है, जिससे रिवर्स के अवसरों को खोने से बचा जाता है

  2. पिप्स में फिक्स्ड टेक प्रॉफिट और स्टॉप लॉस को अपनाने से रुझानों का बहुत अधिक पीछा करने से बचा जाता है

  3. आरएसआई एक परिपक्व ऑसिलेटर है जो अन्य संकेतकों के मुकाबले फायदे के साथ ओवरबॉट और ओवरसोल्ड स्तरों की पहचान करता है

  4. उचित पैरामीटर ट्यूनिंग के साथ, यह रणनीति प्रभावी रूप से प्रवृत्ति उलट बिंदुओं को पकड़ सकती है और अतिरिक्त रिटर्न उत्पन्न कर सकती है

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

  1. आरएसआई विचलन हो सकता है जिसके कारण लगातार शॉर्ट पोजीशन से लगातार नुकसान हो सकता है

  2. फिक्स्ड टेक प्रॉफिट और स्टॉप लॉस बाजार की अस्थिरता से मेल नहीं खा सकते हैं, लाभ प्राप्त करने में असमर्थ या समय से पहले बंद हो सकते हैं

  3. अनुचित सीमा निर्धारण से व्यापारों में चूक या लगातार लाभहीन व्यापार हो सकते हैं

  4. यह रणनीति बैकटेस्ट के आधार पर पैरामीटर अनुकूलन पर बहुत निर्भर करती है। सावधानीपूर्वक वॉक-फॉरवर्ड विश्लेषण की आवश्यकता है।

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

  1. विभिन्न अवधि की लंबाई के साथ आरएसआई की परीक्षण प्रभावशीलता

  2. विभिन्न उत्पादों की विशेषताओं के अनुरूप खरीदने और बेचने के दायरे के मूल्यों को अनुकूलित करना

  3. लाभप्रदता और उचितता में सुधार के लिए लाभ और हानि रोकने के लिए अनुसंधान गतिशीलता

  4. स्थिरता में सुधार के लिए सामूहिक व्यापार के लिए अन्य संकेतकों को जोड़ने पर विचार करें

  5. स्थिरता के लिए पैरामीटर रेंज को स्वचालित रूप से अनुकूलित करने के लिए मशीन लर्निंग तकनीकों का अन्वेषण करें

निष्कर्ष

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


/*backtest
start: 2023-09-16 00:00:00
end: 2023-10-16 00:00:00
period: 1h
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/
// © Rawadabdo

// Ramy's Algorithm

//@version=5
strategy("BTC/USD - RSI", overlay=false, initial_capital = 5000)

// User input
length = input(title = "Length", defval=14, tooltip="RSI period")

first_buy_level = input(title = "Buy Level 1", defval=27, tooltip="Level where 1st buy triggers")
second_buy_level = input(title = "Buy Level 2", defval=18, tooltip="Level where 2nd buy triggers")

first_sell_level = input(title = "Sell Level 1", defval=68, tooltip="Level where 1st sell triggers")
second_sell_level = input(title = "Sell Level 2", defval=80, tooltip="Level where 2nd sell triggers")

takeProfit= input(title="target Pips", defval=2500, tooltip="Fixed pip stop loss distance")
stopLoss = input(title="Stop Pips", defval=5000, tooltip="Fixed pip stop loss distance")

lot = input(title = "Lot Size", defval = 1, tooltip="Trading Lot size")

// Get RSI
vrsi = ta.rsi(close, length)

// Entry Conditions
long1 = (vrsi <= first_buy_level and vrsi>second_buy_level)
long2 = (vrsi <= second_buy_level)

short1= (vrsi >= first_sell_level and vrsi<second_sell_level)
short2= (vrsi >= second_sell_level)


// Entry Orders
// Buy Orders
if (long1 and strategy.position_size == 0)
    strategy.entry("Long", strategy.long, qty=lot, comment="Buy")
    if (long2 and  strategy.position_size == 0)
        strategy.entry("Long", strategy.long, qty=lot, comment="Buy")

// Short Orders
if (short1 and strategy.position_size == 0)
    strategy.entry("Short", strategy.short,qty=lot, comment="Sell")
    if (short2 and strategy.position_size == 0)
        strategy.entry("Short", strategy.short,qty=lot, comment="Sell")
    
// Exit our trade if our stop loss or take profit is hit
strategy.exit(id="Long Exit", from_entry="Long",qty = lot, profit=takeProfit, loss=stopLoss)
strategy.exit(id="Short Exit", from_entry="Short", qty = lot, profit=takeProfit, loss=stopLoss)

// plot data to the chart
hline(first_sell_level, "Overbought Zone", color=color.red, linestyle=hline.style_dashed, linewidth = 2)
hline(second_sell_level, "Overbought Zone", color=color.green, linestyle=hline.style_dashed, linewidth = 2)
hline(first_buy_level, "Oversold Zone", color=color.red, linestyle=hline.style_dashed, linewidth = 2)
hline(second_buy_level, "Oversold Zone", color=color.green, linestyle=hline.style_dashed, linewidth = 2)
plot (vrsi, title = "RSI", color = color.blue, linewidth=2)





अधिक