यह रणनीति प्रवृत्ति को ट्रैक करने के लिए पिछले दिन के बंद मूल्य और एटीआर संकेतक के आधार पर लंबे और छोटे प्रवेश मूल्य स्तरों और स्टॉप लॉस मूल्य स्तरों को निर्धारित करती है। जब मूल्य प्रवेश मूल्य स्तरों को तोड़ता है, तो यह लंबा या छोटा हो जाता है, और स्टॉप लॉस या लाभ लेने पर पदों को समतल करता है।
यह रणनीति पिछले दिन के बंद मूल्य, उच्च मूल्य, निम्न मूल्य और एटीआर संकेतक का उपयोग प्रवेश मूल्य स्तरों और स्टॉप लॉस स्तरों की गणना करने के लिए करती है। विशिष्ट सूत्र निम्नलिखित हैंः
लंबी प्रविष्टि मूल्य स्तर TPup = पिछले दिन
शॉर्ट एंट्री प्राइस लेवल TPdown = पिछले दिन
लॉन्ग स्टॉप लॉस लेवल स्लैप = पिछले दिन का क्लोजर + एटीआर * 0.2
शॉर्ट स्टॉप लॉस लेवल sldown = पिछले दिन
दीर्घ लाभ लेवललाभ लेवलअप = पिछले दिन के निम्न स्तर + एटीआर * 1.7
शॉर्ट टेक प्रॉफिट लेवल प्रॉफिट लेवलडाउन = पिछले दिन
जब कीमत TPup के माध्यम से टूटती है, तो 10 लॉट लंबी हो जाती है। जब कीमत TPdown के माध्यम से टूटती है, तो 10 लॉट छोटी हो जाती है। फिर स्टॉप लॉस सेट करें और लाभ लें। स्टॉप लॉस ट्रिगर या लाभ लेने वाले ट्रिगर पर पोजीशन छोड़ें।
इस रणनीति के मुख्य लाभ इस प्रकार हैंः
एटीआर संकेतक का उपयोग बाजार की अस्थिरता के आधार पर गतिशील प्रवेश मूल्य स्तर और स्टॉप लॉस स्तर निर्धारित करने के लिए किया जाता है, जिससे ट्रेड बाजार की स्थितियों के अनुकूल होते हैं।
दिशा निर्धारित करने के लिए पिछले दिनों के बंद का उपयोग करना और विशिष्ट व्यापार स्तरों की पहचान करने के लिए एटीआर संकेतक के साथ संयोजन करना, वास्तविक समय में बहुत अधिक मूल्य शोर से भटकने से बचना।
प्रत्येक व्यापार के जोखिम को प्रभावी ढंग से नियंत्रित करने के लिए स्टॉप लॉस और ले लाभ दोनों तंत्र स्थापित करना।
इस रणनीति के मुख्य जोखिम निम्नलिखित हैंः
एटीआर द्वारा निर्धारित मूल्य स्तर बाजार की स्थितियों को सही ढंग से प्रतिबिंबित करने के लिए बहुत आदर्शवादी हो सकते हैं, जिससे अक्सर स्टॉप लॉस ट्रिगर हो सकते हैं। एटीआर के मापदंडों को समायोजित किया जा सकता है या स्टॉप लॉस रेंज को बढ़ाया जा सकता है।
पिछले दिन के बंद होने से भविष्य के रुझानों का निर्धारण नहीं हो सकता है। कठोर उलटफेर दिशागत विकल्पों को भ्रामक बना सकते हैं। रुझानों की पुष्टि करने के लिए अन्य संकेतकों का संयोजन किया जा सकता है।
स्टॉप लॉस और टेक प्रॉफिट को ट्रिगर करने के लिए हेरफेर किया जा सकता है, वास्तव में स्टॉप लॉस करने में विफल रहता है। बैच स्टॉप लॉस का उपयोग फंसने से बचने के लिए किया जा सकता है।
इस रणनीति को निम्नलिखित पहलुओं में अनुकूलित किया जा सकता हैः
एटीआर मापदंडों को अनुकूलित करना ताकि व्यापार के स्तर बाजार की अस्थिरता के साथ बेहतर ढंग से मेल खा सकें।
ट्रेडिंग रिवर्स से बचने के लिए ट्रेंड जजमेंट के तंत्र जोड़ें, उदाहरण के लिए एमए संकेतकों के साथ संयोजन।
लाभ लेने की सीमा को समायोजित करें, लाभप्रदता बनाए रखें जबकि लाभ लेने की संभावना को कम करें।
बैच स्टॉप लॉस और लाभ लेने को फंसने या खोने की संभावना को कम करने के लिए सेट करें।
रुझान चरणों में पदों को बढ़ाने के लिए स्थिति आकार व्यवस्था जोड़ें।
यह रणनीति पिछले दिन के बंद और एटीआर के आधार पर गतिशील व्यापार स्तर निर्धारित करती है ताकि प्रभावी रूप से रुझानों को ट्रैक किया जा सके। यह एकल व्यापार जोखिमों को नियंत्रित करने के लिए स्टॉप लॉस और ले लाभ का भी उपयोग करती है। अनुकूलन दिशाओं में पैरामीटर ट्यूनिंग, जजिंग तंत्र में सुधार, ले लाभ समायोजन और स्थिति आकार आदि शामिल हैं। सामान्य तौर पर, यह रणनीति अच्छे रुझान के बाद प्रभाव प्राप्त करती है।
/*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"}] */ //@version=3 strategy("PC with ATR Strategy (by Zhipengcfel)", shorttitle="PC_ATR", pyramiding=1, overlay=true) // Zhipengcfel's Previous day's close with ATR Strategy // // Version 1.0 // @copyright Idea by Zhipengcfel on June 29, 2017. //Previous day's close plus ATR strategy. //Buy (if breaking PC+ATR*0.8) or sell (if breaking PC-0.8*ATR). //This is just a demo vision and can not be used for real auto trading ///////////// ATR value ATRlength = input(14, minval=1, title="lookback length of ATR") //ATR = atr(ATRlength) ATR = request.security(syminfo.tickerid, 'D', atr(ATRlength)) ///////////// Entry levels and target levels entr = input(0.8, minval=0.1, step = 0.05, title="Entry level for ATR") tplevel = input(1.7, minval=0.1, step = 0.05, title="Exit level for ATR") yesterday = request.security(syminfo.tickerid, 'D', close[1]) dl = request.security(syminfo.tickerid, 'D', low[1]) dh = request.security(syminfo.tickerid, 'D', high[1]) TPup = yesterday+entr*ATR TPdown = yesterday-entr*ATR profitlevelup = dl+tplevel*ATR profitleveldown = dh-tplevel*ATR ///////////// Stop loss level sl = input( 0.2 ,minval=0.01, step = 0.05, title="Stop loss level for ATR") //82 for 2, 83 for 3 and more positions slup = yesterday+sl*ATR sldown = yesterday-sl*ATR ///////////// Starting year to backtest yer = input( 2014 , title="Backtest Starting year") ///////////// strategy: PC + ATR if (close > TPup) and (close < profitlevelup) strategy.entry("LONG", strategy.long, 10, comment="Buy", when = year > yer, oca_name="My oca") strategy.exit("Stopped", "LONG", stop = slup, limit= profitlevelup, oca_name="My oca") if (close < TPdown) and (close > profitleveldown) strategy.entry("SHORT", strategy.short, 10, comment="Sell", when = year > yer, oca_name="My oca") strategy.exit("Stopped", "SHORT", stop = sldown, limit= profitleveldown, oca_name="My oca")