अंतिम N कैंडलस्टिक्स के लिए रिवर्स लॉजिक रणनीति


निर्माण तिथि: 2023-12-26 11:00:29 अंत में संशोधित करें: 2023-12-26 11:00:29
कॉपी: 1 क्लिक्स: 696
1
ध्यान केंद्रित करना
1623
समर्थक

अंतिम N कैंडलस्टिक्स के लिए रिवर्स लॉजिक रणनीति

अवलोकन

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

रणनीति सिद्धांत

यह रणनीति मुख्य रूप से निम्नलिखित महत्वपूर्ण मापदंडों पर निर्भर करती हैः

  1. numCandlesToCheck: जांच की जाने वाली K लाइनों की संख्या निर्दिष्ट करने के लिए उपयोग किया जाता है
  2. numCandlesToExit: स्थिति रखने के बाद बाहर निकलने के लिए आवश्यक K लाइनों की संख्या निर्दिष्ट करें
  3. inverseLogic: उलटा तर्क के लिए पैरामीटर, वास्तविक समय के लिए मूल बहु-स्थानिक तर्क के विपरीत

कुंजी तर्क यह है कि for चक्र के माध्यम से निकटतम numCandlesToCheck केवल K लाइनों को पार करें और वास्तविक समय में हरे रंग की K लाइनों और लाल K लाइनों की संख्या की गणना करें। यदि लगातार लाल K लाइन ≥numCandlesToCheck तो lastNCandlesRed को सही के रूप में चिह्नित करें। यदि लगातार हरे रंग की K लाइन ≥numCandlesToCheck तो lastNCandlesGreen को सही के रूप में चिह्नित करें।

जब lastNCandlesGreen सच है, तो यदि inverseLogic तर्क झूठा है, तो अधिक करें; यदि सच है, तो शून्य करें। इसके विपरीत, जब lastNCandlesRed सच है, तो यदि inverseLogic तर्क झूठा है, तो शून्य करें; यदि सच है, तो अधिक करें।

कोई भी अतिरिक्त शून्य, barsSinceEntry काउंटर को स्थिति खोलने के बाद 0 पर रीसेट किया जाता है। जब barsSinceEntry अधिक से अधिक होता है, तो यह वर्तमान स्थिति को समतल कर देता है।

श्रेष्ठता विश्लेषण

यह एक दिलचस्प रणनीति है जो K-लाइन रंग निर्णय का उपयोग करती है, और इसमें एक पहेली उलटा लॉजिक पहेली पैरामीटर शामिल है, जो एक लॉजिक है जिसे आप लचीले ढंग से अनुकूलित कर सकते हैं। इसके मुख्य लाभ हैंः

  1. एक नई सोच जो आम बाज़ार के तर्क के विपरीत निवेश कर सकती है
  2. कोड स्पष्ट, संक्षिप्त, समझने और संशोधित करने में आसान
  3. ऑप्टिमाइज़ेशन के लिए पैरामीटर को समायोजित करें
  4. इस रणनीति को जारी रखा जा सकता है, चाहे जो भी हो

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

इस रणनीति के कुछ जोखिम भी हैं, जिनके बारे में ध्यान देने की आवश्यकता हैः

  1. K-लाइन का रंग पूरी तरह से स्थिति का प्रतिनिधित्व नहीं करता है, जो गलत संकेतों की संभावना को ट्रैक करता है
  2. NumCandlesToCheck के लिए इष्टतम मान निर्धारित नहीं किया जा सका
  3. NumCandlesToExit के लिए अधिकतम मान निर्धारित नहीं किया जा सका
  4. रिवर्स लॉजिक पैरामीटर को गलत तरीके से सेट करने से नुकसान बढ़ सकता है
  5. एकल रोक को प्रभावी ढंग से नियंत्रित करने में असमर्थता

