क्रॉसओवर शॉर्ट-टर्म ब्रेकथ्रू रिवर्सल 5EMA रणनीति


निर्माण तिथि: 2024-01-30 15:30:19 अंत में संशोधित करें: 2024-01-30 15:30:19
कॉपी: 0 क्लिक्स: 677
1
ध्यान केंद्रित करना
1617
समर्थक

क्रॉसओवर शॉर्ट-टर्म ब्रेकथ्रू रिवर्सल 5EMA रणनीति

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

रणनीति अवलोकन

यह रणनीति एक लघु-रेखा मात्रात्मक रणनीति है, जो मुख्य रूप से उच्च आवृत्ति वाले व्यापार के लिए उपयोग की जाती है। यह रणनीति एक साथ ओवरहेड और ओवरहेड संकेतों का आकलन करती है, जो दो-तरफा व्यापार कर सकती है। जब कीमत 5 ईएमए संकेतक को तोड़ती है, तो व्यापार संकेत उत्पन्न होता है।

रणनीतिक लाभ यह है कि शॉर्ट लाइन मूल्य पलटाव के अवसरों को पकड़ना और जल्दी से मैदान में प्रवेश करना। जोखिम मुख्य रूप से झूठी तोड़फोड़ से होने वाले नुकसान से आता है। नुकसान के जोखिम को अनुकूलन पैरामीटर द्वारा कम किया जा सकता है।

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

  1. कीमतों के अल्पकालिक रुझानों का आकलन करने के लिए 5 चक्र ईएमए का उपयोग करें

  2. ईएमए को तोड़ने के लिए मूल्य का आकलन करें

  3. जब कीमतें ईएमए को तोड़ती हैं, तो वे बेचने का संकेत देते हैं

  4. जब कीमत नीचे से ऊपर की ओर ईएमए को तोड़ती है, तो एक खरीद संकेत उत्पन्न होता है

  5. स्टॉप लॉस और स्टॉप पॉइंट्स सेट करें, एकल नुकसान को सीमित करें

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

रणनीतिक लाभ

  • उच्च आवृत्ति शॉर्ट-लाइन ट्रेडिंग अवसरों को पकड़ने के लिए त्वरित प्रतिक्रिया
  • द्वि-दिशात्मक व्यापार, एक साथ अधिक से अधिक कैश कर सकते हैं
  • स्टॉप लॉस स्टॉप सेट तर्कसंगत है, एकल नुकसान सीमित है
  • सरल पैरामीटर सेटिंग, आसान नीति अनुकूलन

रणनीतिक जोखिम और समाधान

  • झूठी घुसपैठ के जोखिम से अनावश्यक नुकसान
    • ईएमए आवधिक मापदंडों को अनुकूलित करें और स्थिरता सुनिश्चित करें
  • ट्रेडों की अत्यधिक आवृत्ति के कारण व्यापार में उतार-चढ़ाव हो सकता है
    • प्रति दिन अधिकतम लेनदेन की सीमा

रणनीति अनुकूलन दिशा

  • इष्टतम चक्र संयोजन खोजने के लिए ईएमए सूचक पैरामीटर का अनुकूलन करें
  • फ़िल्टर बढ़ाएँ
  • प्रति दिन अधिकतम लेनदेन की सीमा
  • अन्य संकेतकों के साथ प्रवृत्ति की दिशा

संक्षेप

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

रणनीति स्रोत कोड
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © samscripter

//@version=5
strategy("5 ema strategy",overlay = true,process_orders_on_close = true)

// Choose trade direction

t_dir = input.string("Both", title="Trade Direction",options=["Long", "Short", "Both"],group = 'Trade Direction Set')

long_side  = t_dir == "Long" or t_dir == "Both"
short_side = t_dir == "Short" or t_dir == "Both"

// number of trade
mx_num =input.int(4,title = 'number Of trade',group = 'Maximum Number Of Trade')
var hi =0.0
var lo =0.0

var group_ma1="Ema Set"

//Ema 1
on_ma=input.bool(true,"Enable EMa 1 Plot On/Off"  ,group =group_ma1)
ma_len= input.int(5, minval=1, title="Ema Length",group =group_ma1)
ma_src = input.source(close, title="Ema Source"   ,group = group_ma1)
ma_out = ta.ema(ma_src, ma_len)

// buy and sell ema condition  
plot(on_ma?ma_out:na, color=color.white, title="MA")


if close>ma_out and open>ma_out and low>ma_out and high>ma_out
    lo:=low

if close<ma_out and open<ma_out and low<ma_out and high<ma_out
    hi:=high
    
// condition when price is crossunder lo take sell and when price crossoing hi take buy 
var buyp_sl =float(na)
var sellp_sl =float(na)

//count number trade since day stra
var count_buysell=0

if  close>hi[1] 
    if strategy.position_size==0 and count_buysell<mx_num and long_side
        strategy.entry('El',strategy.long,comment = 'Long')
        count_buysell:=count_buysell+1
        buyp_sl:=math.min(low,low[1])
    hi:=na
if  close<lo[1]
    if strategy.position_size==0 and count_buysell<mx_num and short_side
        strategy.entry('Es',strategy.short,comment = 'short')
        count_buysell:=count_buysell+1
        sellp_sl:=math.max(high,high[1])
    lo:=na

//take profit multiply 

tpnew = input.float(title="take profit", step=0.1, defval=1.5, group='Tp/SL')


//stop loss previous candle high and previous candle low
buy_sl = ta.valuewhen(strategy.position_size != 0 and strategy.position_size[1] == 0,buyp_sl , 0)
sell_sl= ta.valuewhen(strategy.position_size != 0 and strategy.position_size[1] == 0,sellp_sl, 0)

//take profit
takeProfit_buy = strategy.position_avg_price - ((buy_sl - strategy.position_avg_price) *tpnew)
takeProfit_sell = strategy.position_avg_price - ((sell_sl - strategy.position_avg_price) *tpnew)


//  Submit exit orders
if strategy.position_size > 0
    strategy.exit(id='XL', stop=buy_sl,limit=takeProfit_buy,comment_loss = 'Long Sl',comment_profit = 'Long Tp')

if strategy.position_size < 0
    strategy.exit(id='XS', stop=sell_sl,limit=takeProfit_sell,comment_loss = 'Short Sl',comment_profit = 'Short Tp')
    
//plot data
plot(series=strategy.position_size < 0 ?sell_sl : na, style=plot.style_circles, color=color.red, linewidth=2, title="St red Stop")
plot(series=strategy.position_size > 0 ?buy_sl  : na, style=plot.style_circles, color=color.green, linewidth=2, title="St green Stop")


// plot take profit
plot(series=strategy.position_size < 0 ? takeProfit_sell : na, style=plot.style_circles, color=color.orange, linewidth=2, title="take profit sell")
plot(series=strategy.position_size > 0 ? takeProfit_buy: na, style=plot.style_circles, color=color.blue, linewidth=2, title="take profit buy")

if ta.change(time('D'))
    count_buysell:=0