प्रवृत्ति अनुसरण पर आधारित गति ब्रेकआउट रणनीति


निर्माण तिथि: 2024-01-05 13:38:18 अंत में संशोधित करें: 2024-01-05 13:38:18
कॉपी: 0 क्लिक्स: 695
1
ध्यान केंद्रित करना
1621
समर्थक

प्रवृत्ति अनुसरण पर आधारित गति ब्रेकआउट रणनीति

अवलोकन

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

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

यह रणनीति मुख्य रूप से सुपरट्रेंड संकेतक (SuperTrend) पर निर्भर करती है, जो वर्तमान प्रवृत्ति की दिशा को निर्धारित करती है। सुपरट्रेंड संकेतक औसत वास्तविक तरंग दैर्ध्य (ATR) की गणना करता है, जो ट्रैक पर और ट्रैक के नीचे होता है, जब कीमत ट्रैक पर होती है तो यह एक आशावादी संकेत होता है, और जब कीमत ट्रैक से नीचे होती है तो यह एक नकारात्मक संकेत होता है।

जब सुपरट्रेंड सूचक को ऊपर की ओर जाने के लिए निर्धारित किया जाता है, तो यदि यह K लाइन लाल इकाई है (कीमत बंद होने की कीमत से कम है), तो अधिक करें; जब सुपरट्रेंड सूचक को नीचे की ओर जाने के लिए निर्धारित किया जाता है, तो यदि यह K लाइन हरी इकाई है (कीमत बंद होने की कीमत से अधिक है), तो शून्य करें। इस प्रकार ट्रेंड ट्रैकिंग के तहत गतिशीलता को तोड़ने का व्यापार किया जाता है।

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

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

लाभ इस प्रकार हैंः

  1. प्रवृत्ति निर्णय और गतिशीलता विशेषता के संयोजन के साथ, फ़िल्टरिंग झूठी सफलता
  2. ट्रेडों को ट्रैक करें और विपरीत ट्रेडों से बचें
  3. उच्च लाभप्रदता

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

इस रणनीति में मुख्य रूप से निम्नलिखित जोखिम हैं:

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

यह इस प्रकार है:

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

अनुकूलन दिशा

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

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

संक्षेप

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

रणनीति स्रोत कोड
/*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"}]
*/

//Noro
//2018

//@version=2
strategy("Noro's SuperTrend Strategy v1.0", shorttitle = "ST str 1.0", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot, %")
cloud = input(25, defval = 25, minval = 5, maxval = 50, title = "cloud, % of ATR")
Factor = input(title = "Super Trend", defval = 3, minval = 1, maxval = 100)
ATR = input(title = "ATR", defval = 7, minval = 1,maxval = 100)
centr = input(true, defval = true, title = "need center of ATR?")
border = input(false, defval = false, title = "need border?")
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")

//Super Trend ATR 1
src = close
Up=hl2-(Factor*atr(ATR))
Dn=hl2+(Factor*atr(ATR))
TUp=close[1]>TUp[1]? max(Up,TUp[1]) : Up
TDown=close[1]<TDown[1]? min(Dn,TDown[1]) : Dn
Trend = close > TDown[1] ? 1: close< TUp[1]? -1: nz(Trend[1],1)
Tsl1 = Trend==1? TUp: TDown
Tsl2 = Trend==1? TDown: TUp
limit = (Tsl1 - Tsl2) / 100 * cloud
upcloud = Tsl1 - limit
dncloud = Tsl2 + limit

//Cloud
linecolor = Trend == 1 ? green : red
centercolor = centr == true ? blue : na
cloudcolor = Trend == 1 ? green : red
cline = (Tsl1 + Tsl2) / 2
P1 = plot(Tsl1, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend ATR-1")
P2 = plot(Tsl2, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend ATR-2")
P3 = plot(cline, color = centercolor , style = line , linewidth = 1,title = "SuperTrend Center")
P4 = plot(upcloud, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend Center+1")
P5 = plot(dncloud, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend Center-1")
fill(P1, P4, color = linecolor == red ? red : lime, transp = 50)
fill(P2, P5, color = linecolor == red ? red : lime, transp = 50)

//Signals
up = Trend == 1 and close < open //and low < cline 
dn = Trend == -1 and close > open //and high > cline

//Trading
size = strategy.position_size
lot = 0.0
lot := size == 0 ? strategy.equity / close * capital / 100 : lot[1]
if up
    strategy.entry("Long", strategy.long, needlong ? lot : 0)

if dn
    strategy.entry("Short", strategy.short, needshort ? lot : 0)