
द्वि-चक्र अस्थिरता दर समायोजन ब्रेकआउट ट्रेडिंग सिस्टम एक मात्रात्मक रणनीति है जो प्रसिद्ध समुद्री डाकू ट्रेडिंग नियमों पर आधारित है, जो दो अलग-अलग समय अवधि (२० दिन और ५५ दिन) का उपयोग करके बाजार के ब्रेकआउट को पकड़ने के लिए और गतिशील स्थिति प्रबंधन के लिए अस्थिरता दर के संकेतकों के संयोजन का उपयोग करती है। यह प्रणाली प्रवृत्ति ट्रैकिंग, ब्रेकआउट ट्रेडिंग, अस्थिरता दर समायोजन स्थिति और पिरामिड वृद्धि जैसी कई मात्रात्मक ट्रेडिंग तकनीकों को एकीकृत करती है, जिसका उद्देश्य मध्यम और दीर्घकालिक बाजार की प्रवृत्ति को प्रभावी ढंग से पकड़ना है। रणनीति का मुख्य तर्क यह है कि कीमतों के उच्च या निम्न बिंदुओं को तोड़ने से पहले, अस्थिरता दर (एटीआर) की गणना करके, उचित स्थिति में प्रवेश करें, और प्रवृत्ति के निरंतर विकास के दौरान पिरामिड वृद्धि करें, और अंततः लघु-चक्र प्रतिबाधा ब्रेकआउट के माध्यम से नुकसान या लाभ उठाएं। यह रणनीति विशेष रूप से विशेष रूप से सोने जैसे विशेष प्रकार की संपत्ति के लिए उपयुक्त है।
कोड का विश्लेषण करने से पता चलता है कि इस रणनीति के मुख्य सिद्धांतों में निम्नलिखित शामिल हैंः
दोहरे चक्र में प्रवेशरणनीतिः दो प्रवेश प्रणाली का उपयोग करें - सिस्टम 1 20 दिन के उच्च / निम्न ब्रेक का उपयोग मुख्य प्रवेश संकेत के रूप में करता है; सिस्टम 2 पिछले ट्रेडिंग घाटे के बाद शुरू होता है, 55 दिन के उच्च / निम्न ब्रेक का उपयोग करके प्रवेश संकेत के रूप में करता है। यह डिजाइन बाजार की स्थिति के अनुसार प्रवेश संवेदनशीलता को स्वचालित रूप से समायोजित करने में सक्षम है।
अस्थिरता माप और स्थिति प्रबंधनरणनीतिः 20 दिन की औसत वास्तविक लहरों का उपयोग करें (ATR) बाजार में उतार-चढ़ाव के एक उपाय के रूप में, उचित स्थिति की गणना करें सूत्र के माध्यम सेः इकाई स्थिति = जोखिम राशि / (एन * बिंदु मूल्य) । जोखिम राशि खाते के हकदार लाभ से गुणा की जाती है, जो जोखिम का एक निर्धारित प्रतिशत है (डिफ़ॉल्ट 1%) । यह विधि विभिन्न उतार-चढ़ाव वाले वातावरण में एक समान जोखिम जोखिम को बनाए रखने के लिए सुनिश्चित करती है।
पिरामिड की स्थिति: जब कीमतें पहले से ही लाभप्रद स्थिति में अनुकूल दिशा में आगे बढ़ना जारी रखती हैं (कम से कम 0.5 एन की दूरी पर), तो रणनीति एक ही आकार की नई इकाइयों को जोड़ने की अनुमति देती है। यह पिरामिड स्टॉकिंग विधि मजबूत ट्रेंडिंग बाजारों में लाभप्रदता की क्षमता का विस्तार करने में सक्षम है।
लघु चक्र उलटा ब्रीजरणनीतिः 10 दिन के निचले/उच्च बिंदु का उपयोग करें जो कि अधिक/खाली स्थिति के लिए एक बाहर निकलने का संकेत है। जब कीमत 10 दिन के निचले बिंदु से नीचे गिरती है, तो सभी बहुमुखी पदों को खत्म कर दें; जब कीमत 10 दिन के उच्च बिंदु को तोड़ती है, तो सभी खाली पदों को खत्म कर दें।
सिस्टम स्विचिंग तंत्र: रणनीति स्वचालित रूप से ट्रेडों के परिणामों के आधार पर प्रवेश प्रणाली को समायोजित करती है। यदि किसी दिशा में व्यापार घाटे में है, तो अगले दिशा में उसी दिशा में व्यापार सिस्टम 2 ((55 दिन का चक्र) का उपयोग करेगा; लाभदायक व्यापार के बाद सिस्टम 1 ((20 दिन का चक्र) का उपयोग करना शुरू कर देगा।
इन सिद्धांतों के संयोजन के माध्यम से, रणनीतियों को प्रवृत्ति बाजार में जल्दी प्रवेश करने में सक्षम बनाया जाता है, तेजी से बढ़त हासिल की जाती है, और प्रवृत्ति के उलट होने पर बाहर निकल जाती है, जो मध्यम और दीर्घकालिक बाजार की प्रवृत्ति को प्रभावी ढंग से पकड़ती है।
कोड को गहराई से विश्लेषण करते हुए, हम निष्कर्ष निकाल सकते हैं कि इस रणनीति के कुछ प्रमुख फायदे हैंः
स्वचालित व्यापार निर्णय: रणनीति पूरी तरह से मात्रात्मक नियमों के आधार पर व्यापार निष्पादित करती है, मानवीय भावनात्मक हस्तक्षेप को समाप्त करती है, व्यापार अनुशासन के सख्त अनुपालन की गारंटी देती है। कोड में प्रवेश, बढ़त और बाहर निकलने की शर्तों को स्पष्ट रूप से परिभाषित किया गया है, व्यक्तिपरक निर्णय की आवश्यकता नहीं है।
गतिशील जोखिम प्रबंधन: प्रत्येक व्यापार के लिए जोखिम को खाते की इक्विटी का एक निश्चित प्रतिशत (डिफ़ॉल्ट 1%) तक सीमित करके, और एटीआर के साथ स्थिति आकार को समायोजित करके, रणनीति विभिन्न अस्थिरता वातावरणों में एक समान जोखिम जोखिम बनाए रखने में सक्षम है। यह विधि उच्च अस्थिरता वाले बाजारों में स्वचालित रूप से स्थिति को कम करती है और कम अस्थिरता वाले बाजारों में स्थिति को उचित रूप से बढ़ाता है।
बाजार की परिस्थितियों के अनुकूल: द्वि-चक्र डिजाइन रणनीति को बाजार की स्थिति के अनुसार स्वचालित रूप से समायोजित करने की अनुमति देता है। लगातार लाभदायक प्रवृत्ति बाजार में संक्षिप्त चक्र का उपयोग करना (20 दिन) संवेदनशीलता बनाए रखना; नुकसान के बाद लंबी अवधि में स्विच करना (55 दिन) झूठे संकेतों को कम करना।
लाभप्रद वृद्धि तंत्ररणनीतियाँः स्थिति का आकार वर्तमान खाते के अधिकारों और हितों के आधार पर गणना की जाती है, खाता बढ़ने के साथ स्वचालित रूप से स्थिति बढ़ाता है, लाभप्रदता को प्राप्त करने के लिए; और मजबूत रुझानों में पिरामिड के माध्यम से लाभप्रदता को बढ़ाने के लिए।
बहु-बाजार अनुकूलन: रणनीति डिजाइन कई परिसंपत्ति श्रेणियों के लिए उपयुक्त है, विशेष रूप से सोने जैसे स्पष्ट रूप से प्रवृत्ति वाले बाजारों में बेहतर प्रदर्शन करता है। पैरामीटर को समायोजित करके, विभिन्न बाजार विशेषताओं के लिए अनुकूलित किया जा सकता है।
स्पष्ट जोखिम नियंत्रण: 10 दिन रिवर्स ब्रेक का उपयोग करें, प्रत्येक व्यापार के लिए एक स्पष्ट स्टॉप-लॉस प्रदान करने के लिए, एक एकल व्यापार जोखिम को प्रभावी ढंग से नियंत्रित करने के लिए; साथ ही अधिकतम जोखिम प्रतिशत सेट करके प्रणालीगत जोखिम को नियंत्रित करें।
इस रणनीति के कई फायदे हैं, लेकिन इसके साथ कुछ संभावित जोखिम भी हैं:
फ़र्ज़ी घुसपैठ का खतरा: अस्थिर बाजारों में, कीमतें अक्सर उच्च/निचले स्तरों को तोड़ सकती हैं, लेकिन फिर तेजी से वापस आ जाती हैं, जिससे लगातार नुकसान होता है। कोड में फ़िल्टर किए गए झूठे ब्रेकडाउन तंत्र की कमी, गैर-प्रवृत्ति बाजारों में अधिक अक्षम संकेत पैदा कर सकती है।
जोखिम बढ़ता है: पिरामिड बढ़त तंत्र प्रवृत्ति की निरंतरता के दौरान बहुत प्रभावी है, लेकिन यदि प्रवृत्ति अचानक उलट जाती है, तो एकाधिक इकाइयों के पदों से भारी नुकसान हो सकता है। हालांकि रणनीति में बाहर निकलने की शर्तें निर्धारित की गई हैं, फिर भी भारी उलटफेर में भारी नुकसान हो सकता है।
पैरामीटर संवेदनशीलता: रणनीति प्रदर्शन अत्यधिक विभिन्न पैरामीटर सेटिंग्स पर निर्भर करता है (जैसे कि प्रवेश चक्र, बाहर निकलने का चक्र, एटीआर चक्र, अधिग्रहण अंतराल, आदि) । विभिन्न बाजार स्थितियों के लिए विभिन्न पैरामीटर संयोजनों की आवश्यकता हो सकती है, और निश्चित पैरामीटर प्रदर्शन में अस्थिरता का कारण बन सकते हैं।
तरलता जोखिम: कम तरलता वाले बाजारों में, भारी बढ़ोतरी के कारण स्लिप की वृद्धि हो सकती है या अपेक्षित कीमतों पर लेनदेन करना मुश्किल हो सकता है, जो वास्तविक निष्पादन प्रभाव को प्रभावित करता है। कोड में तरलता के मुद्दों के लिए कोई प्रक्रिया नहीं है।
प्रणालीगत जोखिम का खुलासा: एक शुद्ध प्रवृत्ति अनुवर्ती रणनीति के रूप में, यह अन्य प्रवृत्ति रणनीतियों के साथ अत्यधिक प्रासंगिक हो सकता है और बाजार में आम गिरावट या तीव्र उतार-चढ़ाव के दौरान विविध सुरक्षा प्रदान करना मुश्किल हो सकता है।
गणना सटीकता समस्या: कोड में math.floor फ़ंक्शन का उपयोग करके पूरी गणना की गई स्थिति को नीचे की ओर ले जाएं, जिससे छोटे खातों में स्थिति बहुत छोटी हो सकती है या व्यापार करने में असमर्थ हो सकती है। साथ ही, बिंदु मूल्य की गलत सेटिंग से स्थिति की गणना में त्रुटि हो सकती है।
इन जोखिमों के लिए, प्रवृत्ति फ़िल्टर जोड़ने, अधिकतम स्थिति सीमा स्थापित करने, बढ़त नियमों को अनुकूलित करने और अस्थिरता समायोजन तंत्र को बढ़ाने जैसे तरीकों से जोखिम नियंत्रण पर विचार किया जा सकता है।
कोड विश्लेषण के आधार पर, इस रणनीति में कुछ अनुकूलन हैं:
ट्रेंड फ़िल्टर जोड़ें: वर्तमान रणनीति केवल मूल्य ब्रेक ट्रेडों पर आधारित है, जो झूठे ब्रेक के लिए अतिसंवेदनशील है। प्रवृत्ति संकेतक (जैसे कि चलती औसत, एडीएक्स आदि) को फ़िल्टर शर्त के रूप में जोड़ा जा सकता है, केवल ट्रेडों को निष्पादित किया जाता है जब प्रवृत्ति की दिशा एकजुट होती है, जिससे अस्थिर बाजारों में घाटे का व्यापार कम हो जाता है।
अनुकूलित बढ़ोतरी नियममौजूदा बढ़त तंत्र अपेक्षाकृत सरल है, यह विचार किया जा सकता है कि बढ़त अनुपात में गिरावट लाने पर विचार किया जाए (आगे बढ़त इकाइयों को धीरे-धीरे कम किया जाए) या अधिकतम बढ़त की सीमा निर्धारित की जाए, जो लाभ को बढ़ाने और जोखिम को नियंत्रित करने की आवश्यकता को संतुलित करती है।
गतिशील पैरामीटर समायोजन: बाजार में उतार-चढ़ाव की दर या प्रवृत्ति की ताकत के आधार पर प्रवेश / निकास चक्र और अधिग्रहण के अंतराल को गतिशील रूप से समायोजित किया जा सकता है। उदाहरण के लिए, उच्च अस्थिरता वाले बाजारों में प्रवेश चक्र को लंबा करना और कम अस्थिरता वाले बाजारों में निकास चक्र को छोटा करना, रणनीति को अधिक अनुकूली बनाता है।
समय फ़िल्टर जोड़ेंव्यापार समय फ़िल्टर जोड़ें, महत्वपूर्ण आर्थिक आंकड़ों के प्रकाशन या कम तरलता के समय से बचें, असामान्य उतार-चढ़ाव के जोखिम को कम करें।
बहु-समय फ़्रेम पुष्टिट्रेडिंग फ़िल्टरिंग शर्तों के रूप में लंबी समय अवधि के साथ प्रवृत्ति की दिशा का संयोजन, उदाहरण के लिए, सिग्नल की गुणवत्ता में सुधार के लिए ट्रेडों को केवल तभी निष्पादित करें जब दिन की रेखा की प्रवृत्ति 4 घंटे की प्रवृत्ति की दिशा से मेल खाती है।
धन प्रबंधन का अनुकूलन: अधिक जटिल धन प्रबंधन मॉडल जैसे कि केली सूत्र या इष्टतम f-मूल्य विधि को पेश किया जा सकता है, जो धन वृद्धि वक्र को और अधिक अनुकूलित करने के लिए अपेक्षित जीत दर और लाभ-हानि अनुपात के आधार पर जोखिम अनुपात को गतिशील रूप से समायोजित करता है।
अतिरिक्त रोकथाम तंत्रवर्तमान रणनीति में केवल रिवर्स ब्रेकआउट पर आधारित आउटआउट तंत्र है, कुछ लाभ-लॉकिंग तंत्रों को जोड़ने पर विचार किया जा सकता है, जैसे कि प्रवृत्ति पकड़ने और लाभ-संरक्षण को ध्यान में रखते हुए विशिष्ट लाभ लक्ष्य को पूरा करने पर कुछ पदों को खत्म करना।
इन अनुकूलन दिशाओं को प्रभावी ढंग से रणनीति की स्थिरता और लाभप्रदता को बढ़ावा देने में सक्षम हैं, विशेष रूप से विभिन्न बाजार स्थितियों में अनुकूलनशीलता।
द्वि-चक्र अस्थिरता दर समायोजन ब्रेकआउट ट्रेडिंग सिस्टम एक पूर्ण मात्रात्मक ट्रेडिंग रणनीति है जो समुद्री डाकू ट्रेडिंग नियमों पर आधारित है, जिसमें कई मात्रात्मक ट्रेडिंग तकनीकों जैसे कि ब्रेकआउट प्रवेश, अस्थिरता दर पोजीशन प्रबंधन, पिरामिड बढ़त और अनुकूलन चक्र शामिल हैं। रणनीति मूल्य में तोड़फोड़ को पकड़ने के लिए प्रवृत्ति में प्रवेश करती है, अस्थिरता को नियंत्रित करने के लिए जोखिम के उद्घाटन का उपयोग करती है, और पिरामिड बढ़त के माध्यम से प्रवृत्ति रिटर्न को अधिकतम करती है।
इस रणनीति का मूल मूल्य यह है कि इसकी व्यापक प्रणाली डिजाइन, जिसमें प्रवेश, निकास, स्थिति प्रबंधन और जोखिम नियंत्रण जैसे सभी पहलुओं को शामिल किया गया है, एक आत्मनिर्भर ट्रेडिंग प्रणाली का गठन करता है। विशेष रूप से, इसकी अस्थिरता को समायोजित करने वाली स्थिति तंत्र और द्वि-चक्र स्व-अनुकूली डिजाइन, रणनीति को विभिन्न बाजार स्थितियों में अपेक्षाकृत स्थिर प्रदर्शन करने में सक्षम बनाता है।
हालांकि, एक प्रवृत्ति-अनुवर्ती रणनीति के रूप में, यह अस्थिर बाजारों में खराब प्रदर्शन कर सकती है और प्रवृत्ति फिल्टर को जोड़ने, बढ़ोतरी के नियमों को अनुकूलित करने और गतिशील पैरामीटर को समायोजित करने जैसे तरीकों से सुधार की आवश्यकता है। साथ ही, यह रणनीति निवेश पोर्टफोलियो के हिस्से के रूप में अनुकूलित है और अन्य प्रकार की रणनीतियों के साथ संयोजन में उपयोग की जाती है (जैसे औसत मूल्य वापसी रणनीति) अधिक चिकनी रिटर्न वक्र प्राप्त करने के लिए।
कुल मिलाकर, यह एक अच्छी तरह से तैयार की गई, तर्कसंगत और स्पष्ट रूप से तैयार की गई क्वांटिटेटिव ट्रेडिंग रणनीति है, जिसमें एक अच्छा सैद्धांतिक आधार और व्यावहारिक मूल्य है। उचित पैरामीटर अनुकूलन और पूरक तंत्र के साथ, इस रणनीति में कई प्रकार के बाजार वातावरण में स्थिर रिटर्न उत्पन्न करने की क्षमता है।
/*backtest
start: 2024-06-16 00:00:00
end: 2025-06-15 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=5
//策略声明和基础设置
strategy("Turtle Trading System (Full Version)", overlay=true, pyramiding=5)
//风险控制参数
riskPercent = input.float(0.5, title="每笔交易风险占资金百分比", minval=0.1, maxval=5.0, step=0.1)
pointValue = input.float(1.0, title="点值($/点)")
//入场周期参数
entryPeriod1 = input.int(20, title="系统1入场周期")
entryPeriod2 = input.int(55, title="系统2入场周期(亏损后)")
//出场和波动性参数
exitPeriod = input.int(10, title="出场周期")
nPeriod = input.int(20, title="N周期(ATR)")
pyramidSpacing = input.float(0.5, title="每N x ...添加单位", step=0.1)
//波动性指标计算
N = ta.atr(nPeriod)//计算ATR作为市场波动性的量化标准
//系统1入场通道计算(20周期)
entryHigh1 = ta.highest(high, entryPeriod1)//计算20周期内最高价作为做多突破位
entryLow1 = ta.lowest(low, entryPeriod1)//计算20周期内最低价作为做空突破位
//系统2入场通道计算(55周期)
entryHigh2 = ta.highest(high, entryPeriod2)//计算55周期内最高价作为保守做多突破位
entryLow2 = ta.lowest(low, entryPeriod2)//计算55周期内最低价作为保守做空突破位
//出场通道计算(10周期)
exitLong = ta.lowest(low, exitPeriod)//计算10周期内最低价作为多头出场位
exitShort = ta.highest(high, exitPeriod)//计算10周期内最高价作为空头出场位
//交易状态跟踪变量
var bool lastLongLoss = false//记录上次多头交易是否亏损
var bool lastShortLoss = false//记录上次空头交易是否亏损
var float lastLongEntryPrice = na//记录上次多头入场价格
var float lastShortEntryPrice = na//记录上次空头入场价格
//账户权益和风险计算
equity = strategy.equity//获取当前账户总权益
riskDollars = equity * (riskPercent / 100)//计算每笔交易允许的风险金额
unitSize = riskDollars / (N * pointValue)//基于ATR计算标准头寸规模
positionSize = math.round(unitSize, 3)//设定最终头寸大小
//入场信号生成逻辑
useSystem1Long = close > entryHigh1[1]//系统1多头入场条件
useSystem2Long = lastLongLoss and close > entryHigh2[1]//系统2多头入场条件(仅在上次亏损后)
useSystem1Short = close < entryLow1[1]//系统1空头入场条件
useSystem2Short = lastShortLoss and close < entryLow2[1]//系统2空头入场条件(仅在上次亏损后)
//金字塔加仓条件
canAddLong = strategy.opentrades > 0 and strategy.position_size > 0 and close >= lastLongEntryPrice + (pyramidSpacing * N)
//多头加仓条件
canAddShort = strategy.opentrades > 0 and strategy.position_size < 0 and close <= lastShortEntryPrice - (pyramidSpacing * N)
//空头加仓条件
//出场信号生成
longExit = close < exitLong//多头出场条件
shortExit = close > exitShort//空头出场条件
//多头入场执行
if (useSystem1Long or useSystem2Long)
strategy.entry("Long", strategy.long, qty=positionSize)//执行多头开仓
lastLongEntryPrice := close//记录多头入场价格作为加仓基准
lastLongLoss := false//重置多头亏损状态
//空头入场执行
if (useSystem1Short or useSystem2Short)
strategy.entry("Short", strategy.short, qty=positionSize)//执行空头开仓
lastShortEntryPrice := close//记录空头入场价格作为加仓基准
lastShortLoss := false//重置空头亏损状态
//多头加仓执行
if (canAddLong)
strategy.entry("Long Add", strategy.long, qty=positionSize)//执行多头加仓
lastLongEntryPrice := close//更新多头入场价格基准
//空头加仓执行
if (canAddShort)
strategy.entry("Short Add", strategy.short, qty=positionSize)//执行空头加仓
lastShortEntryPrice := close//更新空头入场价格基准
//多头出场执行
if (longExit)
strategy.close("Long")//平掉初始多头头寸
strategy.close("Long Add")//平掉所有多头加仓头寸
lastLongLoss := close < lastLongEntryPrice//根据出场价格更新亏损状态
//空头出场执行
if (shortExit)
strategy.close("Short")//平掉初始空头头寸
strategy.close("Short Add")//平掉所有空头加仓头寸
lastShortLoss := close > lastShortEntryPrice//根据出场价格更新亏损状态
//系统1入场信号可视化
plot(entryHigh1, title="20周期高点", color=color.green)//绘制系统1多头入场线
plot(entryLow1, title="20周期低点", color=color.red)//绘制系统1空头入场线
//系统2入场信号可视化
plot(entryHigh2, title="55周期高点", color=color.lime, linewidth=1)//绘制系统2多头入场线
plot(entryLow2, title="55周期低点", color=color.maroon, linewidth=1)//绘制系统2空头入场线
//出场信号可视化
plot(exitLong, title="10周期低点(多头出场)", color=color.orange)//绘制多头出场信号线
plot(exitShort, title="10周期高点(空头出场)", color=color.blue)//绘制空头出场信号线