खरीद और बिक्री की रणनीति का अनुसरण करने वाला रुझान

लेखक:चाओझांग, दिनांकः 2023-10-17 12:59:59
टैगः

img

अवलोकन

ट्रेंड फॉलोइंग बाय एंड सेल स्ट्रैटेजी एक साधारण ट्रेंड फॉलोइंग डे ट्रेडिंग स्ट्रैटेजी है। इसका आधार मूविंग एवरेज के आधार पर ट्रेंड की दिशा निर्धारित करना और ट्रेंड में डिप्स और ब्लिप्स को खरीद/बेचना है।

रणनीति तर्क

रणनीति प्रवृत्ति की दिशा निर्धारित करने के लिए सरल चलती औसत (एसएमए) का उपयोग करती है। एक अपट्रेंड में, जब मोमबत्ती की कार्रवाई एक dip प्रदान करती है, तो रणनीति लंबी हो जाएगी जब वर्तमान मोमबत्ती का उच्च पिछले मोमबत्ती के उच्च को तोड़ता है। एक डाउनट्रेंड में, जब मोमबत्ती की कार्रवाई एक blip प्रदान करती है, तो रणनीति छोटी हो जाएगी जब वर्तमान मोमबत्ती का निम्न पिछली मोमबत्ती के निम्न को तोड़ता है।

यह रणनीति ट्रेंड निर्धारण के लिए ब्लैंचफ्लावर ऑसिलेटर के %K और %D का भी उपयोग करती है। यह स्थिति को बंद कर देगा और विपरीत दिशा में व्यापार करेगा जब %K %D से ऊपर पार हो जाएगा। इसके अतिरिक्त, MACD और सिग्नल लाइन केवल उन ट्रेडों को लेने के लिए फ़िल्टर के रूप में कार्य करती है जो MACD और सिग्नल द्वारा निर्धारित ट्रेंड दिशा के अनुरूप हैं।

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

लाभ विश्लेषण

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

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

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

  • एसएमए के बड़े पैठ से बड़े नुकसान का जोखिम। एसएमए अवधि को कम जोखिम के लिए बढ़ा सकता है।
  • सीमाबद्ध बाजार में लगातार व्यापार और ओवरट्रेडिंग। व्यापार आवृत्ति को कम करने के लिए %K अवधि बढ़ा सकता है।
  • खराब एमएसीडी और सिग्नल पैरामीटर सेटिंग से अप्रभावी फ़िल्टरिंग। प्रति साधन पैरामीटर को अनुकूलित करना चाहिए।
  • द्विदिश व्यापार से संचित बड़ी स्थिति हानि का कारण बनती है।

बढ़ोतरी के अवसर

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

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

निष्कर्ष

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


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

//@version=4
strategy("Higher High / Lower Low Strategy", overlay=true)

// Getting inputs
longOnly = input(true, title="Long or Short Only")
useMACD = input(true, title="Use MACD Filter")
useSignal = input(true, title="Use Signal Filter")
//Filter backtest month and year
startMonth = input(10, minval=1, maxval=12, title="Month")
startYear = input(2020, minval=2000, maxval=2100, title="Year")
//Filter funtion inputs
periodA = input(20, minval=1, title="Period SMA")
periodK = input(5, minval=1, title="Period %K")
fast_length = input(title="Period Fast", type=input.integer, defval=5)
slow_length = input(title="Period Slow", type=input.integer, defval=20)
signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 30)

//Calculations
smoothD = 3 //input(3, minval=1, title="Smooth %D")
smoothK = 2 //input(2, minval=1, title="Smooth %K")
ma50 = sma(close, periodA)
k = sma(stoch(close, high, low, periodK), smoothK) - 50
d = sma(k, smoothD)
macd = ema(close,fast_length) - ema(close,slow_length)
signal = ema(macd,signal_length)
hist = macd - signal

if (not na(k) and not na(d) and not na(macd) and not na(signal) and longOnly and month>=startMonth and year>=startYear)//	if(k > k[1] and k[2] >= k[1] and (ma50 > ma50[1]) and (not useK or k[1] <= -threshold_k) and (not useMACD or macd > macd[1]) and (not useSignal or signal > signal[1]) and (not useHHLL or close >= high[1]) and (not useD or d <= -threshold_d))
    if(high[2] >= high[1] and high > high[1] and (ma50 > ma50[1]) and (not useMACD or macd > macd[1]) and (not useSignal or signal > signal[1]))
		strategy.order("HH_LE", strategy.long, when=strategy.position_size == 0, comment="HH_LE")
    if (k < k[1])
		strategy.order("HH_SX", strategy.short, when=strategy.position_size != 0, comment="HH_SX")

if (not na(k) and not na(d) and not na(macd) and not na(signal) and not longOnly and month>=startMonth and year>=startYear)
    if(low[2] <= low[1] and low < low[1] and (ma50 < ma50[1]) and (not useMACD or macd < macd[1]) and (not useSignal or signal < signal[1]))
		strategy.order("HH_SE", strategy.short, when=strategy.position_size == 0, comment="HH_SE")
    if (k > k[1])
		strategy.order("HH_LX", strategy.long, when=strategy.position_size != 0, comment="HH_LX")

//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)


अधिक