अनुकूलित बैकटेस्टिंग प्रारंभ समय रणनीति


निर्माण तिथि: 2023-09-26 20:53:15 अंत में संशोधित करें: 2023-09-26 20:53:15
कॉपी: 4 क्लिक्स: 651
1
ध्यान केंद्रित करना
1617
समर्थक

अवलोकन

इस नीति का उद्देश्य उपयोगकर्ताओं को अनुकूलित फीडबैक प्रारंभ समय की अनुमति देना है, जिससे अधिक लचीला और अनुकूलित फीडबैक प्राप्त किया जा सके।

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

इस रणनीति में पिन स्क्रिप्ट के time और timestamp फ़ंक्शंस का उपयोग करके कस्टमाइज़ किए गए फीडबैक स्टार्टअप समय को लागू किया गया है।

सबसे पहले, यह उपयोगकर्ता को सेटिंग्स में एक कस्टम रीसेट प्रारंभ वर्ष, महीने, दिनांक, घंटे और मिनट दर्ज करने देता है। फिर, यह इनपुट का उपयोग करके एक समय सारणी उत्पन्न करता है और इसे startTime चर में संग्रहीत करता है।

नीति की शर्तों में, यह एक नया startTime शर्त जोड़ता है। नीति केवल तभी शुरू होती है जब वर्तमान समय startTime से अधिक या बराबर हो।

उदाहरण के लिएः

longCondition = crossover(sma(close, 14), sma(close, 28)) 

if (longCondition and startTime) 

  strategy.entry("My Long Entry Id", strategy.long)

इस प्रकार, अनुकूलित प्रतिक्रिया प्रारंभ समय प्राप्त किया जा सकता है। उपयोगकर्ता को केवल हार्ड-कोडिंग समय तक ही सीमित नहीं है, बल्कि आवश्यकता के आधार पर प्रतिक्रिया शुरू करने के लिए लचीला कॉन्फ़िगरेशन हो सकता है।

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

इस तरह की अनुकूलित रीमेक स्टार्ट-अप रणनीति के निम्नलिखित फायदे हैं:

  1. अधिक लचीलापनः उपयोगकर्ता एक निश्चित समय पर प्रतिबंधित नहीं होने के बजाय पूरी तरह से कस्टम समय पर प्रतिक्रिया शुरू कर सकता है।

  2. अधिक यथार्थवादीः आप वास्तविक बाजार स्थितियों के करीब आने के लिए रणनीति के वास्तविक संचालन के समय के रूप में प्रतिगमन के प्रारंभ समय को सेट कर सकते हैं।

  3. सुविधाजनक घटना-संचालित प्रतिक्रियाः किसी घटना के समय के आधार पर स्टार्ट-अप समय सेट किया जा सकता है, ताकि विशिष्ट घटनाओं के लिए प्रतिक्रिया दी जा सके।

  4. शर्तों को आसानी से समायोजित करनाः यह बहुत आसानी से प्रतिक्रिया की शुरुआत की शर्तों को समायोजित कर सकता है, ताकि विभिन्न चरणों के लिए लक्षित प्रतिक्रिया की जा सके।

  5. दोहराए जाने योग्य विश्वसनीयता: बार-बार चलाने के लिए एक विश्वसनीय परिणाम प्राप्त करने के लिए प्रतिक्रिया के प्रारंभ समय को मापदंडित करें।

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

कस्टम फीडबैक प्रारंभ समय का उपयोग करने के साथ कुछ जोखिम भी हैंः

  1. प्रतिक्रिया समय पर निर्भर करता हैः अलग-अलग प्रारंभिक समय के कारण प्रतिक्रिया में काफी अंतर हो सकता है।

  2. स्टार्ट-अप समय को सावधानी से चुनेंः अनुचित स्टार्ट-अप समय के कारण प्रतिक्रिया में गड़बड़ी हो सकती है, जो वास्तविक स्थिति को प्रतिबिंबित नहीं कर सकती है।

  3. बढ़ी हुई वक्रता मिलान जोखिमः स्टार्टअप समय को समायोजित करके ऐतिहासिक डेटा को आसानी से मिलान किया जा सकता है, जिससे ओवरफिटिंग का जोखिम उत्पन्न होता है।

  4. कम परिणामों की तुलनाः इस रणनीति के परिणामों की तुलना फिक्स्ड स्टार्ट-अप समय के परिणामों से कम होती है।

समाधान के लिएः

  1. कई बार परीक्षण करें और परिणामों पर स्टार्ट-अप समय परिवर्तन के प्रभाव का आकलन करें।

  2. महत्वपूर्ण घटनाओं के समय को प्रारंभ समय के रूप में चुनें, और फिर से माप को कम करें।

  3. सावधानीपूर्वक स्टार्ट-अप समय को समायोजित करें ताकि ऐतिहासिक डेटा से अधिक मेल न खाए।

  4. एक निश्चित प्रारंभ समय की प्रतिक्रिया को एक मानक के रूप में सहेजें, और एक अनुकूलित प्रतिक्रिया के साथ तुलना करें।

अनुकूलन दिशा

इस कस्टम फीडबैक बूट समय रणनीति को निम्नलिखित पहलुओं से भी अनुकूलित किया जा सकता हैः

  1. प्रारंभ और समापन समय को अनुकूलित करने के लिए समर्थन, पूर्ण प्रतिक्रिया समय विंडो को लचीला बनाने के लिए।

  2. कई प्रकार के समय मोड का समर्थन करेंः विशिष्ट तिथि, सापेक्ष तिथि, घटना-संचालित, आदि, जो रीट्रेसिंग समय विन्यास को और अधिक बुद्धिमान बनाता है।

  3. समय पैरामीटर सेटिंग को अधिक सहज बनाने के लिए ग्राफिकल कॉन्फ़िगरेशन इंटरफ़ेस का समर्थन करता है.

  4. समय के विभिन्न आकारों का समर्थन करता है: वर्ष, महीना, दिन, घंटा, मिनट, सेकंड आदि

  5. समय विन्यास को रिकॉर्ड करें ताकि परिणामों को दोहराया जा सके, ट्रैक किया जा सके और तुलना की जा सके

  6. अनुचित समय विन्यास की जांच को बढ़ाएं, अनुचित समय विन्यास से प्रतिक्रिया की गुणवत्ता को प्रभावित करने से बचें

  7. स्टार्टअप समय बाध्यकारी सुविधा प्रदान करता है, एक कुंजी के साथ स्टार्टअप समय को कई नीतियों में सिंक करता है।

संक्षेप

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

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

//@version=3
strategy("C320up Strategy Tester Start Time", overlay = true)
// Copy and paste below into your strategy
// Strategy Tester Start Time
xYear = input(2018, title = "Start Year")
xMonth = input(01, title = "Start Month", minval = 01, maxval = 12)
xDay = input(01, title = "Start Day", minval = 01, maxval = 31)
xHour = input(00, title = "Start Hour", minval = 00, maxval = 23)
xMinute = input(00, title = "Start Minute", minval = 00, maxval = 59)
startTime = time >= timestamp(xYear, xMonth, xDay, xHour, xMinute)
// End copy and paste
// Add (and startTime) at the end of your condition/s to activate

// The strategy below is just an example
longCondition = crossover(sma(close, 14), sma(close, 28))
if (longCondition and startTime)
    strategy.entry("My Long Entry Id", strategy.long)
shortCondition = crossunder(sma(close, 14), sma(close, 28))
if (shortCondition and startTime)
    strategy.entry("My Short Entry Id", strategy.short)
// Happy trading!