बादलों से परे की रणनीति

लेखक:चाओझांग, दिनांकः 2023-11-03 16:10:33
टैगः

img

अवलोकन

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

रणनीति तर्क

  1. एटीआर अवधि के भीतर उच्चतम और निम्नतम कीमतों का औसत आधार रेखा के रूप में गणना कीजिए।

  2. कारक गुणक के आधार पर ऊपरी और निचले बैंड की गणना करें।

  3. जब बंद ऊपरी बैंड के ऊपर है, 1 के रूप में चिह्नित करें; निचले बैंड के नीचे, -1 के रूप में चिह्नित करें। अन्यथा, पिछली स्थिति को बनाए रखें।

  4. ऊपरी/नीचे बैंड के सापेक्ष बंद मूल्य की स्थिति के आधार पर स्टॉप लॉस लाइन को गतिशील रूप से समायोजित करें।

  5. ऊपरी/नीचे बैंड अंतराल के एक निश्चित प्रतिशत के आधार पर बादल परत सीमा की गणना करें।

  6. लंबे समय के लिए, सुपर ट्रेंड -1 है जब बंद करने की जरूरत < खुला है।

  7. पिछले बार के बंद मूल्य पर लॉन्ग के लिए लिमिट खरीद ऑर्डर दें। शॉर्ट के लिए लिमिट बिक्री ऑर्डर दें।

  8. समय सीमा से फ़िल्टर करें, सभी उपलब्ध पदों को बंद करें।

लाभ विश्लेषण

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

  1. सुपर ट्रेंड संवेदनशील है और प्रवृत्तियों को दृढ़ता से ट्रैक करता है।

  2. क्लाउड लेयर फ़िल्टर झूठे ब्रेकआउट से होने वाले नुकसान को कम करता है।

  3. मोमबत्तियों का रंग उलटा होने से बचाता है।

  4. लिमिट ऑर्डर स्लिप के प्रभाव को कम करते हैं और जीत की दर को बढ़ाते हैं।

  5. अनुकूलन योग्य समय सीमा और स्थिति प्रबंधन विभिन्न व्यापारिक आवश्यकताओं के अनुरूप है।

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

कुछ जोखिम भी हैं जिन पर ध्यान दिया जाना चाहिए:

  1. अनुचित सुपर ट्रेंड मापदंड अत्यधिक संवेदनशीलता और whipsaws का कारण बन सकता है।

  2. अत्यधिक बादल सीमा वैध ब्रेकआउट संकेतों को फ़िल्टर कर सकती है, जिससे लाभप्रदता प्रभावित हो सकती है।

  3. उच्च अस्थिरता के दौरान सीमा आदेशों को नहीं भरा जा सकता है, अवसरों को याद किया जा सकता है।

  4. कोई स्टॉप लॉस प्रणालीगत जोखिम और भारी नुकसान से पूरी तरह बच नहीं सकता।

  5. बड़ी स्थिति का आकार भी नुकसान को बढ़ाता है। जोखिम को नियंत्रित करने की आवश्यकता है।

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

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

  1. सर्वोत्तम सुपर ट्रेंड मापदंडों के लिए विभिन्न बाजारों और साधनों का परीक्षण करें।

  2. बाजार की अस्थिरता के आधार पर स्टॉप लॉस स्तर को गतिशील रूप से समायोजित करें।

  3. शोर फ़िल्टरिंग और सिग्नल प्रतिधारण को संतुलित करने के लिए क्लाउड रेंज को अनुकूलित करें.

  4. बाजार की स्थितियों के आधार पर गतिशील रूप से स्थिति आकार मॉड्यूल जोड़ें।

  5. बाजार की लय में अनुकूल होने के लिए विभिन्न ट्रेडिंग सत्रों के लिए अलग-अलग पैरामीटर सेट का उपयोग करें।

  6. अन्य संकेतकों के साथ संयोजन में परीक्षण की प्रभावशीलता।

निष्कर्ष

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


/*backtest
start: 2023-10-03 00:00:00
end: 2023-11-02 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Noro
//2018

//@version=2
strategy("Noro's SuperTrend Strategy v2.0 Limit", shorttitle = "STL str", 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 = 0.0
dn = 0.0
up := Trend != 1 ? 0 : Trend == 1 and close < open ? close : up[1]
dn := Trend != -1 ? close * 1000 : Trend == -1 and close > open ? close : dn[1]

//Trading
size = strategy.position_size
lot = 0.0
lot := size != size[1] ? strategy.equity / close * capital / 100 : lot[1]
if true
    strategy.entry("Long", strategy.long, needlong ? lot : 0, limit = up, when = (Trend == 1 and time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
    strategy.entry("Short", strategy.short, needshort ? lot : 0, limit = dn, when = (Trend == -1 and time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))

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

अधिक