ट्रेडिंग वॉल्यूम के मानक विचलन पर आधारित ट्रेडिंग रणनीति

लेखक:चाओझांग, दिनांकः 2023-11-21 11:11:51
टैगः

img

अवलोकन

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

रणनीति तर्क

मूल तर्क व्यापारिक मात्रा मॉडल का निर्माण करना और मूल्य प्रवृत्ति का न्याय करना है।

  1. ट्रेडिंग वॉल्यूम मॉडल बनाना
    • मूल रेखा के रूप में वॉल्यूम vavg के 40 अवधि के चलती औसत की गणना की जाए
    • सामान्य उतार-चढ़ाव सीमा के रूप में वॉल्यूम vsd के 40 अवधि मानक विचलन की गणना करें
    • अंतिम वॉल्यूम स्तर के रूप में वॉल्यूम vavgn के 5 अवधि के चलती औसत की गणना करें
    • वॉल्यूम की निचली सीमा को vavg से घटाकर 1 गुना vsd के रूप में सेट करें
    • वॉल्यूम की ऊपरी सीमा को vavg प्लस 2 गुना vsd के रूप में सेट करें
  2. न्यायाधीशों की कीमतों में वृद्धि
    • मूल्य प्रवृत्ति के संकेतक के रूप में बंद मूल्य mavg के 20 अवधि के चलती औसत की गणना करें
  3. ट्रेडिंग सिग्नल उत्पन्न करें
    • जब mavg अपने पिछले दिन के ऊपर पार करता है और vavgn निम्न सीमा से ऊपर होता है, तो लंबा हो जाता है
    • जब mavg अपने पिछले दिन से नीचे पार करता है और vavgn निम्न सीमा से ऊपर होता है, तो शॉर्ट करें
    • जब मावग रुझान उलट जाता है तो स्थिति बंद करें

यह रणनीति ट्रेडिंग वॉल्यूम मॉडल और मूल्य प्रवृत्ति को जोड़ती है ताकि जब वॉल्यूम असामान्य हो, तो मूल्य प्रवृत्तियों का पीछा करने से बचा जा सके, जो कुछ झूठे संकेतों को फ़िल्टर कर सकता है।

लाभ विश्लेषण

  1. मूल्य प्रवृत्ति का न्याय करने के लिए वॉल्यूम परिवर्तनों को मिलाकर कुछ झूठे संकेतों को फ़िल्टर कर सकते हैं और ट्रेडिंग संकेतों को अधिक विश्वसनीय बना सकते हैं
  2. मानक विचलन का उपयोग करके व्यापारिक मात्रा मॉडल का निर्माण करने से अत्यधिक मात्रा प्रभाव से बचा जाता है
  3. चलती औसत के समायोज्य मापदंड विभिन्न चक्रों में मूल्य परिवर्तनों के अनुकूल हो सकते हैं

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

  1. मात्रा और मूल्य में अल्पकालिक विचलन हो सकता है, जिससे मूल्य के रुझान गायब हो जाते हैं
  2. वॉल्यूम के अनुचित पैरामीटर सेटिंग्स मॉडल विफलता का कारण बन सकता है
  3. रणनीति में कोई स्टॉप लॉस नहीं होने से बड़े नुकसान हो सकते हैं

समाधान:

  1. मॉडल को अनुकूलित करने के लिए चलती औसत पैरामीटर को ठीक से समायोजित करें
  2. एकल हानि को नियंत्रित करने के लिए स्टॉप लॉस लॉजिक जोड़ें

अनुकूलन दिशाएँ

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

सारांश

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


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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © dongyun

//@version=4
strategy("交易量底部标准差系统", overlay=true)

options = input(1,'')
length = input(40,'')
nlow = input(5,'')
factor = input(1.0,'')

vavg = 0.0
vavgn = 0.0
vsd = 0.0
lowlimit = 0.0
uplimit = 0.0
mavg = 0.0
aror = 0.0
adjvol = 0.0
savevol = 0.0


//Find average volume, replacing bad values
adjvol := volume

if (volume != 0)
	savevol := volume
else
	savevol := savevol[1]
	adjvol := savevol


// Replace high volume days because they distort standard deviation
if (adjvol > 2 * factor * nz(vsd[1]))
	adjvol := savevol
else
	adjvol := adjvol[1]

vavg := sma(adjvol,length)
vsd := stdev(adjvol,length)
vavgn := sma(adjvol,nlow)

// Extreme volume limits
lowlimit := vavg - factor * vsd
uplimit := vavg + 2 * factor * vsd

// System rules based on moving average trend
mavg := sma(close,length/2)

// Only enter on new trend signals
if (options == 2)
	if (mavg > mavg[1] and mavg[1] <= mavg[2])
		strategy.entry("Long", strategy.long)
	if (mavg<mavg[1] and mavg[1]>=mavg[2])
		strategy.entry("Short", strategy.short)
else
	if (mavg > mavg[1] and vavgn > lowlimit)
		strategy.entry("Long", strategy.long)
	if (mavg < mavg[1] and vavgn > lowlimit)
		strategy.entry("Short", strategy.short)

// Exit on low volume
if (options != 1)
	if (mavg<mavg[1] or (strategy.position_size > 0 and vavgn<= lowlimit))
		strategy.close("Long")
	if (mavg>mavg[1] or (strategy.position_size > 0 and vavgn<= lowlimit))
		strategy.close("Short")
else
	if (mavg < mavg[1])
		strategy.close("Long")
	if (mavg > mavg[1])
		strategy.close("Short")

अधिक