रणनीति के बाद एमएसीडी रुझान

लेखक:चाओझांग, दिनांकः 2023-11-16 17:42:09
टैगः

img

अवलोकन

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

रणनीति तर्क

  1. तेजी से एमए, धीमी एमए और एमएसीडी सूचक की गणना करें. तेजी से एमए 12 अवधि ईएमए का उपयोग करता है, धीमी एमए 26 अवधि ईएमए का उपयोग करता है. एमएसीडी तेजी से और धीमी एमए के बीच का अंतर है.

  2. खरीद और बिक्री लाइनें सेट करें. जब एमएसीडी खरीद लाइन के ऊपर से गुजरता है तो खरीद संकेत उत्पन्न करें, जब एमएसीडी बिक्री लाइन के नीचे से गुजरता है तो बेच संकेत उत्पन्न करें.

  3. खोलने की स्थिति के बाद गतिशील स्टॉप लॉस सेट करें। प्रारंभिक स्टॉप लॉस प्रवेश मूल्य के 95% पर सेट किया जाता है, और मूल्य चलाने के साथ ऊपर की ओर बढ़ेगा।

  4. बंद स्थिति जब स्टॉप लॉस ट्रिगर किया जाता है या रिवर्स सिग्नल दिखाई देता है।

लाभ विश्लेषण

  1. रुझान की दिशा की पहचान करने के लिए एमएसीडी का उपयोग करके रुझानों को प्रभावी ढंग से ट्रैक किया जा सकता है।

  2. गतिशील स्टॉप लॉस लगातार मुनाफे को लॉक कर सकता है और बड़े नुकसान से बच सकता है।

  3. रणनीति तर्क सरल और स्पष्ट है, मात्रा व्यापार के लिए समझने और स्वचालित करने में आसान है।

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

  1. एमएसीडी का प्रभाव कम होता है, यह अल्पकालिक रुझान उलटने से चूक सकता है।

  2. बहुत ढीला सेट स्टॉप लॉस कुछ लाभ खो सकता है, बहुत तंग जल्दी बंद हो सकता है।

  3. पैरामीटर ट्यूनिंग समस्या. एमएसीडी मापदंडों और खरीद/बिक्री लाइनों को निरंतर परीक्षण और अनुकूलन की आवश्यकता होती है.

  4. ट्रेंडिंग मार्केट में बेहतर काम करता है, चंचल बाजार में नुकसान हो सकता है।

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

  1. सर्वोत्तम संयोजन खोजने के लिए एमएसीडी मापदंडों का अनुकूलन करें।

  2. विभिन्न स्टॉप लॉस विधियों का परीक्षण करें, जैसे फिक्स्ड पॉइंट, एटीआर आधारित आदि।

  3. झूठे संकेतों से बचने के लिए अन्य संकेतकों का उपयोग करके फ़िल्टर स्थितियों को जोड़ें, जैसे बोलिंगर बैंड, आरएसआई आदि।

  4. प्रवृत्ति पहचान उपकरण के साथ संयोजन, गतिशील रूप से प्रवृत्ति बनाम सीमा-बाधित बाजार के आधार पर रणनीति मापदंडों को समायोजित करें।

सारांश

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


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

//@version=3
strategy(shorttitle = "EURUSD MACD", title = "EURUSD MACD")
fastMA = input(title="Fast moving average",  defval = 12, minval = 7)
slowMA = input(title="Slow moving average",  defval = 26, minval = 7)
lastColor = yellow
[currMacd,_,_] = macd(close[0], fastMA, slowMA, 9)
[prevMacd,_,_] = macd(close[1], fastMA, slowMA, 9)
plotColor = currMacd > 0 ? currMacd > prevMacd ? lime : green : currMacd < prevMacd ? maroon : red
plot(currMacd, style = histogram, color = plotColor, linewidth = 3)
plot(0, title = "Zero line", linewidth = 1, color = gray)

//MACD
// Getting inputs
fast_length = input(title="Fast Length",  defval=12)
slow_length = input(title="Slow Length",  defval=26)
src = input(title="Source",  defval=close)
signal_length = input(title="Signal Smoothing",  minval = 1, maxval = 50, defval =9)
sma_source = input(title="Simple MA(Oscillator)", type=bool, defval=false)
sma_signal = input(title="Simple MA(Signal Line)", type=bool, defval=false)

// Plot colors
col_grow_above = #26A69A
col_grow_below = #FFCDD2
col_fall_above = #B2DFDB
col_fall_below = #EF5350
col_macd = #0094ff
col_signal = #ff6a00

// Calculating
fast_ma = sma_source ? sma(src, fast_length) : ema(src, fast_length)
slow_ma = sma_source ? sma(src, slow_length) : ema(src, slow_length)
macd = fast_ma - slow_ma
signal = sma_signal ? sma(macd, signal_length) : ema(macd, signal_length)
hist = macd - signal

//plot(hist, title="Histogram", style=columns, color=(hist>=0 ? (hist[1] < hist ? col_grow_above : col_fall_above) : (hist[1] < hist ? col_grow_below : col_fall_below) ), transp=0 )
plot(macd, title="MACD", color=col_macd, transp=0)
plot(signal, title="Signal", color=col_signal, transp=0)
///END OF MACD

//Long and Close Long Lines
linebuy = input(title="Enter Long", type=float, defval=-0.0002)
linesell = input(title="Close Long", type=float, defval=0.0001)

//Plot Long and Close Long Lines
plot(linebuy,color=green),plot(linesell,color=red)


//Stop Loss Input
sl_inp = input(0.05, title='Stop Loss %', type=float)/100


//Order Conditions
longCond = crossover(currMacd, linebuy)
exitLong = crossover(currMacd, linesell)
stop_level = strategy.position_avg_price * (1 - sl_inp)


//Order Entries
strategy.entry("long", strategy.long,  when=longCond==true)
strategy.close("long", when=exitLong==true)
strategy.exit("Stop Loss", stop=stop_level)

अधिक