संसाधन लोड हो रहा है... लोड करना...

ग्रिडिएंट ट्रेलिंग स्टॉप लॉस रणनीति

लेखक:चाओझांग, दिनांकः 2023-10-25 14:56:28
टैगः

img

अवलोकन

ग्रेडिएंट ट्रेलिंग स्टॉप लॉस रणनीति जोखिम नियंत्रण और लाभ लेने को संतुलित करने के लिए स्टॉप लॉस लाइन को गतिशील रूप से समायोजित करती है। यह स्टॉप लॉस लाइन की गणना करने के लिए औसत सच्ची सीमा (एटीआर) का उपयोग करता है और अनावश्यक स्टॉप आउट को कम करते हुए लाभ की रक्षा करते हुए प्रभावी रूप से मूल्य रुझानों को ट्रैक करता है। यह रणनीति मजबूत रुझान वाले शेयरों के लिए अच्छी तरह से काम करती है और स्थिर रिटर्न उत्पन्न कर सकती है।

सिद्धांत

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

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

लाभ

  • बाजार की स्थितियों के आधार पर गतिशील ट्रेलिंग स्टॉप लॉस स्टॉप दूरी को समायोजित करता है
  • एटीआर बाजार की अस्थिरता के आधार पर स्टॉप दूरी की गणना करता है
  • व्यापार को स्वचालित करने के लिए सरल और आसान
  • विभिन्न परिसंपत्तियों के लिए अनुकूलन योग्य एटीआर अवधि और स्टॉप लॉस कारक
  • स्टॉप लॉस और प्रॉफिट लेने के बीच संतुलन
  • अनावश्यक रुकावटों को कम करना

जोखिम

  • उचित एटीआर मापदंडों का चयन महत्वपूर्ण है
  • बहुत करीब स्टॉप लॉस अनावश्यक स्टॉप आउट को बढ़ा सकता है
  • बहुत अधिक स्टॉप लॉस जोखिमों को नियंत्रित करने में विफल हो सकता है
  • रणनीति ही बाजार के रुझानों को निर्धारित नहीं कर सकती
  • एटीआर अवधि और कारक सेटिंग्स का मूल्यांकन करने की आवश्यकता

सुधार

  • झूठे संकेतों को कम करने के लिए चलती औसत जैसे फ़िल्टर जोड़ें
  • मशीन लर्निंग के माध्यम से एटीआर अवधि और स्टॉप लॉस फैक्टर का स्वतः अनुकूलन
  • मुनाफे में लॉक करने के लिए लाभ लेने की रणनीति शामिल करें
  • खरीदने/बेचने के संकेतों को सत्यापित करने के लिए अन्य संकेतकों के साथ संयोजन
  • अनुसंधान बेहतर एटीआर गणना या गतिशील एटीआर अवधि
  • अन्य गतिशील ट्रेलिंग स्टॉप एल्गोरिदम की खोज करें
  • स्टॉप लॉस प्रभाव को और अधिक अनुकूलित करें

निष्कर्ष

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


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

//@version=5
strategy("Supertrend Strategy, by Ho.J.", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=15)

// 백테스팅 시작일과 종료일 입력
startYear = input(2020, title="Start Year")
startMonth = input(1, title="Start Month")
startDay = input(1, title="Start Day")

endYear = input(9999, title="End Year")
endMonth = input(12, title="End Month")
endDay = input(31, title="End Day")

// 백테스팅 시간 범위 확인
backtestingTimeBool = (year >= startYear and month >= startMonth and dayofmonth >= startDay) and (year <= endYear and month <= endMonth and dayofmonth <= endDay)

atrPeriod = input(10, "ATR Length")
factor = input.float(3.0, "Factor", step = 0.01)

[_, direction] = ta.supertrend(factor, atrPeriod)

var bool longCondition = false
var bool shortCondition = false

if backtestingTimeBool
    prevDirection = direction[1]
    if direction < 0
        longCondition := false
        shortCondition := true
    else if direction > 0
        longCondition := true
        shortCondition := false

if longCondition
    strategy.entry("My Long Entry Id", strategy.long)

if shortCondition
    strategy.entry("My Short Entry Id", strategy.short)

plot(strategy.equity, title="equity", color=color.rgb(255, 255, 255), linewidth=2, style=plot.style_area)

अधिक