
इस रणनीति का नाम MADEFlex है, जो एक लचीली और नियंत्रित मात्रात्मक व्यापारिक समाधान प्रदान करने के लिए एक लचीली और नियंत्रित मात्रात्मक व्यापारिक समाधान प्रदान करने के लिए एक चलती औसत लिफाफा और औसत वास्तविक सीमा अनुवर्ती रोकथाम पर आधारित एक लचीली मात्रात्मक व्यापारिक रणनीति है।
इस रणनीति के केंद्र में चलती औसत रेखा MADE सूचकांक है। MADE सूचकांक एक चलती औसत बनाता है जो एक प्रतिशत कारक के साथ विस्थापन लागू करने वाले सूचकांक द्वारा बनाया जाता है। जब कीमत पटरी से उतरती है, तो यह एक बेचने का संकेत देता है; जब कीमत पटरी से उतरती है, तो यह एक खरीदने का संकेत देता है। यह रणनीति MADE सूचकांक को औसत वास्तविक सीमा के साथ जोड़ती है।
विशेष रूप से, MADE सूचकांक में 3 पैरामीटर होते हैंः चक्र अवधि, अपरलाइन प्रतिशत प्रति एबी और डाउनलाइन प्रतिशत प्रति बीएल। चक्र अवधि ईएमए की अवधि की लंबाई को निर्धारित करती है। ईएमए की ऊपरी और निचली दूरी प्रतिशत कारक द्वारा नियंत्रित की जाती है। एटीआर अनुगामी हानि भाग मुख्य रूप से एटीआर चक्र nATRPeriod और एटीआर गुणांक nATRMultip के माध्यम से निर्धारित किया जाता है। जब कीमत एक ऊपरी K लाइन की रोकथाम हानि रेखा से अधिक होती है, तो रोकथाम हानि रेखा को कीमत से घटाकर एक निश्चित एटीआर हानि के रूप में समायोजित किया जाता है; जब कीमत एक ऊपरी K लाइन की रोकथाम हानि रेखा से कम होती है, तो रोकथाम हानि रेखा को कीमत के साथ जोड़कर एक निश्चित एटीआर हानि के रूप में समायोजित किया जाता है।
अंततः, MADE सूचक सिग्नल और ATR अनुवर्ती स्टॉप लॉस स्थिति फ़िल्टरिंग के संयोजन के माध्यम से, खरीद और बेचने के संकेत उत्पन्न होते हैं। रिवर्स ऑपरेशन को रिवर्स ट्रेडिंग इनपुट स्विच रिवर्स द्वारा किया जा सकता है।
MADEFlex रणनीति के निम्नलिखित फायदे हैंः
संकेतक संकेत और रोकथाम तंत्र के संयोजन के साथ, अधिक विश्वसनीय। MADE संकेतक स्वयं गलत संकेत उत्पन्न करने के लिए आसान है। एटीआर अनुवर्ती रोकथाम के संयोजन के साथ, कुछ शोर को प्रभावी ढंग से फ़िल्टर किया जा सकता है।
विन्यस्त मापदंडों के साथ, नियंत्रण लचीला है। MADE और ATR मापदंडों को समायोजित करने के लिए, सिग्नल की मात्रा और गुणवत्ता को नियंत्रित करें।
रिवर्स ऑपरेशन का समर्थन करता है। रिवर्स स्विच के माध्यम से रिवर्स ट्रेडिंग, रणनीतिक उपयोग के परिदृश्य को समृद्ध करता है।
विज़ुअलाइज़ेशन स्टॉपर इंट्यूसिव। स्टॉप लाइन को चित्रित करके, इंट्यूसिव स्टॉप प्रभाव का आकलन करें।
MADEFlex रणनीति के साथ निम्नलिखित जोखिम भी हैं:
MADE सूचकांक पैरामीटर गलत है, जो बहुत सारे गलत संकेत दे सकता है। सही पैरामीटर निर्धारित करने के लिए सावधानीपूर्वक परीक्षण की आवश्यकता है।
एटीआर को रोकना बहुत आसान है, और यह एक मौका चूक सकता है। उचित एटीआर गुणांक का निर्धारण करने के लिए परीक्षण की सिफारिश की जाती है।
रिवर्स ऑपरेशन जोखिम भरा है। विशेष रूप से उच्च अस्थिरता के दौरान, रिवर्स ऑपरेशन से नुकसान का जोखिम बढ़ सकता है। सावधानी से उपयोग करने की आवश्यकता है।
यदि कोई रोक नहीं है, तो अधिक नुकसान हो सकता है। चरम मामलों में, कोई रोक नहीं है, तो अधिक नुकसान हो सकता है।
MADEFlex रणनीति को निम्नलिखित दिशाओं से अनुकूलित किया जा सकता हैः
MADE पैरामीटर का अनुकूलन करें, सिग्नल की गुणवत्ता में सुधार करें। विभिन्न चक्रों, प्रतिशत पैरामीटर का परीक्षण करें, और अधिक विश्वसनीय पैरामीटर संयोजन ढूंढें।
एटीआर रोक-लाग पैरामीटर का अनुकूलन करें और बेहतर रोक-लाग प्रभाव प्राप्त करें। एटीआर चक्र और एटीआर गुणांक का परीक्षण करें और अधिक उपयुक्त संयोजन निर्धारित करें।
अन्य फ़िल्टरिंग शर्तों को जोड़ना, जो गलत संकेतों को और कम करता है। उदाहरण के लिए, अस्थिरता दर के संकेतकों के संयोजन के साथ एक और फ़िल्टरिंग सिग्नल।
स्टॉप-आउट रणनीति को जोड़ें, जब मुनाफा एक निश्चित स्तर तक पहुंच जाता है तो स्टॉप-आउट करें। मुनाफे को लॉक कर सकते हैं, जोखिम को नियंत्रित कर सकते हैं।
मशीन सीखने के तरीकों के साथ गतिशील अनुकूलन पैरामीटर। वास्तविक समय में अनुकूलन पैरामीटर, रणनीति को अधिक लचीला बनाने के लिए, जैसे कि सुदृढीकरण सीखने का उपयोग करना।
MADEFlex रणनीति सफलतापूर्वक एक व्यापारिक संकेत और औसत वास्तविक सीमा के साथ एक व्यापारिक संकेत को जोड़ती है। समायोज्य मापदंडों के माध्यम से एक लचीला और नियंत्रित मात्रात्मक व्यापारिक समाधान प्राप्त किया गया है। यह रणनीति उच्च विश्वसनीयता, मजबूत नियंत्रण क्षमता है, जो एक निश्चित मात्रात्मक आधार के साथ उपयोगकर्ता के उपयोग और अनुकूलन के लिए उपयुक्त है। आगे के अनुकूलन के साथ, यह अधिक उल्लेखनीय रणनीति प्रदर्शन उत्पन्न करने की उम्मीद है।
/*backtest
start: 2022-12-01 00:00:00
end: 2023-12-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 27/09/2022
// Moving Average Displaced Envelope. These envelopes are calculated
// by multiplying percentage factors with their displaced expotential
// moving average (EMA) core.
// How To Trade Using:
// Adjust the envelopes percentage factors to control the quantity and
// quality of the signals. If a previous high goes above the envelope
// a sell signal is generated. Conversely, if the previous low goes below
// the envelope a buy signal is given.
//
// Average True Range Trailing Stops Strategy, by Sylvain Vervoort
// The related article is copyrighted material from Stocks & Commodities Jun 2009
//
// ATR TS used by filter for MADE signals.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title='Moving Average Displaced Envelope & ATRTS', shorttitle='MADE+ATR', overlay=true)
tradeDirection = input.string('Both', title='Trade Direction', options=['Both', 'Long', 'Short'])
Price = input(title='Source', defval=close)
Period = input.int(defval=9, minval=1)
perAb = input.float(title='Percent above', defval=.5, minval=0.01, step=0.1)
perBl = input.float(title='Percent below', defval=.5, minval=0.01, step=0.1)
disp = input.int(title='Displacement', defval=13, minval=1)
nATRPeriod = input(15)
nATRMultip = input(2)
useATR = input(false, title='ATR Filter')
reverse = input(false, title='Trade reverse')
longAllowed = tradeDirection == 'Long' or tradeDirection == 'Both'
shortAllowed = tradeDirection == 'Short' or tradeDirection == 'Both'
pos = 0
sEMA = ta.ema(Price, Period)
top = sEMA[disp] * ((100 + perAb) / 100)
bott = sEMA[disp] * ((100 - perBl) / 100)
xATR = ta.atr(nATRPeriod)
xHHs =ta.sma(ta.highest(nATRPeriod), nATRPeriod)
xLLs =ta.sma(ta.lowest(nATRPeriod),nATRPeriod)
nSpread = (xHHs - xLLs) / 2
nLoss = nATRMultip * xATR
var xATRTrailingStop = 0.0
xATRTrailingStop := close > nz(xATRTrailingStop[1], 0) and close[1] > nz(xATRTrailingStop[1], 0) ? math.max(nz(xATRTrailingStop[1]), close - nLoss) :
close < nz(xATRTrailingStop[1], 0) and close[1] < nz(xATRTrailingStop[1], 0) ? math.min(nz(xATRTrailingStop[1]), close + nLoss) :
close > nz(xATRTrailingStop[1], 0) ? close - nLoss : close + nLoss
ATRLong = close > xATRTrailingStop ? true : false
ATRShort = close < xATRTrailingStop ? true : false
iff_1 = close > top ? 1 : pos[1]
pos := close < bott ? -1 : iff_1
iff_2 = reverse and pos == -1 ? 1 : pos
possig = reverse and pos == 1 ? -1 : iff_2
clr = strategy.position_size
if possig == 1
if longAllowed and ATRLong
strategy.entry('Long', strategy.long)
else
if ATRLong or strategy.position_size > 0
strategy.close_all()
if possig == -1
if shortAllowed and ATRShort
strategy.entry('Short', strategy.short)
else
if ATRShort or strategy.position_size < 0
strategy.close_all()
if possig == 0
strategy.close_all()
plot(xATRTrailingStop[1], color=color.blue, title='ATR Trailing Stop')
barcolor(clr < 0 ? #b50404 : clr > 0 ? #079605 : #0536b3)