ट्रेंड मूविंग एवरेज ट्रेडिंग रणनीति


निर्माण तिथि: 2023-09-21 20:34:43 अंत में संशोधित करें: 2023-09-21 20:34:43
कॉपी: 0 क्लिक्स: 675
1
ध्यान केंद्रित करना
1621
समर्थक

अवलोकन

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

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

इस रणनीति में बाजार के रुझानों को निर्धारित करने के लिए मुख्य रूप से औसत रेखा पर निर्भर करता है। विशेष रूप से, रणनीति 5 चक्र की तेज औसत रेखा और 21 चक्र की धीमी औसत रेखा का उपयोग करती है।

जब तेज औसत रेखा पर धीमी औसत रेखा को पार करते हैं, तो यह दर्शाता है कि बाजार की प्रवृत्ति अधिक है, और यह रणनीति अगले के-लाइन के उद्घाटन पर अधिक होगी; जब तेज औसत रेखा के नीचे धीमी औसत रेखा को पार करते हैं, तो यह दर्शाता है कि बाजार की प्रवृत्ति बदल जाती है, और यह रणनीति अगले के-लाइन के उद्घाटन पर खाली होगी।

इसके अलावा, रणनीति में झूठी दरारों को फ़िल्टर करने के लिए एक बार बार बार बार पैरामीटर भी सेट किया गया है। इस पैरामीटर का डिफ़ॉल्ट मान 2 है, जिसका अर्थ है कि धीमी औसत रेखा के ऊपर लगातार 2 K लाइनों की आवश्यकता होती है ताकि वे झूठी दरारों को प्रभावी ढंग से फ़िल्टर करने के लिए कई संकेत दे सकें।

क्रिप्टोकरेंसी के लिए, रणनीति में चरम मूल्य निर्णय तर्क भी शामिल है। केवल तभी ट्रेडिंग सिग्नल जारी किया जाता है जब तेज औसत और धीमी औसत दोनों चरम क्षेत्रों में होते हैं। यह भी झूठी दरारों से बचने के लिए है।

रणनीति बाहर निकलने का नियम सरल और सीधा है, जब कीमत स्टॉप-लॉस को ट्रिगर करती है तो आप अपनी स्थिति से बाहर निकल जाते हैं।

रणनीतिक लाभ

  • द्वि-समान-रेखा प्रणाली का उपयोग करके, प्रवृत्तियों को प्रभावी ढंग से ट्रैक किया जा सकता है
  • तेजी से औसत रेखा की लंबाई कम है, जो समय पर रुझान में बदलाव को पकड़ती है
  • धीमी औसत रेखा की लंबाई अधिक है, मुख्य दिशा निर्धारित करने के लिए
  • bars पैरामीटर फ़िल्टर करने के लिए कुछ नकली तोड़ने
  • चरम मूल्य निर्णयों से महत्वपूर्ण बिंदुओं के पास होने वाली दुर्लभ झूठी दरारों को रोका जा सकता है
  • जोखिम को नियंत्रित करने के लिए चलती रोक

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

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

जोखिम को निम्न तरीकों से कम किया जा सकता हैः

  • बैलेंस प्वाइंट को खोजने के लिए बैलेंस प्वाइंट को अनुकूलित करें
  • MACD जैसे अन्य सूचकांकों को फ़िल्टर करने का प्रयास करें
  • स्टॉप पॉइंट्स को समायोजित करें और समय से पहले स्टॉप को रोकें
  • पुनः प्रवेश के लिए विचार करें

अनुकूलन दिशा

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

  1. औसत रेखा पैरामीटर अनुकूलन

अधिक संयोजनों का परीक्षण किया जा सकता है और वर्तमान बाजार के लिए अधिक उपयुक्त औसत रेखा पैरामीटर मिल सकता है। उदाहरण के लिए, 10 चक्रों के लिए फास्ट लाइन को समायोजित करें, और 50 चक्रों के लिए धीमी रेखा।

  1. अन्य सूचकांकों को जोड़ें

MACD, KDJ और अन्य संकेतकों को शामिल करने के लिए परीक्षण किया जा सकता है, और झूठी दरारों से बचने के लिए सख्त शर्तें निर्धारित की जा सकती हैं।

  1. प्रवेश व्यवस्था का अनुकूलन

