मैक भाषा की अपनी सीमाओं के कारण, रणनीति को JS में फिर से लागू किया जाना चाहिए।
JS के साथ मैक भाषा रणनीति को फिर से लागू करने के बाद से, कई समस्याएं पाई गई हैं, वास्तविक ड्राइव संचालन में, एक ही K लाइन पर पाया गया कि, अस्थिरता के कारण, 1-2 बार खरीद और बिक्री वापस आ जाएगी। नुकसान का कारण बनता है। और मैक भाषा में एक AUTOFILTER वाक्य; ठीक है। पूरी तरह से बिना किसी पाइप के, वास्तविक समय मॉडल में, एक ही K लाइन पर वापस नहीं आएगा।
तो आप पूछ सकते हैं कि मैक भाषा में इस तरह की स्थिति से बचने के लिए कैसे डिज़ाइन किया गया है, सामान्य तार्किक सोच क्या है?
याः क्या मैं JS के साथ एक ही K लाइन पर दो बार खरीदने और बेचने से रोकने के लिए कुछ कर सकता हूं? क्या आप समय-सीमा का उपयोग करके हल करना चाहते हैं, लेकिन लेनदेन के आदेश में कोई समय-सीमा नहीं है, तो JS के साथ आने वाले Date.parse ((new Date))) के साथ समय-सीमा का उपयोग करें, यदि आप सफल नहीं होते हैं, या एक अनुत्तरित आदेश प्राप्त करते हैं, तो इसे कैसे हल करें? तार्किक विचार क्या है?
सियोंगलोंगहुईएक और समस्या यह है कि नीचे दिए गए कोड का उपयोग करके, एक ही K लाइन पर एक छोटे से उतार-चढ़ाव के कारण लगातार व्यापार करने से नुकसान होने से रोका जा सकता है। लेकिन एक और नई समस्या यह है कि एक ही K लाइन के बाद, एक ही K लाइन के बाद, एक ही K लाइन के बाद, एक ही K लाइन के बाद, एक ही K लाइन के बाद, एक ही K लाइन के बाद, एक ही K लाइन के बाद, एक ही K लाइन के बाद, एक ही K लाइन के बाद, एक ही K लाइन के बाद, एक ही K लाइन के बाद, एक ही K लाइन के बाद, एक ही K लाइन के बाद, एक ही K लाइन के बाद, एक ही K लाइन के बाद, एक ही K लाइन के बाद, एक ही K लाइन के बाद, एक ही K लाइन के बाद, एक ही K लाइन के बाद, एक ही K लाइन के बाद, एक ही K लाइन पर, एक ही K लाइन पर, एक ही K लाइन पर, एक ही K लाइन के बाद, एक ही K लाइन पर, एक ही K लाइन पर, एक ही K लाइन पर, एक ही K लाइन पर, एक ही K लाइन पर, एक ही K लाइन पर, एक ही K लाइन
कोड इस प्रकार हैः if (before_record_time!= now_records.Time) // पिछले K लाइन का समय इस K लाइन के समय के बराबर नहीं है, तो अलग K लाइन के लिए गलत है
{
// यहाँ लिखना है कि व्यापार के तर्क के लिए एक ही K लाइन पर बार-बार एक ही स्थिति में नहीं हो सकता है.
}
मेरा समाधान यह है कि एक समय रेखा K जो पहले एक चर को संग्रहीत करती थी, अब दो चर को संग्रहीत करती है।
एक बहु-दिशात्मक टाइमबुक duo_before_record_time
एक रिक्त दिशा में समय
घासकाम का ब्योरा आपको जवाब देता है।
शांत मनK रेखा का क्षैतिज अक्ष समय है, इसे समय से हल किया जाना चाहिए।
सियोंगलोंगहुईकोड इस प्रकार हैः if (before_record_time!= now_records.Time) // पिछले K लाइन का समय इस K लाइन के समय के बराबर नहीं है, तो अलग K लाइन के लिए गलत है { // यहाँ लिखना है कि एक ब्रोच के लिए व्यापार तर्क, आप एक ही K लाइन पर बार-बार ब्रोच नहीं कर सकते हैं }
सियोंगलोंगहुईएक बेहतर समाधान पाया गया है, पहले एक चर को घोषित करना, जो कि हर बार की गई बोली के समय वर्तमान नवीनतम K लाइन के समय के लिए उपयोग किया जाता है (चाहे कोई भी खाली हो या खाली हो, जब तक कि बोली इस चर को कवर करती है), और फिर यह तय करना कि पिछली बार की गई बोली का समय K लाइन के समय के बराबर नहीं है, तो इसे सही ढंग से हल किया जा सकता है। पहले के तरीकों में बग हैं, जैसे कि पहली K लाइन खुली है, दूसरी K लाइन गिर गई है, लेकिन पतन नहीं होगा, तीसरी K लाइन तक इंतजार करना होगा।
सियोंगलोंगहुईवैसे, exchange.GetOrders (().length>0 से पता चलता है कि कोई भी ऑर्डर बाकी नहीं है और ऑर्डर का समय बचाया जाता है।
सियोंगलोंगहुईयह एक बहुत ही कठिन सवाल है, लेकिन मैं इसे हल करने के लिए एक लंबा समय लगा, और यह कोड हैः if (Math.abs ((before_order_time - now_records.Time)/1000 > now_period)) // पिछली बार के समय को घटाकर अब के लाइन के समय को घटाएं, 1000 से विभाजित करें सेकंड की संख्या प्राप्त करने के लिए, और दोनों के बीच का पूर्ण मूल्य निकालें, यदि चक्र के सेकंड की संख्या से अधिक है, तो एक ही K लाइन पर नहीं है। // पहले_ऑर्डर_टाइम चर को स्वयं सेट करने की आवश्यकता होती है, प्रत्येक बार क्रम के समय को सहेजें. before_order_time = Date.parse ((new Date)))); // वर्तमान समय को रिकॉर्ड करें // चक्रों की संख्या के लिए सेकंड की संख्या, var now_period = _C ((exchange.GetPeriod) के माध्यम से है); // वर्तमान चक्र प्राप्त करता है, उदाहरण के लिए 5 मिनट, 15 मिनट, 1 दिन, और परिणामों की संख्या सेकंड में लौटाता है।
गर्मी आपको नहीं मारती हैK-लाइन डेटा के भीतर समय की चाबी के माध्यम से रोकना संभव होना चाहिए। यदि यह तय किया जाता है कि यह एक ही समय की चाबी है तो आदेश नहीं दिया जा सकता है।