Kase गतिशील स्टॉप लॉस रणनीति

लेखक:चाओझांग, दिनांक: 2023-09-13 14:08:47
टैगः

यह रणनीति श्री केसे के गतिशील स्टॉप लॉस दृष्टिकोण पर आधारित है, जो लाभ और हानि को संतुलित करने के लिए इष्टतम स्टॉप लॉस खोजने और लाभ स्तर लेने के लिए मूल्य की गतिशील सीमा की गणना करता है।

रणनीति तर्क:

  1. मूल्य के गतिशील सीमा सूचकांक RWH और RWL की गणना करें।

  2. RWH और RWL से विचलन स्तर सूचकांक Pk प्राप्त करें।

  3. जब Pk>0, विचलन स्तर के आधार पर स्टॉप लॉस की गणना करें. जब Pk<0, लाभ लेने की गणना करें.

  4. विचलन गुणक आम तौर पर 1-3 मानक विचलन के बीच होता है।

  5. जब कीमत स्टॉप लॉस/प्रॉफिट को छूती है तो विपरीत स्थिति लें।

लाभः

  1. गतिशील स्टॉप/लाभ बदलती अस्थिरता के अनुकूल होते हैं।

  2. न तो बहुत तंग और न ही बहुत ढीली हैं।

  3. गणितीय दृष्टिकोण भावनात्मक और व्यक्तिपरक निर्णयों से बचता है।

जोखिमः

  1. स्टॉप गणना में देरी, संभावित रूप से सबसे अच्छा स्टॉप समय याद आ रहा है।

  2. स्टॉप और लक्ष्यों को संतुलित करने के लिए पैरामीटर ट्यूनिंग की आवश्यकता है।

  3. घाटे के आकार पर कोई सीमा नहीं, बड़े घाटे के कारोबार का जोखिम होता है।

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


/*backtest
start: 2023-01-01 00:00:00
end: 2023-04-15 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 09/10/2019
//  The Kase Dev Stops system finds the optimal statistical balance between letting profits run, 
//  while cutting losses.  Kase DevStop seeks an ideal stop level by accounting for volatility (risk),
//  the variance in volatility (the change in volatility from bar to bar), and volatility skew 
//  (the propensity for volatility to occasionally spike incorrectly).
//
//  Kase Dev Stops are set at points at which there is an increasing probability of reversal against 
//  the trend being statistically significant based on the log normal shape of the range curve.  
//  Setting stops will help you take as much risk as necessary to stay in a good position, but not more.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Kase Dev Stops Backtest", overlay = true)
Length = input(30, minval=2, maxval = 100)
Level = input(title="Trade From Level", defval=4, options=[1, 2, 3, 4])
reverse = input(false, title="Trade reverse")
RWH = (high - low[Length]) / (atr(Length) * sqrt(Length))
RWL = (high[Length] - low) / (atr(Length) * sqrt(Length))
Pk = wma((RWH-RWL),3)
AVTR = sma(highest(high,2) - lowest(low,2), 20)
SD = stdev(highest(high,2) - lowest(low,2),20)
Val4 = iff(Pk>0, highest(high-AVTR-3*SD,20), lowest(low+AVTR+3*SD,20))
Val3 = iff(Pk>0, highest(high-AVTR-2*SD,20), lowest(low+AVTR+2*SD,20))
Val2 = iff(Pk>0, highest(high-AVTR-SD,20), lowest(low+AVTR+SD,20))
Val1 = iff(Pk>0, highest(high-AVTR,20), lowest(low+AVTR,20))
ResPrice = iff(Level == 4, Val4,
             iff(Level == 3, Val3,
               iff(Level == 2, Val2,
                 iff(Level == 1, Val1, Val4))))
pos = iff(close < ResPrice , -1, 1)
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1 , 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )

अधिक