सफलता उच्च और निम्न बैकटेस्टिंग रणनीति

लेखक:चाओझांग, दिनांकः 2024-01-08 16:13:44
टैगः

img

अवलोकन

यह रणनीति आवधिक उच्च और निम्न के माध्यम से तोड़ने के आधार पर प्रवृत्ति की दिशा का न्याय करती है। जब कीमत आवधिक उच्च के माध्यम से टूटती है तो यह लंबी जाती है और जब कीमत आवधिक निम्न से नीचे टूटती है तो यह छोटी हो जाती है। यह प्रवृत्ति ट्रैकिंग रणनीति से संबंधित है।

सिद्धांत

रणनीति पहले उपयोगकर्ता द्वारा परिभाषित चक्र (दैनिक, साप्ताहिक, आदि) और लुकबैक अवधि पढ़ती है। फिर यह इन मापदंडों के आधार पर लुकबैक अवधि के लिए उच्चतम और निम्नतम मूल्य प्राप्त करती है। उदाहरण के लिए, यदि यह दैनिक चक्र और लुकबैक 1 अवधि पर सेट है, तो यह पिछले दिन के लिए उच्चतम और निम्नतम मूल्य लेता है।

वास्तविक व्यापार में, यदि समापन मूल्य लुकबैक अवधि की सबसे कम कीमत से अधिक या उसके बराबर है, तो इसे ऊपर की ओर एक सफलता के रूप में माना जाता है और यह लंबा जाता है। यदि समापन मूल्य लुकबैक अवधि की उच्चतम कीमत से कम या उसके बराबर है, तो इसे नीचे की ओर एक सफलता के रूप में माना जाता है और यह छोटा जाता है।

आवधिक उच्च और निम्न स्तरों को तोड़कर प्रवृत्ति की दिशा को पकड़कर, यह रणनीति एक प्रकार की प्रवृत्ति ट्रैकिंग रणनीति से संबंधित है।

लाभ विश्लेषण

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

  1. सफलता के बिंदुओं के आधार पर दिशा का आकलन करके मजबूत समेकन के बाद बड़ी प्रवृत्ति को पकड़ना।

  2. सरल और समझने में आसान, शुरुआती लोगों के लिए सीखने और उपयोग के लिए बहुत उपयुक्त।

  3. विभिन्न किस्मों पर लागू आवधिक मापदंडों को समायोजित करके अनुकूलित करना आसान है।

  4. रिवर्स ऑपरेशन के लिए रिवर्स इनपुट सेट कर सकता है, रणनीति उपयोग को समृद्ध कर सकता है।

  5. निर्णय में सहायता के लिए आवधिक उच्च और निम्न रेखांकन और बहु-प्रमाणन का गठन।

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

कुछ जोखिम भी हैं:

  1. पक्षीय अस्थिरता को प्रभावी ढंग से फ़िल्टर नहीं कर सकता है, संभावित कई गलत संचालन।

  2. स्टॉप लॉस को नियंत्रित नहीं किया जा सकता, कुछ हद तक हानि का जोखिम मौजूद है।

  3. ट्रेडिंग लागत के कारण वास्तविक पीएनएल विचलित हो सकता है।

  4. स्थिति के आकार को सीमित नहीं किया जा सकता है, ओवर-ट्रेडिंग जोखिम मौजूद है।

इन जोखिमों से निपटने के लिए स्टॉप लॉस सेट करना, फिल्टर स्थितियों को अनुकूलित करना, स्थिति आकार को नियंत्रित करना जैसे तरीकों का उपयोग किया जा सकता है।

अनुकूलन

मुख्य अनुकूलन दिशाएं हैंः

  1. साइडवेज के दौरान लगातार खुलने से बचने के लिए फिल्टर तंत्र जोड़ना। मूल्य चैनल, अस्थिरता फिल्टर आदि सेट करें।

  2. एकल हानि के जोखिम को नियंत्रित करने और समग्र लाभप्रदता सुनिश्चित करने के लिए ट्रैलिंग स्टॉप लॉस या टाइम स्टॉप लॉस सेट करें।

  3. अतिव्यापार को रोकने और स्थिरता सुनिश्चित करने के लिए स्थिति आकार और धन प्रबंधन को अनुकूलित करना।

  4. विभिन्न आवधिक मापदंडों के प्रभावों का परीक्षण करें और सर्वोत्तम मापदंड संयोजनों का चयन करें।

  5. एल्गोरिथम ट्रेडिंग मॉड्यूल को बढ़ाएं, निर्णय दक्षता में सुधार के लिए मशीन लर्निंग एल्गोरिदम का उपयोग करें।

सारांश

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


/*backtest
start: 2023-01-01 00:00:00
end: 2024-01-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 03/07/2018
// This script shows a high and low period value.
//    Width - width of lines
//    SelectPeriod - Day or Week or Month and etc.
//    LookBack - Shift levels 0 - current period, 1 - previous and etc.
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="High and Low Levels Backtest", shorttitle="HL Levels", overlay = true)
SelectPeriod = input("D", defval="D")
LookBack = input(1,  minval=0)
reverse = input(false, title="Trade reverse")
xHigh  = request.security(syminfo.tickerid, SelectPeriod, high[LookBack])
xLow   = request.security(syminfo.tickerid, SelectPeriod, low[LookBack])
vS1 = xHigh
vR1 = xLow
pos = iff(close > vR1, 1,
       iff(close < vS1, -1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue ) 

अधिक