दोहरी चलती औसत मूल्य ब्रेकआउट रणनीति


निर्माण तिथि: 2023-11-21 15:33:52 अंत में संशोधित करें: 2023-11-21 15:33:52
कॉपी: 1 क्लिक्स: 601
1
ध्यान केंद्रित करना
1617
समर्थक

दोहरी चलती औसत मूल्य ब्रेकआउट रणनीति

अवलोकन

इस रणनीति में दो चलती औसत का उपयोग किया जाता है ताकि कीमतों के रुझान और टूटने का पता लगाया जा सके। जब कीमत ऊपर की ओर बढ़े तो खाली करें, और जब कीमत नीचे की ओर बढ़े तो अधिक करें, और जोखिम को नियंत्रित करने के लिए स्टॉप लॉस एक्जिट सेट करें।

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

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

श्रेष्ठता विश्लेषण

इस रणनीति के निम्नलिखित फायदे हैं:

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

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

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

  1. दोहरी पटरी के टूटने से लगातार घाटे का खतरा होता है। घाटे को नियंत्रित करने के लिए स्टॉपलॉस एक्जिट सेट किया जा सकता है।
  2. ट्रेडमार्क के प्रवेश के समय, ओवर-ट्रेडिंग का जोखिम उत्पन्न हो सकता है। ऊपर और नीचे की पटरी के बीच उचित छूट दी जा सकती है।
  3. सीमित मूल्य सूची के कारण खरीदारी के कुछ अवसरों को याद किया जा सकता है। बाजार मूल्य सूची का उपयोग करने पर विचार करें।

अनुकूलन दिशा

इस रणनीति को निम्नलिखित पहलुओं से अनुकूलित किया जा सकता हैः

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

संक्षेप

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

रणनीति स्रोत कोड
/*backtest
start: 2023-11-13 00:00:00
end: 2023-11-20 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Noro
//2018

//@version=3
strategy(title = "Noro's Shift MA Strategy v1.0", shorttitle = "Shift MA str 1.0", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)

//Settings
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot, %")
per = input(3, defval = 1, minval = 1, maxval = 1000, title = "Length")
src = input(ohlc4, title = "Source")
buylevel = input(-5.0, defval = -5.0, minval = -100, maxval = 0, title = "Buy line (lime)")
selllevel = input(0.0, defval = 0.0, minval = -100, maxval = 100, title = "Sell line (red)")
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")

//SMAs
sma = sma(src, per) 
buy = sma * ((100 + buylevel) / 100)
sell = sma * ((100 + selllevel) / 100)
plot(buy, linewidth = 2, color = lime, title = "Buy line")
plot(sell, linewidth = 2, color = red, title = "Sell line")

//Trading
size = strategy.position_size
lot = 0.0
lot := size == 0 ? strategy.equity / close * capital / 100 : lot[1]

if (not na(close[per])) and size == 0
    strategy.entry("L", strategy.long, lot, limit = buy)
    
if (not na(close[per]))    
    strategy.entry("Close", strategy.short, 0, limit = sell)

if time > timestamp(toyear, tomonth, today, 23, 59)
    strategy.close_all()