अधिकांश रणनीतियों को वास्तविक रूप से चलाने से पहले सत्यापित करने के लिए पुनः परीक्षण की आवश्यकता होती है, FMZ कुछ किस्मों के डिजिटल मुद्राओं के लिए समर्थन करता है, जैसे कि नकदी, वायदा और स्थायी अनुबंध, और सभी किस्मों के कमोडिटी वायदा।
जैसा कि ऊपर दिखाया गया है, रीमेकिंग के शुरू होने से अंत तक का समय एक समय रेखा के रूप में कार्य कर सकता है, जब रीमेकिंग की जाती है, तो रीमेकिंग के समय बिंदुओं के साथ-साथ धुरी बाईं ओर से दाईं ओर चलती है, इस समय बिंदु पर, केवल इस बिंदु तक के ऐतिहासिक डेटा को प्राप्त किया जा सकता है, और रणनीति इन आंकड़ों के आधार पर खरीद और बिक्री करती है, जो अंततः लाभ और हानि का गठन करती है। जाहिर है, रीमेकिंग के समय बिंदुओं का वितरण असतत है, और वितरण का घनत्व रीमेकिंग की सटीकता का प्रतिनिधित्व करता है। निश्चित रूप से, रिट्रेसमेंट समय बिंदुओं की घनत्व को ध्यान में रखते हुए, वास्तविक रिट्रेसमेंट सिस्टम को सटीकता और दक्षता के बीच व्यापार करना होगा।
onbar retracement mechanism K-line पर आधारित है, यानी प्रत्येक K-line एक retracement समय बिंदु उत्पन्न करता है, जिस पर वर्तमान K-line के उच्च-निम्न अधिग्रहण मूल्य, व्यापार मात्रा आदि की जानकारी प्राप्त की जा सकती है, साथ ही इस समय बिंदु से पहले के ऐतिहासिक K-line की जानकारी भी। इस तंत्र का दोष स्पष्ट हैः एक K लाइन पर, केवल एक बार खरीद और बिक्री उत्पन्न की जा सकती है, और आमतौर पर K लाइन के समापन मूल्य पर आधारित मूल्य है। और एक K लाइन केवल चार कीमतों को प्राप्त कर सकती है, और एक K लाइन के भीतर कीमत कैसे बदलती है, इस बारे में कोई जानकारी नहीं मिलती है, जैसे कि सबसे अधिक कीमत पहले होती है या सबसे कम कीमत पहले होती है। उदाहरण के लिए, 1 घंटे की K लाइन के साथ, वास्तविक समय में निश्चित रूप से हर कुछ सेकंड में एक भाव सूचना प्राप्त होती है, और ट्रेडिंग निर्देश K लाइन के अंत का इंतजार करने के बजाय डिस्क में भेजे जाते हैं। onbar परीक्षण तंत्र का लाभ यह है कि यह समझ में आसान है, और प्रतिक्रिया की गति बहुत तेज है।
उपरोक्त चित्र में एफएमजेड रीमेटिंग सेटिंग इंटरफ़ेस है। रीमेटिंग मोड को दो प्रकार के एनालॉग-स्तरीय रीमेटिंग और वास्तविक-डिस्क-स्तरीय रीमेटिंग में विभाजित किया गया है, जो क्रमशः नीचे दिए गए हैंः
एक टिक क्या है
के-लाइन डेटा के विपरीत, टिक एक विशिष्ट समय बिंदु पर मूल्य है। के-लाइन डेटा के आधार पर, हम वास्तव में केवल खुलने और बंद होने की कीमतों के समय को जानते हैं, और यह स्पष्ट नहीं है कि के-लाइन चक्र में सबसे अधिक मूल्य कब तक पहुंचता है। वास्तव में, के-लाइन डेटा भी टिक के आधार पर उत्पन्न होता है। और के-लाइन डेटा के आधार पर, एक के-लाइन चक्र के विशिष्ट टिक के परिवर्तन का भी अनुकरण किया जा सकता है, हालांकि यह एक वास्तविक टिक नहीं है, लेकिन यह हमें कुछ अधिक सटीकता के साथ वापस मापने की अनुमति देता है। और के-लाइन के आधार पर अनुकरण की अवधि मापने के लिए उपयोग किए जाने वाले चक्र की तुलना में बहुत छोटी हो सकती है, इसलिए सटीकता अधिक है।
एनालॉग स्तर पर पुनः परीक्षण
एनालॉग-स्तरीय रीसेट का उपयोग किया गया K-लाइन चक्र और अंतर्निहित K-लाइन चक्र का चयन करने के लिए किया जाता है। उदाहरण के लिए, रणनीति घंटे की रेखा की रीसेट का उपयोग करती है, अंतर्निहित K-लाइन 5 मिनट का चयन करती है, तो रीसेट समय बिंदुओं का अंतराल 5 मिनट के K-लाइन एनालॉग द्वारा उत्पन्न टिक के आधार पर होगा, जो नवीनतम 1 घंटे के K-लाइन के समापन मूल्य के रूप में लगातार बदलता है। विशेष रूप से K-लाइन के भीतर टिक उत्पन्न करने के तंत्र के आधार पर MT4 के समान है, इस पोस्ट में विस्तृत विवरण दिया गया हैःhttps://www.fmz.com/bbs-topic/662
हम एक सरल रणनीति का उपयोग करके इस तंत्र का प्रदर्शन करते हैं, रणनीति कोडः
function main() {
while(true){
var records = exchange.GetRecords() //GetRecords可以填参数,获取不同周期K线。
var ticker = exchange.GetTicker()
Log('K线收盘价: ', records[records.length-1].Close, 'ticker买一卖一价: ', ticker.Buy, ticker.Sell)
//js回测不用Sleep,会自动跳到下一个tick。Python需要一个小的休眠时间
}
}
परीक्षण के परिणामःप्रत्येक K-लाइन के लिए केवल ओपन और क्लोजर टिक फिक्स्ड होते हैं, बीच में 12 सिम्युलेटेड टिक जोड़े जाते हैं, इस प्रकार एक K-लाइन 14 पुनरीक्षण समय बिंदुओं का गठन करेगी। यदि पुनरीक्षण एक दिन में किया जाता है, तो निचले K-लाइन चक्र में 5 मिनट लगते हैं, कुल 24 × 12 × 14 = 4032 समय बिंदु, जबकि पारंपरिक OnBar पुनरीक्षण में केवल 24 होते हैं, सटीकता में काफी सुधार होता है। एक K-लाइन चक्र के भीतर भी स्टॉप ओपन और स्टॉप ऑपरेशन पूरा किया जा सकता है। हालांकि मध्यवर्ती उत्पन्न टिक सिम्युलेटेड है, लेकिन इसका कोई प्रभाव नहीं पड़ता है। पुनरीक्षण में, जब भी खरीदारी की कीमत एक से अधिक होती है, तो एकल बिक्री की कीमत खरीदारी से कम होती है, तो पुनरीक्षण को एकत्रित किया जाता है। यह विधि पुनरीक्षण की गति और सटीकता को ध्यान में रखते हुए सभी के उपयोग की सिफारिश की जाती है।
वास्तविक डिस्क स्तर पर पुनः परीक्षण
वास्तविक डिस्क रीसेट का उपयोग वास्तविक टिक के साथ किया जाता है, प्रत्येक समय बिंदु पर न्यूनतम 1s की अंतराल होती है, इस रीसेट की सटीकता हर सेकंड में बदलती है, लेकिन डेटा की मात्रा के कारण, रीसेट की गति धीमी है, रीसेट समय बहुत लंबा नहीं हो सकता है।
यहां तक कि वास्तविक डिस्क पर रीट्रेसिंग और वास्तविक डिस्क में भी स्पष्ट डेटा की कमी है, जैसे कि लेनदेन के ऐतिहासिक ट्रेडों तक पहुंच नहीं है, वास्तविक गहराई परिवर्तन, वास्तविक नेटवर्क विलंबता आदि तक पहुंच नहीं है। यहां तक कि एफएमजेड का वर्तमान रीट्रेसिंग सिस्टम अपेक्षाकृत पूर्ण है, और कई छोटी सुविधाएं हैं, जैसे कि नेटवर्क त्रुटि का अनुकरण करना, जो परीक्षण रणनीतियों की त्रुटि सहनशीलता, नेटवर्क विलंबता का अनुकरण करना, ट्रेडिंग चार्ट बनाना आदि के लिए उपयोग किया जा सकता है।
एक बार जब हम एक बार फिर से शुरू करते हैं, तो हम केवल कुछ व्यापारिक जोड़े और एक्सचेंजों का समर्थन करते हैं।
वर्तमान में, डेटा के लिए केवल कुछ सामान्य लेनदेन हैं, वास्तव में रणनीति और विविधता का कोई बड़ा संबंध नहीं है, जो पर्याप्त सत्यापन रणनीति है।
क्या BitMEX द्वारा चार्ज की जाने वाली पूंजीगत दरों का अनुकरण किया जा सकता है?
यदि आप BitMEX रीट्वीट चुनते हैं तो आप घटना रिकॉर्ड खोल सकते हैं।
क्या यह परीक्षण वहां किया गया था?
जावास्क्रिप्ट नीति का पुनर्मूल्यांकन ब्राउज़र में किया जाता है, और पायथन FMZ के सर्वर या अपने स्वयं के होस्ट का चयन कर सकता है।
क्या आप रीटेक लॉग डाउनलोड कर सकते हैं?
हाँ, लॉग के ऊपरी दाएं कोने में डाउनलोड बटन है
क्या यह स्थानीय स्तर पर किया जा सकता है?
FMZ एक खुला स्रोत पायथन पुनः परीक्षण इंजन है।https://www.fmz.com/bbs-topic/1687
मंगेतर भीएक मिनट के स्तर की रणनीति, सबसे अच्छी बात यह है कि वास्तविक डिस्क डेटा का उपयोग करके पुनः परीक्षण किया जाए, लेकिन अब वास्तविक डिस्क स्तर का पुनः परीक्षण, केवल दो घंटे के लिए पुनः परीक्षण करने के लिए, बहुत उचित नहीं है, कम से कम एक दिन है। पुनः परीक्षण, सभी स्थानीय कंप्यूटर गणना का उपयोग करते हैं, इस समय को सीमित क्यों करें?