स्लाइडिंग औसत और बोलिंगर बैंड मात्रात्मक व्यापार रणनीति

SMA WMA EMA
निर्माण तिथि: 2024-04-26 11:45:05 अंत में संशोधित करें: 2024-04-26 11:45:05
कॉपी: 4 क्लिक्स: 596
1
ध्यान केंद्रित करना
1617
समर्थक

स्लाइडिंग औसत और बोलिंगर बैंड मात्रात्मक व्यापार रणनीति

अवलोकन

यह रणनीति बाजार की रुझानों और उतार-चढ़ावों को पकड़ने के लिए मुख्य रूप से स्लाइडिंग औसत और ब्रीज़ का उपयोग करती है। रणनीति में तीन अलग-अलग चलती औसत का उपयोग किया जाता हैः सरल चलती औसत (एसएमए), भारित चलती औसत (डब्ल्यूएमए) और सूचकांक चलती औसत (ईएमए) । ब्रीज़ का उपयोग मूल्य चैनल को स्थापित करने के लिए किया जाता है, ऊपर और नीचे की पटरी को खोलने के लिए, क्रमशः, एक शांत संकेत के रूप में। जब कीमत ब्रीज़ बैंड को तोड़ती है, तो एक खाली स्थिति खुलती है, और जब वह नीचे की पटरी को तोड़ती है, तो एक अधिक खुली स्थिति खुलती है।

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

  1. तीन अलग-अलग चक्रों के लिए एक चलती औसत की गणना करेंः धीमी SMA, तेज EMA और मध्यम WMA, जो क्रमशः बाजार की लंबी, छोटी और मध्यम अवधि की प्रवृत्तियों को दर्शाते हैं।
  2. मूल्य मानक अंतर के आधार पर दो समूहों की गणना की जाती हैः खोलने के ब्लीनिंग बैंड ((ऊपर और नीचे की दूरी करीब है) और बंद ब्लीनिंग बैंड ((उपर और नीचे की दूरी चौड़ा है) । खोलने के ब्लीनिंग बैंड को खोलने के लिए उपयोग किया जाता है, और बंद ब्लीनिंग ब्लीनिंग ब्लीनिंग ब्लीनिंग के लिए उपयोग किया जाता है।
  3. जब तेजी से ईएमए पर खोलने के लिए ब्रीफिंग ब्रीफिंग ट्रैक पर, खोलने के लिए खाली सिर स्थिति; जब तेजी से ईएमए के नीचे खोलने के लिए ब्रीफिंग ब्रीफिंग ट्रैक पर, खोलने के लिए मल्टी हेड स्थिति। इसका मतलब है कि कीमतों के विचलन औसत से अधिक है, एक प्रवृत्ति हो सकती है।
  4. एक बार स्थिति खोलने के बाद, यदि कीमत आगे बढ़ जाती है तो सभी मल्टीहेड पोजीशन को खत्म कर दिया जाता है; यदि कीमत आगे बढ़ जाती है तो सभी खाली पोजीशन को खत्म कर दिया जाता है। यह नुकसान को नियंत्रित करने के लिए है, एक बार जब प्रवृत्ति उलट जाती है, तो यह एक निश्चित स्टॉप है।
  5. उपरोक्त प्रक्रिया निरंतर चलती है, जिससे रणनीति बाजार की प्रवृत्तियों के अनुसार स्थिति को लचीले ढंग से समायोजित कर सकती है, और समय पर नुकसान को रोक सकती है, ताकि स्थिर लाभ प्राप्त किया जा सके।

रणनीतिक लाभ

  1. तीन अलग-अलग गति के लिए चलती औसत को ध्यान में रखते हुए, बाजार के रुझानों को विभिन्न स्तरों पर पूरी तरह से कैप्चर किया गया।
  2. ब्रींग बैंड को एक स्थिति खोलने के लिए पेश किया गया है, जो बाजार में उतार-चढ़ाव के आधार पर गतिशील रूप से समायोजित किया जा सकता है, और स्थिति का सामना करने के लिए लचीला है।
  3. स्टॉप लॉस ब्रिन बैंड सेट करें, रिट्रीट को नियंत्रित करें, और जब बाजार में भारी उतार-चढ़ाव होता है, तो घाटे के विस्तार से बचने के लिए स्थिति को बंद करें।
  4. तर्क स्पष्ट है, नियम सरल हैं, और इसे लागू करना और अनुकूलित करना आसान है।
  5. यह व्यापक रूप से लागू होता है और कई प्रकार के बाजारों और कई समय अवधि के लिए प्रभावी हो सकता है।

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

  1. बाजारों में उतार-चढ़ाव के दौरान, बार-बार पोजीशन खोलने से लेन-देन की भारी लागत हो सकती है, जिससे मुनाफा कम हो सकता है।
  2. रुझान में बदलाव के शुरुआती दिनों में, रणनीति अभी भी मूल रुझान की दिशा में व्यापार कर सकती है, जिससे कुछ नुकसान हो सकता है।
  3. हालांकि, यह संभव नहीं है कि बुलिन बैंड को रोकने के लिए जोखिम को अच्छी तरह से नियंत्रित किया जा सकता है, क्योंकि कीमतों में तेजी से उछाल के रूप में चरम स्थितियों के लिए।
  4. गलत पैरामीटर चयन (जैसे कि चलती औसत अवधि, ब्लिंक बैंडविड्थ, आदि) रणनीति को निष्क्रिय कर सकता है।
  5. यदि बाजार में उतार-चढ़ाव जारी रहता है, तो रणनीति लंबे समय तक स्पष्ट प्रवृत्ति के अवसरों को पकड़ने में विफल हो सकती है।

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

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

संक्षेप

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

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

//@version=5
strategy ("Marina Parfenova School Project Bot", overlay = true)

sma(price, n) =>
    result = 0.0
    for i = 0 to n - 1
        result := result + price [i] / n    
    result

wma(price, n) =>
    result = 0.0
    sum_weight = 0.0
    weight = 0.0
    for i = 0 to n - 1
        weight := n - 1
        result := result + price [i]*weight
        sum_weight := sum_weight + weight
    result/sum_weight

ema(price, n) =>
    result = 0.0
    alpha = 2/(n + 1)
    prevResult = price 
    if (na(result[1]) == false)
        prevResult := result[1]
    result := alpha * price + (1 - alpha) * prevResult

/// Настройки
n_slow = input.int(50, "Период медленной скользящей средней", step=5)
n_fast = input.int(4, "Период быстрой скользящей средней")
n_deviation = input.int(30, "Период среднеквадратического отклонения", step=5)
k_deviation_open = input.float(1.2, "Коэффициент ширины коридора покупки", step=0.1)
k_deviation_close = input.float(1.6, "Коэффициент ширины коридора продажи", step=0.1)

// ----- Линии индикаторов -----

// Медленная скользящая 
sma = sma(close, n_slow)
plot(sma, color=#d3d3d3)

// Линии Боллинджера, обозначающие коридор цены
bollinger_open = k_deviation_open * ta.stdev(close, n_deviation)
open_short_line = sma + bollinger_open
plot(open_short_line, color=#ec8383)
open_long_line = sma - bollinger_open
plot(open_long_line, color=#6dd86d)

bollinger_close = k_deviation_close * ta.stdev(close, n_deviation)
close_short_line = sma + bollinger_close
plot(close_short_line, color=#e3e3e3)
close_long_line = sma - bollinger_close
plot(close_long_line, color=#e3e3e3)

// Быстрая скользящая
ema = ema(close, n_fast)
plot(ema, color = color.aqua, linewidth = 2)

// ----- Сигналы для запуска стратегии -----

// если ema пересекает линию open_short сверху вниз - сигнал на создание ордера в short
if(ema[1] >= open_short_line[1] and ema < open_short_line)
    strategy.entry("short", strategy.short)

// если ema пересекает линию open_long снизу вверх - сигнал на создание ордера в long
if(ema[1] <= open_long_line[1] and ema > open_long_line)
    strategy.entry("long", strategy.long)

// если свеча пересекает верхнюю линию коридора продажи - закрываем все long-ордера 
if (high >= close_short_line)
    strategy.close("long")

// если свеча пересекает нижнюю линию коридора продажи - закрываем все short-ордера
if (low <= close_long_line)
    strategy.close("short")