एकाधिक समय सीमा ईएमए ब्रेकथ्रू और के-लाइन पैटर्न संयोजन पर आधारित व्यापार रणनीति

लेखक:चाओझांग, दिनांकः 2024-02-21 15:00:06
टैगः

img

अवलोकन

यह रणनीति अपेक्षाकृत संवेदनशील दीर्घकालिक सिग्नल कैप्चर और स्टॉप-लॉस निकास प्राप्त करने के लिए कई समय सीमा ईएमए संकेतकों और के-लाइन पैटर्न निर्णयों को एकीकृत करती है।

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

यह रणनीति मुख्य रूप से निम्नलिखित आंकड़ों पर आधारित है:

  1. ईएमएः मूल्य की सफलता के समय ट्रेडिंग सिग्नल निर्धारित करने के लिए ईएमए के 13 और 21 चक्रों के 2 सेट का उपयोग करता है।

  2. के-लाइन पैटर्नः के-लाइन इकाई की दिशा का आकलन करता है और झूठी सफलताओं को फ़िल्टर करने के लिए ईएमए संकेतक के साथ इसका उपयोग करता है।

  3. समर्थन प्रतिरोधः संकेत की विश्वसनीयता बढ़ाने के लिए यह निर्धारित करने के लिए पिछले 10 चक्रों में उच्चतम बिंदुओं द्वारा निर्मित किया जाता है कि क्या सफलता इस क्षेत्र को पार करती है।

  4. समय विभाजन में वृद्धिः 120 चक्र का समापन समय विभाजन में वृद्धि के रूप में न्याय करने के लिए खुला है, एक सहायक निर्णय के रूप में।

ट्रेडिंग सिग्नल उत्पन्न करने के नियम हैंः

  1. तेजी का संकेतः तेज ईएमए यांग लाइन के-लाइन के साथ धीमे ईएमए को ऊपर की ओर तोड़ता है, शॉर्ट पोजीशन बंद करता है और लॉन्ग खोलता है।

  2. मंदी का संकेतः तेजी से ईएमए धीमी ईएमए के माध्यम से टूट जाता है जिसमें यिन लाइन के-लाइन, सपाट लंबी स्थिति होती है।

  3. स्टॉप लॉस एक्जिटः रिवर्स सिग्नल दिखाई देने पर स्टॉप लॉस एक्जिट वर्तमान स्थिति पर।

लाभ

  1. बहु-समय सीमा ईएमए संकेतक प्रवृत्ति को अधिक विश्वसनीयता से आंकते हैं और झूठी सफलताओं से बचते हैं।
  2. अधिक सटीक रूप से रुझानों की पहचान करने के लिए फ़िल्टरिंग के लिए के-लाइन इकाई दिशा के साथ संयुक्त।
  3. सिग्नल की गुणवत्ता सुनिश्चित करने के लिए समय विभाजन निर्णयों को बढ़ाएं और प्रतिरोध निर्णयों का समर्थन करें।
  4. हानि के जोखिम को कम करने के लिए स्टॉप लॉस के रूप में रिवर्स सिग्नल का प्रयोग करें।

जोखिम

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

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

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

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

निष्कर्ष

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


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

//@version=2
strategy(title='ck - CryptoSniper Longs Only (Strategy)', shorttitle='ck - CryptoSniper Longs (S) v1', overlay=true, precision=2, commission_value=0.25, default_qty_type=strategy.percent_of_equity, pyramiding=0, default_qty_value=100, initial_capital=100)

open_long = 0
close_position = 0
last_long=close
last_short=close

//Candle body resistance Channel-----------------------------//
len = 34
src = input(close, title="Candle body resistance Channel")
out = sma(src, len)
last8h = highest(close, 13)
lastl8 = lowest(close, 13)
bearish = cross(close,out) == 1 and falling(close, 1)
bullish = cross(close,out) == 1 and rising(close, 1)
channel2=false

//-----------------Support and Resistance 
RST = input(title='Support / Resistance length:', defval=10) 
RSTT = valuewhen(high >= highest(high, RST), high, 0)
RSTB = valuewhen(low <= lowest(low, RST), low, 0)

//--------------------Trend colour ema------------------------------------------------// 
src0 = close, len0 = input(13, minval=1, title="EMA 1")
ema0 = ema(src0, len0)
direction = rising(ema0, 2) ? +1 : falling(ema0, 2) ? -1 : 0

//-------------------- ema 2------------------------------------------------//
src02 = close, len02 = input(21, minval=1, title="EMA 2")
ema02 = ema(src02, len02)
direction2 = rising(ema02, 2) ? +1 : falling(ema02, 2) ? -1 : 0

//=============Hull MA//
show_hma = false
hma_src = input(close, title="HullMA Source:")
hma_base_length = input(8, minval=1, title="HullMA Base Length:")
hma_length_scalar = input(5, minval=0, title="HullMA Length Scalar:")
hullma(src, length)=>wma(2*wma(src, length/2)-wma(src, length), round(sqrt(length)))

//============ signal Generator ==================================//
Period=input(title='Period', defval='120')
ch1 = request.security(syminfo.tickerid, Period, open)
ch2 = request.security(syminfo.tickerid, Period, close)

// Signals//
long = crossover(request.security(syminfo.tickerid, Period, close),request.security(syminfo.tickerid, Period, open))
short = crossunder(request.security(syminfo.tickerid, Period, close),request.security(syminfo.tickerid, Period, open))
last_long := long ? time : nz(last_long[1])
last_short := short ? time : nz(last_short[1])
long_signal = crossover(last_long, last_short) ? 1 : -1
short_signal = crossover(last_short, last_long) ? -1 : 1

if (long_signal == 1)
    strategy.entry("Long Open", strategy.long)

if (short_signal == -1)
    strategy.close("Long Open")
    
if (long_signal[1] == 1 and short_signal[1] == 1)
    open_long := 1
    close_position := 0

if (short_signal[1] == -1 and long_signal[1] == -1)
    open_long := 0
    close_position := 1

plotshape(open_long == 1, title="Open Long", location=location.belowbar, style=shape.triangleup, size=size.small, color=green, transp=10)
plotshape(close_position == 1, title="Close Long", location=location.abovebar, style=shape.triangledown, size=size.small, color=red, transp=10)
//plot(0, title="Trigger", color=white)

///////////////////////////////////////////////////////////////////////////////////////////

अधिक