इस रणनीति को
यह रणनीति VWAP संकेतक के माध्यम से वर्तमान औसत लेनदेन मूल्य की गणना करती है। VWAP औसत मूल्य का प्रतिनिधित्व करता है और व्यापारिक मात्रा के लिए कारोबार का अनुपात है। VWAP संकेतक वर्तमान मूल्य और ऐतिहासिक औसत व्यापारिक मूल्य के बीच विचलन की डिग्री को दर्शाता है।
यह रणनीति VWAP सूचक की चलती औसत रेखा और इसके ऑफसेट चैनल लाइनों का उपयोग करती है। ऑफसेट चैनल लाइनों के अनुपात को पैरामीटर
इस रणनीति की पैरामीटर सेटिंग्स पूरी तरह से चैनल ट्रेडिंग के विचार को दर्शाती हैं। उपयोगकर्ता अपनी प्राथमिकताओं के अनुसार कुल परिसंपत्तियों के प्रतिशत के रूप में चैनल चौड़ाई और पदों के आकार को समायोजित कर सकते हैं, जिससे विभिन्न डिग्री की ट्रेडिंग आवृत्ति का एहसास होता है।
इस व्यापारिक रणनीति के निम्नलिखित लाभ हैंः
चूंकि वीडब्ल्यूएपी संकेतक औसत मूल्य स्तर को अच्छी तरह से प्रतिबिंबित कर सकता है, इसलिए इसकी चैनल लाइनों के आधार पर ट्रेडिंग प्रभावी रूप से मूल्य मध्य बिंदुओं को लॉक कर सकती है और अल्पकालिक उतार-चढ़ाव से पूर्वाग्रह से बच सकती है। उसी समय, विभिन्न मापदंडों के साथ चैनलों को मिलाकर और बैचों में स्थिति बनाने से जोखिमों को प्रभावी ढंग से नियंत्रित किया जा सकता है और मजबूर परिसमापन के परिणामस्वरूप एकतरफा जोखिम एकाग्रता को रोका जा सकता है। अंत में, वीडब्ल्यूएपी चलती औसत रेखा के प्रतिगमन के पास समय पर लाभ लेने से मूल्य उलटों के कारण होने वाले नुकसान को कम किया जा सकता है।
इस रणनीति में कुछ जोखिम भी हैं जिन पर ध्यान दिया जाना चाहिए:
वीडब्ल्यूएपी संकेतक उच्च आवृत्ति व्यापार अस्थिरता के प्रति असंवेदनशील है। चरम मूल्य अंतराल या अल्पकालिक असामान्यताओं के मामले में, यह अभी भी अनावश्यक व्यापार संकेतों और नुकसान को ट्रिगर करेगा। इसके अलावा, यदि चैनल मापदंडों को बहुत ढीला सेट किया जाता है, तो यह आसानी से अमान्य मूल्य पैठ संकेतों का गठन करेगा। अंत में, यदि प्रतिगमन संचालन में बंद होने वाली पदों की सीमा बहुत व्यापक है, तो यह लाभ लेने के लिए सबसे अच्छा समय याद कर सकता है और फंसे हुए नुकसान का कारण बन सकता है।
इसके विपरीत उपायों में पैरामीटर सेटिंग्स का उचित मूल्यांकन करना और चैनल पैरामीटर को उचित रूप से समायोजित करना है; जबकि मूल्य विसंगतियों का न्याय करने और संकेतों का अंधा पालन करने से बचने के लिए अन्य संकेतकों का संयोजन करना है; अंत में बेहतर लाभ लेने के प्रभावों को प्राप्त करने के लिए विभिन्न स्तरों और प्रतिगमन सीमाओं के चैनलों के पैरामीटर अनुकूलन का मूल्यांकन करना है।
इस रणनीति को निम्नलिखित दिशाओं में अनुकूलित किया जा सकता हैः
अधिक स्तरों की चैनल लाइनें जोड़ी जा सकती हैं और अधिक स्थिर ट्रेडिंग प्रभाव प्राप्त करने के लिए अनुकूलन के लिए मापदंडों को जोड़ा जा सकता है। इसके अलावा, ट्रेडिंग घाटे का कारण बनने वाले अमान्य मूल्य अंतराल से बचने के लिए ट्रेडिंग वॉल्यूम जजमेंट नियम जोड़े जा सकते हैं। अंत में, स्टॉप लॉस नियम भी सेट किए जा सकते हैं ताकि जब पदों का नुकसान एक निश्चित प्रतिशत तक पहुंच जाए, तो जोखिमों को प्रभावी ढंग से नियंत्रित करते हुए, बाहर निकलने वाली पदों के लिए स्टॉप लॉस सेट करें।
यह रणनीति अपेक्षाकृत स्थिर ट्रेडिंग रणनीति प्राप्त करने के लिए मूल्य चैनलों के साथ वीडब्ल्यूएपी संकेतक को जोड़ती है। रणनीति पैरामीटर सेटिंग्स उपयोगकर्ताओं के लिए अपनी पसंद के अनुसार समायोजित करने के लिए लचीली हैं। यह रणनीति प्रभावी रूप से मूल्य मध्य बिंदुओं की दिशा निर्धारित कर सकती है। पैरामीटर संयोजन और बैच निर्माण के माध्यम से स्थिर लाभप्रदता प्राप्त की जा सकती है। हालांकि अभी भी रणनीति में सुधार की जगह है, कुल मिलाकर यह उच्च व्यावहारिकता के साथ एक मात्रात्मक ट्रेडिंग रणनीति है।
/*backtest start: 2023-02-12 00:00:00 end: 2024-02-18 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy(title = "VWAP Bands Backtest", shorttitle = "VWAP Bands Backtest", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 3) //Settings lotsizelong = input(100, defval = 100, minval = 0, maxval = 10000, title = "Lot long, %") lotsizeshort = input(100, defval = 100, minval = 0, maxval = 10000, title = "Lot short, %") short1 = input(true, title = "short 1") long1 = input(true, title = "long 1") shortlevel1 = input(1.0, title = "Short line 1") longlevel1 = input(-1.0, title = "Long line 1") needoffset = input(true, title = "Offset") 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") //Variables size = strategy.position_size mult = 1 / syminfo.mintick truetime = true //VWAP ma = vwap(hlc3) //Levels longline1 = long1 ? round(ma * ((100 + longlevel1) / 100) * mult) / mult : close shortline1 = short1? round(ma * ((100 + shortlevel1) / 100) * mult) / mult : close //Lines colorlong1 = long1 ? color.lime : na colorshort1 = short1 ? color.red : na offset = needoffset ? 1 : 0 plot(shortline1, offset = offset, color = colorshort1, title = "Short line 1") plot(ma, offset = offset, color = color.blue, title = "MA line") plot(longline1, offset = offset, color = colorlong1, title = "Long line 1") //Trading lotlong = 0.0 lotshort = 0.0 lotlong := size == 0 ? (strategy.equity / close) * (lotsizelong / 100) : lotlong[1] lotshort := size == 0 ? (strategy.equity / close) * (lotsizeshort / 100) : lotshort[1] if ma > 0 if lotlong > 0 lotslong = 0.0 lotslong := strategy.position_size > 0 ? round(strategy.position_size / lotlong) : 0.0 strategy.entry("L1", strategy.long, lotlong, limit = longline1, when = (lotslong == 0 and long1 and truetime)) if lotshort > 0 lotsshort = 0.0 lotsshort := strategy.position_size < 0 ? round(strategy.position_size / lotshort) : 0.0 strategy.entry("S1", strategy.short, lotshort, limit = shortline1, when = (lotsshort == 0 and short1 and truetime)) if strategy.position_size > 0 strategy.exit("TPL", "L1", limit = ma) if strategy.position_size < 0 strategy.exit("TPS", "S1", limit = ma) if time > timestamp(toyear, tomonth, today, 23, 59) strategy.close_all() strategy.cancel("L1") strategy.cancel("S1") strategy.cancel("TPL") strategy.cancel("TPS")