एमए लाइनों पर आधारित रणनीति के बाद की प्रवृत्ति

लेखक:चाओझांग, दिनांकः 2024-02-22 17:24:02
टैगः

img

अवलोकन

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

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

  1. 20 अवधि, 60 अवधि और 120 अवधि के एमए की गणना करें
  2. वर्तमान रुझान की दिशा निर्धारित करने के लिए MA20, MA60 और MA120 के बीच परिमाण संबंध की तुलना करें
    • यदि MA20>MA60>MA120, तो ऊपर की ओर प्रवृत्ति का आकलन करें
    • यदि MA20
  3. जब एमए20 एमए60 से पार हो जाता है तो लंबा और जब एमए20 एमए60 से नीचे जाता है तो छोटा
  4. लाभ लेने और स्टॉप लॉस के लिए संदर्भ रेखा के रूप में MA60 का प्रयोग करें
    • लंबी स्थिति के लिए लाभ ले लाइन MA60 के 3 गुना है
    • शॉर्ट पोजीशन के लिए लाभ लेने की लाइन MA60 के 0.9 गुना है

लाभ विश्लेषण

  1. Whipsaws से बचने के लिए प्रवृत्ति निर्धारित करने के लिए विभिन्न अवधियों के एमए कॉम्बो का उपयोग करें
  2. जीतने की दर बढ़ाने के लिए केवल रुझान उलट बिंदुओं पर प्रवेश करें
  3. जोखिमों को कम करने के लिए लाभ लेने और हानि रोकने के लिए स्पष्ट नियम रखें

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

  1. रेंज-बाउंड बाजारों में, एमए क्रॉसओवर अक्सर हो सकते हैं, जिससे बहुत बार व्यापार हो सकता है
  2. लाभ लेने और स्टॉप लॉस के लिए मापदंडों को अनुकूलित करने की आवश्यकता है, अन्यथा स्थिति समय से पहले बंद हो सकती है या लाभ लेने के लिए पर्याप्त नहीं है

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

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

सारांश

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


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

//@version=5
strategy("MA60上多下空", overlay=true)

// 计算MA20/60/120
ma20 = ta.sma(close, 20)
ma60 = ta.sma(close, 60)
ma120 = ta.sma(close, 120)

// 判断MA的趋势
maUpTrend = ma20 > ma60 and ma60 > ma120
maDownTrend = ma20 < ma60 and ma60 < ma120

// 画竖直线标记MA趋势转折点
plotshape(maUpTrend and ta.crossover(ma20, ma60), style=shape.triangledown, location=location.abovebar, color=color.green, size=size.small)
plotshape(maDownTrend and ta.crossunder(ma20, ma60), style=shape.triangleup, location=location.belowbar, color=color.red, size=size.small)

// 画背景标记MA趋势
bgcolor(maUpTrend ? color.new(color.green, 90) : na)
bgcolor(maDownTrend ? color.new(color.red, 90) : na)

// 建立多头仓位的条件
longCondition = ta.crossover(close, ma60)

// 建立空头仓位的条件
shortCondition = ta.crossunder(close, ma60)

// 在穿过MA60时,根据条件建立相应的多头或空头仓位
if (longCondition)
    strategy.entry("Long", strategy.long)

if (shortCondition)
    strategy.entry("Short", strategy.short)

// 止盈止损规则
calculateReturns() =>
    close / strategy.position_avg_price - 1

takeProfitCondition = calculateReturns() >= 3  // 仓位盈利达到300%
stopLossCondition = calculateReturns() <= -0.1  // 仓位亏损达到10%

if (takeProfitCondition)
    strategy.close("Long", comment="Take Profit")
    strategy.close("Short", comment="Take Profit")

if (stopLossCondition)
    strategy.close("Long", comment="Stop Loss")
    strategy.close("Short", comment="Stop Loss")


अधिक