संसाधन लोड हो रहा है... लोड करना...

सुपर एटीआर प्रवृत्ति रणनीति का पालन करना

लेखक:चाओझांग, दिनांकः 2024-02-19 11:41:20
टैगः

img

अवलोकन

सुपर एटीआर ट्रेंड फॉलोइंग रणनीति एक एटीआर संकेतक आधारित ट्रेंड फॉलोइंग रणनीति है। यह बाजार की अस्थिरता को मापने के लिए एटीआर संकेतक का उपयोग करता है और रुझानों को ट्रैक करने के लिए कई एटीआर के आधार पर स्टॉप लॉस सेट करता है।

रणनीति तर्क

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

फिर ऊपरी और निचले बैंड की गणना एटीआर मूल्य के गुणक के आधार पर की जाती है, अर्थातःclose - Multiplier * ATRऊपरी बैंड के लिए;close + Multiplier * ATRयह एटीआर आधारित रुझान चैनल बनाता है।

फिर हम यह तय करते हैं कि क्या वर्तमान मूल्य चैनल के ऊपरी या निचले बैंड को तोड़ता है। यदि कीमत ऊपरी बैंड को तोड़ती है, तो इसे डाउनट्रेंड में प्रवेश करने के रूप में माना जाता है; यदि कीमत निचले बैंड को तोड़ती है, तो इसे अपट्रेंड में प्रवेश करने के रूप में माना जाता है। जब एक प्रवृत्ति ब्रेकआउट होता है, तो हम संबंधित खरीद और बिक्री करते हैं।

इसके अतिरिक्त, रणनीति ने केवल निर्दिष्ट तिथि समय सीमा में व्यापार करने के लिए एक व्यापार समय खिड़की निर्धारित की है।

लाभ विश्लेषण

इस संकेतक चैनल आधारित प्रवृत्ति अनुसरण रणनीति के निम्नलिखित फायदे हैंः

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

सामान्य तौर पर, यह एक सरल और व्यावहारिक प्रवृत्ति है जो जोखिमों को प्रभावी ढंग से नियंत्रित करने और अच्छे रिटर्न प्राप्त करने की रणनीति का पालन करती है।

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

इस रणनीति के कुछ जोखिम भी हैंः

  1. बाजार में हिंसक बदलाव हो सकते हैं कि एटीआर समय पर प्रतिक्रिया करने में विफल रहता है, जिसके परिणामस्वरूप बहुत ढीला स्टॉप लॉस होता है
  2. भाव विचलन होने पर कीमत चैनल में भिन्न हो सकती है, जिससे व्यापारिक जोखिम बढ़ जाता है
  3. निश्चित गुणक सभी उत्पादों के लिए उपयुक्त नहीं हो सकता है, तदनुसार समायोजन की आवश्यकता है
  4. setविंडो व्यापार के अवसरों को सीमित करता है, यदि सही ढंग से सेट नहीं किया जाता है तो अच्छे ट्रेडों को याद कर सकता है

इन जोखिमों को नियंत्रित करने के लिए, हम निम्नलिखित उपाय कर सकते हैंः

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

अनुकूलन

इस रणनीति को और अधिक अनुकूलित करने की गुंजाइश हैः

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

ये अनुकूलन रणनीति की स्थिरता और लाभप्रदता में और सुधार कर सकते हैं।

निष्कर्ष

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


/*backtest
start: 2023-02-12 00:00:00
end: 2024-02-18 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy('B厂长 @超级趋势精简优化版', overlay=true)
Periods = input(title='ATR周期', defval=10)
src = input(hl2, title='价格数据源')
Multiplier = input.float(title='ATR 乘数', step=0.1, defval=3.0)
changeATR = input(title='更改ATR计算方法', defval=true,tooltip = '默认为art否则sma(ta.tr,ATR周期)')
showsignals = input(title='显示买入/卖出信号', defval=false)
atr2 = ta.sma(ta.tr, Periods)
atr = changeATR ? ta.atr(Periods) : atr2
up = src - Multiplier * atr
up1 = nz(up[1], up)
up := close[1] > up1 ? math.max(up, up1) : up
dn = src + Multiplier * atr
dn1 = nz(dn[1], dn)
dn := close[1] < dn1 ? math.min(dn, dn1) : dn
trend = 1
trend := nz(trend[1], trend)
trend := trend == -1 and close > dn1 ? 1 : trend == 1 and close < up1 ? -1 : trend
upPlot = plot(trend == 1 ? up : na, title='上涨趋势', style=plot.style_linebr, linewidth=2, color=color.new(color.green, 0))
buySignal = trend == 1 and trend[1] == -1
plotshape(buySignal and showsignals ? up : na, title='买点', text='买点', location=location.absolute, style=shape.labelup, size=size.tiny, color=color.new(color.green, 0), textcolor=color.new(color.white, 0))
dnPlot = plot(trend == 1 ? na : dn, title='下跌趋势', style=plot.style_linebr, linewidth=2, color=color.new(color.red, 0))
sellSignal = trend == -1 and trend[1] == 1
plotshape(sellSignal and showsignals ? dn : na, title='卖点', text='卖点', location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.new(color.red, 0), textcolor=color.new(color.white, 0))
FromMonth = input.int(defval=9, title='From Month', minval=1, maxval=12)
FromDay = input.int(defval=1, title='From Day', minval=1, maxval=31)
FromYear = input.int(defval=2018, title='From Year', minval=999)
ToMonth = input.int(defval=1, title='To Month', minval=1, maxval=12)
ToDay = input.int(defval=1, title='To Day', minval=1, maxval=31)
ToYear = input.int(defval=9999, title='To Year', minval=999)
start = timestamp(FromYear, FromMonth, FromDay, 00, 00)
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59)
window() =>
    time >= start and time <= finish ? true : false
longCondition = buySignal
if longCondition and window()
    strategy.entry('BUY', strategy.long, comment = '做多')
shortCondition = sellSignal
if shortCondition and window()
    strategy.entry('SAL', strategy.short, comment = '做空')

buy1 = ta.barssince(buySignal)
sell1 = ta.barssince(sellSignal)
color1 = buy1[1] < sell1[1] ? color.green : buy1[1] > sell1[1] ? color.red : na



अधिक