उपरोक्त जोखिमों को नियंत्रित और अनुकूलित करने के लिए निम्नलिखित उपाय किए जा सकते हैंः

  1. अन्य फ़िल्टर जोड़े गए हैं ताकि गलत संकेतों से बचा जा सके, जैसे कि प्रवृत्ति का आकलन बढ़ाया गया है
  2. विभिन्न मापदंडों के माध्यम से मूल्य लेने के लिए सबसे अच्छा संयोजन खोजने के लिए
  3. एकल हानि को नियंत्रित करने के लिए स्टॉप लॉस तंत्र में शामिल होना
  4. रिवर्स लॉजिक पैरामीटर की वैधता की जाँच करें

अनुकूलन दिशा

इस रणनीति को मुख्य रूप से निम्नलिखित दिशाओं में अनुकूलित किया जा सकता हैः

  1. स्टॉक मूल्य निर्धारण को बढ़ाएं और धोखाधड़ी से बचें
  2. NumCandlesToCheck और numCandlesToExit ऑप्टिमाइज़ करें
  3. महाचक्र रुझान सूचक के साथ गलत संकेतों को फ़िल्टर करना
  4. स्टॉप लॉस और स्टॉप स्टॉप रणनीतियों में शामिल हों
  5. विभिन्न किस्मों के लिए सत्यापन रणनीतियों की प्रभावशीलता का पता लगाना
  6. मूल तर्क और रिवर्स तर्क की तुलना में रिटर्न दर

संक्षेप

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

रणनीति स्रोत कोड
/*backtest
start: 2022-12-25 00:00:00
end: 2023-12-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Last Number of  Candles", overlay=true)

// Define the condition for a green candle
isGreenCandle(candle) =>
    close[candle] > open[candle]

// Define the condition for a red candle
isRedCandle(candle) =>
    close[candle] < open[candle]

// Input to specify the number of candles to check
numCandlesToCheck = input(5, title="Number of Candles to Check")
numCandlesToExit = input(2, title="Number of Candles To Exit")  // Corrected the input title

// Initialize variables to count consecutive green and red candles
var int consecutiveGreenCandles = 0
var int consecutiveRedCandles = 0

// Initialize barsSinceEntry outside the loop
var int barsSinceEntry = 0

// Loop through the last "numCandlesToCheck" candles
for i = 0 to numCandlesToCheck - 1
    if isGreenCandle(i)
        consecutiveGreenCandles := consecutiveGreenCandles + 1
        consecutiveRedCandles := 0 // Reset the count for consecutive red candles
    else if isRedCandle(i)
        consecutiveRedCandles := consecutiveRedCandles + 1
        consecutiveGreenCandles := 0 // Reset the count for consecutive green candles

// Check if the last "numCandlesToCheck" candles are green or red
lastNCandlesGreen = consecutiveGreenCandles >= numCandlesToCheck
lastNCandlesRed = consecutiveRedCandles >= numCandlesToCheck

// Calculate the quantity based on the investment value and current asset price
investmentValue = input(10000, title="Investment Value")
var assetPrice = close
var quantity = investmentValue / assetPrice


inverseLogic = input(false, title="inverseLogic")

// Entry condition: Open a buy order if the last "numCandlesToCheck" candles are green
if lastNCandlesGreen
    if inverseLogic
        strategy.entry("Short", strategy.long, qty = quantity)
    else 
        strategy.entry("Buy", strategy.long, qty = quantity)// Reset barsSinceEntry when entering a trade
    barsSinceEntry := 0

// Entry condition: Open a short order if the last "numCandlesToCheck" candles are red
if lastNCandlesRed
    if inverseLogic
        strategy.entry("Buy", strategy.long, qty = quantity)

    else 
        strategy.entry("Short", strategy.short, qty = quantity)
    // Reset barsSinceEntry when entering a trade
    barsSinceEntry := 0

// Increment barsSinceEntry
barsSinceEntry := barsSinceEntry + 1

// Exit condition: Close the position after 2 bars
if barsSinceEntry >= numCandlesToExit
    strategy.close("Buy")
    strategy.close("Short")