वर्तमान में प्रवेश बहुत सरल है और औसत रेखा पर निर्भर है, जिसे निम्नानुसार अनुकूलित किया जा सकता हैः

  • मैकडीआईएफएफ को भी 0 पहनने की जरूरत है
  • केडीजे के लिए, यह निर्धारित करने के लिए कि क्या वे भी गोल्डन फोर्क हैं, जब वे तेज लाइन पर धीमी लाइन से गुजरते हैं
  1. नुकसान को रोकने के लिए अनुकूलन

अन्य स्टॉप विकल्पों का परीक्षण किया जा सकता है, जैसे कि स्टॉप को ट्रैक करना और स्टॉप को जल्दी से ट्रिगर करने से बचना।

  1. पुनः प्रवेश के लिए

जब स्थिति बंद हो जाती है, तो फिर से प्रवेश किया जा सकता है, जिससे रुकावट को रोकने के लिए रुकावट को कम किया जा सकता है।

संक्षेप

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

रणनीति स्रोत कोड
/*backtest
start: 2023-08-21 00:00:00
end: 2023-09-20 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy(title = "Noro's Trend MAs Strategy v2.3", shorttitle = "Trend MAs str 2.3", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value=100.0, pyramiding=0)

//Settings
needlong = input(true, "long")
needshort = input(true, "short")
needstops = input(false, "stops")
stoppercent = input(5, defval = 5, minval = 1, maxval = 50, title = "Stop, %")
usefastsma = input(true, "Use fast MA Filter")
fastlen = input(5, defval = 5, minval = 1, maxval = 50, title = "fast MA Period")
slowlen = input(21, defval = 20, minval = 2, maxval = 200, title = "slow MA Period")
bars = input(2, defval = 2, minval = 0, maxval = 3, title = "Bars Q")
needbg = input(false, defval = false, title = "Need trend Background?")
needex = input(true, defval = true, title = "Need extreme? (crypto/fiat only!!!)")
fromyear = input(1900, defval = 1900, 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")

src = close

//PriceChannel 1
lasthigh = highest(src, slowlen)
lastlow = lowest(src, slowlen)
center = (lasthigh + lastlow) / 2

//PriceChannel 2
lasthigh2 = highest(src, fastlen)
lastlow2 = lowest(src, fastlen)
center2 = (lasthigh2 + lastlow2) / 2

//Trend
trend = low > center and low[1] > center[1] ? 1 : high < center and high[1] < center[1] ? -1 : trend[1]

//Bars
bar = close > open ? 1 : close < open ? -1 : 0
redbars = bars == 0 ? 1 : bars == 1 and bar == -1 ? 1 : bars == 2 and bar == -1 and bar[1] == -1 ? 1 : bars == 3 and bar == -1 and bar[1] == -1 and bar[2] == -1 ? 1 : 0
greenbars = bars == 0 ? 1 : bars == 1 and bar == 1 ? 1 : bars == 2 and bar == 1 and bar[1] == 1 ? 1 : bars == 3 and bar == 1 and bar[1] == 1 and bar[2] == 1 ? 1 : 0

//Fast RSI
fastup = rma(max(change(close), 0), 2)
fastdown = rma(-min(change(close), 0), 2)
fastrsi = fastdown == 0 ? 100 : fastup == 0 ? 0 : 100 - (100 / (1 + fastup / fastdown))

//CryptoBottom
mac = sma(close, 10)
len = abs(close - mac)
sma = sma(len, 100)
max = max(open, close)
min = min(open, close)

//Signals
up1 = trend == 1 and (low < center2 or usefastsma == false) and redbars == 1
dn1 = trend == -1 and (high > center2 or usefastsma == false) and greenbars == 1
up2 = high < center and high < center2 and bar == -1 and needex
dn2 = low > center and low > center2 and bar == 1 and needex
up3 = close < open and len > sma * 3 and min < min[1] and fastrsi < 10 ? 1 : 0

//Lines
plot(center2, color = red, linewidth = 3, transp = 0, title = "Fast MA")
plot(center, color = blue, linewidth = 3, transp = 0, title = "Slow MA")

//Background
col = needbg == false ? na : trend == 1 ? lime : red
bgcolor(col, transp = 80)

//Trading
stoplong = up1 == 1 and needstops == true ? close - (close / 100 * stoppercent) : stoplong[1]
stopshort = dn1 == 1 and needstops == true ? close + (close / 100 * stoppercent) : stopshort[1]

if up1 or up2 or up3
    strategy.entry("Long", strategy.long, needlong == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
    strategy.exit("Stop Long", "Long", stop = stoplong)

if dn1
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
    strategy.exit("Stop Short", "Short", stop = stopshort)
    
if time > timestamp(toyear, tomonth, today, 23, 59)
    strategy.close_all()