डोन्चियन वेव चैनल ट्रेडिंग रणनीति


निर्माण तिथि: 2023-11-08 12:31:56 अंत में संशोधित करें: 2023-11-08 12:31:56
कॉपी: 0 क्लिक्स: 693
1
ध्यान केंद्रित करना
1617
समर्थक

डोन्चियन वेव चैनल ट्रेडिंग रणनीति

अवलोकन

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

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

यह रणनीति last () इतिहास) चक्र के भीतर उच्चतम मूल्य pcmax और निम्नतम मूल्य pcmin की गणना करके एक चैनल का निर्माण करती है। चैनल अपट्रेल और डाउनट्रेल गणना विधि हैः

अपट्रेलyh = pcmax - (pcmax - pcmin) * (100 - percentDev)/100

निचला ट्रैकyl = pcmin + (pcmax - pcmin) * percentDev/100

इस तरह के बयानों के बीच, डेव मॉर ने कहा कि 13 फीसदी लोग सहमत हैं।

जब कीमत ऊपर की ओर जाती है, तो एक लंबा संकेत होता है; जब कीमत नीचे की ओर जाती है, तो एक छोटा संकेत होता है।

विशिष्ट ट्रेडिंग सिग्नल के निर्माण का निर्णय निम्नानुसार किया जाता हैः

  1. boundup = high > yh यह निर्धारित करने के लिए कि क्या यह पटरी पर है या नहीं

  2. bounddn = low < yl पता लगाएं कि क्या कोई ब्रेकडाउन है

  3. upsign = sma(bounddn, 2) == 1 निरंतर नीचे की ओर टूटना

  4. dnsign = sma(boundup, 2) == 1 निरंतर उछाल को boundup की औसत रेखा से आंका गया

  5. exitup = dnsign पटरी से बाहर निकलने के लिए एक समतल संकेत उत्पन्न करता है

  6. exitdn = upsign नीचे की पटरी को तोड़ने के लिए समतल संकेत उत्पन्न करता है

  7. if upsign नीचे की पटरी को तोड़ने के लिए एक बहु संकेत उत्पन्न करता है

  8. if dnsign पटरियों के पार होने के कारण रिक्त सिग्नल

इस रणनीति के तहत, अनावश्यक रातोंरात स्थिति को रोकने के लिए ट्रेडिंग के लिए स्टार्ट-अप समय निर्धारित किया जाता है।

रणनीतिक लाभ

  1. डोंगचीआन चैनल का उपयोग करके प्रवृत्ति का आकलन करें, बेहतर परिणाम प्राप्त करें

  2. दोनों दिशाओं में व्यापार करने के लिए एक ही समय में अधिक और कम संकेत सेट करें

  3. गलत ट्रेडों से बचने के लिए एकसमान फ़िल्टरिंग के माध्यम से संकेतों का आकलन करें

  4. स्टॉप लॉस विकल्प सेट करें और जोखिम को नियंत्रित करें

  5. रात भर के जोखिम से बचने के लिए ट्रेडिंग के लिए स्टार्ट-एंड-स्टॉप टाइम सेट करें

रणनीतिक जोखिम

  1. डोंगचीआन चैनल इतिहास और प्रतिशत देव के लिए संवेदनशील है, विभिन्न किस्मों के लिए पैरामीटर को अनुकूलित करने की आवश्यकता है

  2. भूकंपीय घटनाओं में गलत सिग्नल हो सकता है

  3. ऑर्डर प्रबंधन को ध्यान में रखे बिना, रिअल इस्टेट से मुनाफे पर असर पड़ सकता है

  4. स्थिति प्रबंधन कारकों को ध्यान में रखे बिना, अचल संपत्ति में अत्यधिक स्थिति का जोखिम हो सकता है

  5. निधि प्रबंधन कारकों को ध्यान में रखे बिना, ट्रेडिंग निधि को वास्तविक डिस्क में उचित रूप से स्थापित करने की आवश्यकता है

रणनीति अनुकूलन दिशा

  1. विभिन्न किस्मों के लिए बेहतर अनुकूलन के लिए इतिहास और प्रतिशत देव को अनुकूलित करें

  2. फ़िल्टर जोड़े गए हैं, ताकि गलत संकेतों से बचा जा सके

  3. एकल स्थिति के लिए पूंजी के अनुपात को नियंत्रित करने के लिए स्थिति प्रबंधन मॉड्यूल में शामिल हों

  4. पूंजी प्रबंधन मॉड्यूल जोड़े गए, कुल पदों पर पूंजी के अनुपात को सीमित किया गया

  5. ऑर्डर प्रबंधक जोड़ें, ऑर्डर करने के तरीके को अनुकूलित करें

संक्षेप

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

रणनीति स्रोत कोड
/*backtest
start: 2023-10-31 00:00:00
end: 2023-11-07 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

////////////////////////////////////////////////////////////
//  Copyright by AlexInc v1.0 02/07/2018  @aav_1980
// PriceChannel strategy
// If you find this script helpful, you can also help me by sending donation to 
// BTC 16d9vgFvCmXpLf8FiKY6zsy6pauaCyFnzS
// LTC LQ5emyqNRjdRMqHPHEqREgryUJqmvYhffM
////////////////////////////////////////////////////////////
//@version=3
strategy("AlexInc PriceChannel Str", overlay=false)
history = input(20)
percentDev = input(13)
capital = input(100)

needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
usestoploss = input(true, defval = true, title = "Stop Loss")
stoplossmult = input(3.8, defval = 3.8, minval = 1, maxval = 10, title = "Stop loss multiplicator")


fromyear = input(2018, defval = 2018, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")

bodymin = min( open, close)
bodymax = max(open, close)

pcmax = highest(bodymax, history)
pcmin = lowest(bodymin, history)

yh = ((pcmax - pcmin) / 100 * (100 - percentDev)) + pcmin
yl = ((pcmax - pcmin) / 100 * percentDev) + pcmin

plot(pcmax)
plot(pcmin)
plot(yh)
plot(yl)

//1
bounddn = low < yl ? 1 : 0
boundup = high > yh ? 1 : 0
upsign = sma(bounddn, 2) == 1
dnsign = sma(boundup, 2) == 1
//2
//upsign = crossover(bodymin, yl)
//dnsign = crossunder(bodymax , yh)


exitup = dnsign
exitdn = upsign

lot = strategy.equity / close * capital / 100


xATR = atr(history)
nLoss = usestoploss ? stoplossmult * xATR : na

stop_level_long = 0.0
stop_level_long := nz(stop_level_long[1])

stop_level_short = 0.0
stop_level_short := nz(stop_level_short[1])

pos = strategy.position_size
if pos >0 and pos[1] <= 0 //crossover(pos, 0.5)
    stop_level_long = strategy.position_avg_price - nLoss
if pos < 0 and pos[1] >= 0 //crossunder(pos, -0.5)
    stop_level_short = strategy.position_avg_price + nLoss
if pos == 0    
    stop_level_long = bodymin - nLoss
    stop_level_short = bodymax + nLoss

//plot(bodymax + nLoss, color=red)
//plot(bodymin - nLoss, color=red)
plot(stop_level_long, color=red)
plot(stop_level_short, color=red)

if upsign
    strategy.entry("Long", strategy.long, needlong == false ? 0 : lot)

if dnsign
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na)

if true
    strategy.close_all()


//if strategy.position_size != 0
//    strategy.exit("Exit Long", from_entry = "Long", stop = stop_level_long)
//    strategy.exit("Exit Short", from_entry = "Short", stop = stop_level_short)