इतिहास के लाइन जानकारी. इस तंत्र का नुकसान स्पष्ट हैः एक के लाइन पर, केवल एक बार खरीद और बिक्री उत्पन्न की जा सकती है, आमतौर पर मूल्य के लाइन के समापन मूल्य पर आधारित है। और एक के लाइन केवल चार कीमतों तक पहुंच सकती है, और एक के लाइन के भीतर कीमत कैसे बदलती है, सबसे अधिक कीमत पहले होती है या सबसे कम कीमत पहले होती है आदि के बारे में कोई जानकारी नहीं मिलती है। उदाहरण के लिए, 1 घंटे के लाइन में, वास्तविक समय में निश्चित रूप से हर कुछ सेकंड में एक बार चल रही जानकारी प्राप्त होती है, ट्रेडिंग निर्देशों को डिस्क में समाप्त होने के बजाय जारी किया जाता है। ऑनबार रीडायरेक्शन तंत्र को समझना आसान है, रीडायरेक्शन बहुत तेज़ है।
FMZ प्लेटफ़ॉर्म दो प्रकार के एनालॉग-स्तरीय और वास्तविक-डिस्क-स्तरीय रीसेट को रीसेट करता है। एनालॉग-स्तरीय रीसेट आधारभूत K-लाइन चक्र के आधार पर एक एनालॉग उत्पन्न करता है। प्रत्येक आधारभूत K-लाइन चक्र पर 14 रीसेट समय बिंदु उत्पन्न होंगे।जबकि वास्तविक डिस्क स्तर वास्तविक एकत्रित टिक है, जो लगभग हर कुछ सेकंड में एक बार होता है, वर्तमान में वास्तविक गहराई ((20 फ़ील्ड शामिल हैं) और वास्तविक एक-एक लेनदेन का समर्थन करता है।बड़ी मात्रा में डेटा, धीमी गति से पुनरावृत्ति, इसलिए विशेष रूप से लंबे समय तक पुनरावृत्ति संभव नहीं है। FMZ के पुनरावृत्ति तंत्र से रणनीति एक K लाइन पर कई बार लेनदेन कर सकती है, जिससे केवल बंद मूल्य लेनदेन की स्थिति से बचा जा सकता है, और अधिक सटीक और पुनरावृत्ति की गति को ध्यान में रखती है।https://www.fmz.com/digest-topic/4009
पुनरावृत्ति की नीति का ढांचा वास्तविक डिस्क के समान है, यह एक मृत चक्र है। चूंकि पुनरावृत्ति विभिन्न पुनरावृत्ति बिंदुओं पर कूदती है, इस समय नींद का उपयोग किए बिना किया जा सकता है, एक चक्र के अंत में स्वचालित रूप से अगले समय बिंदु पर कूद जाता है। लेकिन पायथन को प्रोग्रामिंग तंत्र के कारण एक अनिवार्य पुनरावृत्ति की आवश्यकता होती है।Sleep(10)
इस तरह की घटनाओं में से एक है।
पुनरीक्षण इंजन उपयोगकर्ता के आदेश मूल्य और पुनरीक्षण समय बिंदु के आधार पर बोली मूल्य पर आधारित है, यदि खरीद मूल्य एक बिक्री से अधिक है, तो एक लेनदेन बेचने के लिए एक लेनदेन उत्पन्न करता है। यदि लेनदेन विफल हो जाता है, तो एक लिपस्टिक सूची उत्पन्न होती है। लेनदेन को स्लाइडिंग पॉइंट की आवश्यकता होती है। यदि पुनरीक्षण के दौरान एक स्थिति नहीं खुलती है या एक स्थिति नहीं गिरती है, तो यह जांचना है कि क्या कोई अव्यवस्थित आदेश के कारण स्थिति फ्रीज है।
GetRecords()
फ़ंक्शन के डिफ़ॉल्ट चक्र को कोड में चक्र पैरामीटर के रूप में भी निर्दिष्ट किया जा सकता है.जैसा कि पहले कहा गया है, एपीआई का उपयोग करके वास्तविक डिस्क पर पहुंच विफल हो सकती है और वापस आ सकती है।null
इस प्रकार, एक बार जब आप अपने डेटा का उपयोग करते हैं, तो यह त्रुटि देता है और वास्तविक डिस्क को रोक देता है, इसलिए रणनीति को गलत करने के लिए तैयार रहना चाहिए।
आम गलत कारणः
एपीआई का उपयोग करके डेटा वापस करने से पहले, यह तय करना आवश्यक है कि यह शून्य है या नहीं।
//1.判断为null进行处理
var ticker = exchange.GetTicker();
while(ticker == null){
Log('ticker 获取出错');
ticker = exchange.GetTicker();
}
Log(ticker.Last);
// 2.判断不为null再进行引用
var ticker = exchange.GetTicker();
if(!ticker){
Log(ticker.Last);
}
// 3._C()函数重试
var ticker = _C(exchange.GetTicker);
Log(ticker.Last);
// 4. try catch容错
try{
var ticker = exchange.GetTicker();
Log(ticker.Last);
}
catch(err){
Log('ticker 获取出错');
}
यदि आप गलत जानकारी प्राप्त करना चाहते हैं तो आप इसका उपयोग कर सकते हैं।GetLastError()
, पिछले त्रुटि संदेश स्ट्रिंग को लौटाता है, और त्रुटियों के लिए अंतर प्रसंस्करण किया जा सकता है.
इस ब्लॉग के शीर्ष पोस्ट में कई सामान्य गलत सारांश दिए गए हैंःhttps://www.fmz.com/bbs-topic/1427यहाँ कुछ सारांश दिए गए हैं, यदि आपको कोई समस्या है तो आप Ctrl + F खोज कर सकते हैं।
ट्रस्ट को कैसे रखा जाए?
इसके बारे में अधिक जानकारी Add Administrator में दी गई है।
क्या आप किसी भी तरह की एनोटेशन रणनीति बना सकते हैं?
https://www.fmz.com/marketsकुछ लोगों को लिपि सेवाएं या समूह में परामर्श की आवश्यकता होती है, और वे अपने जोखिम पर संपर्क करना चाहते हैं।
सभी इंटरफेस तक पहुँचने पर टाइमआउट का संकेत मिलता है
एक्सचेंज इंटरफेस का उपयोग करने का मतलब है, यदि कभी-कभी कोई समस्या नहीं होती है, तो विदेशी सर्वर का उपयोग करने की आवश्यकता होती है, यदि लगातार संकेत दिया जाता है कि जिस नेटवर्क पर आप हैं, उसे एक्सेस नहीं किया जा सकता है।
ERR_INVALID_POSITION त्रुटि
पुनर्मूल्यांकन प्रणाली त्रुटि रिपोर्ट करता है, आमतौर पर रणनीति के लिए त्रुटि लिखता है, जब कोई होल्डिंग नहीं होती है या पर्याप्त संख्या में होल्डिंग नहीं होती है, तो एक ब्रीफिंग की कोशिश करने से यह त्रुटि उत्पन्न होती है।
चिह्न सेट नहीं
फ्यूचर्स एक्सचेंजों का पुनर्मूल्यांकन, कोड में कोई अनुबंध सेट नहीं किया गया है, देखें exchange.SetContractType फ़ंक्शन
BITMEX 429 त्रुटि, {
error :{ message : Rate limit exceeded retry in 1 seconds...... }}
एक्सचेंज इंटरफेस पर जाने की आवृत्ति बहुत अधिक है।
{
status :6004, msg : टाइमस्टैम्प सीमा से बाहर है }
सर्वर टाइमलाइन सीमा से बाहर है, सर्वर समय को अद्यतन करने की आवश्यकता है, बहुत अधिक विचलन नहीं हो सकता है
GetOrder ((455284455): त्रुटिः अमान्य आदेश आईडी या आदेश रद्द कर दिया गया.
कुछ एक्सचेंजों के ऑर्डर रद्द हो जाते हैं और एक्सचेंज इस ऑर्डर की जानकारी को बनाए नहीं रखता है और इसे प्राप्त नहीं कर सकता है।
GetOrders: 400: {
code :-1121, msg : अमान्य प्रतीक. }
अमान्य लेन-देन जोड़ी, जांच कर रही है कि क्या लेन-देन जोड़ी सेटिंग त्रुटि है।
गुप्त कुंजी डिक्रिप्ट विफल रहा
API KEY हल करने में विफलता, यदि आप APIKEY को कॉन्फ़िगर करने के बाद FMZ पासवर्ड को संशोधित करते हैं, तो FMZ में एक्सचेंज पेज जोड़ने का प्रयास करें और एक्सचेंज APIKEY को फिर से कॉन्फ़िगर करें।
Signature not valid: अमान्य सबमिशन समय या गलत समय प्रारूप
Linux सर्वर का उपयोग करने की सलाह दी जाती है, या Windows सिस्टम पर इन समस्याओं के साथ समय-समन्वय सॉफ़्टवेयर स्थापित करें।
क्यों एक वैश्विक एजेंट स्थापित किया गया है, और trustee को एक्सचेंज एपीआई का उपयोग करने की अनुमति नहीं है?
वैश्विक एजेंटों के पास एजेंट होस्टिंग नेटवर्क पोर्ट नहीं है, इसलिए देरी के कारण विदेशी सर्वरों को तैनात करने के लिए होस्टिंग बेहतर है
कैसे एक रणनीति को स्थानीय रूप से बनाए रखा जा सकता है, अपलोड किए गए एफएमजेड पर नहीं?
पायथन का उपयोग करके स्थानीय फ़ाइलों को आयात किया जा सकता है, सामान्य रूप से एफएमजेड एपीआई के आधार पर लिखी गई नीतियों को अपने सर्वर पर निष्पादन पथ के नीचे फ़ाइलों में सहेजा जा सकता है, और सीधे निष्पादन को पढ़ा जा सकता है।
#!python2.7
def run(runfile):
with open(runfile,"r") as f:
exec(f.read())
def main():
run('my.py')
एक्सचेंजों के परीक्षण नेटवर्क का उपयोग कैसे करें या एपीआई आधार पते को बदलें
Exchange.SetBase () का उपयोग करके सीधे संबंधित एपीआई आधार पते पर स्विच करें, जैसेः
exchange.SetBase("https://www.okex.me")
गॉन्चेरएपीआई
विज्ञानस्थानीय रूप से नीति को कैसे लागू करें? मैंने एक सरल लॉग आउटपुट कथन लिखा है, और वाक्य के अंत में संचालन का पालन किया है। पहला कदम, सर्वर के रूप में एक लैपटॉप का उपयोग करके होस्टिंग प्रोग्राम चलाना है। दूसरा चरण, एक सरल लॉग आउटपुट जानकारी के लिए एक test.py प्रोग्राम लिखना (एफएमजेड के लिए एपीआई इंटरफ़ेस फ़ंक्शन); तीसरा चरण, पाठ के अंत में, एक runfile लिखें, जिसे run.py पर कॉल करके test.py चलाएं. /upload/asset/1add39483ef82d45b3ce3.png
ग्लिप9मैं नेटीजी क्लाउड क्वांटिफाइंग ट्रेडिंग कोर्स खरीदता हूं, अब मैं कहां जा रहा हूं?
मोनुराजकअनेक
मोनुराजकहाय
भाईसीखना
wqyएक छोटा सा टेक्स्ट त्रुटि है, GetAccount खाता प्राप्त करता है, और FrozenStocks के बारे में जानकारी में, फ्रीज बैलेंस होना चाहिए, उपलब्ध बैलेंस नहीं।
मेजर जयाgetorder outtime ऑर्डर आउटटाइम प्राप्त करें, ओकेएक्स के एक्सचेंजों, कैसे करें
उड़ी के 12 उच्च युक्तियाँगारंटीकृत परिसंपत्ति की दर 0% के लिए बाध्य बेंचमार्क की गारंटीकृत परिसंपत्ति की दर नहीं मिल सकता है
शिफेंग2020मैं 1 मिनट के स्ट्रिंग ऑपरेशन को देख रहा हूं, इसलिए पायथन के मृत चक्र के लिए नींद का समय 0.1s पर सेट किया जा सकता है, यानी नींद ((100) क्या मैंने देखा कि आपने इसमें एक नींद ((10) लिखी है, यानी 0.1s हुओबी एचएम के एपीआई सीमा से अधिक नहीं होगा?
पूर्वी वेंटिलेशनexchange.SetDirection (("closebuy"); // यदि स्थायी अनुबंध है, तो सीधे exchange.SetDirection (("sell") सेट करें यहाँ मैंने ओकेएक्स के स्थायी अनुबंध का परीक्षण किया है, अगर इसे बेचने के लिए सेट किया गया है, तो यह सीधे खाली हो जाता है, और यह बहुत सस्ता नहीं है।
पूर्वी वेंटिलेशनexchange.SetDirection (("closebuy"); // यदि स्थायी अनुबंध है, तो सीधे exchange.SetDirection (("sell") सेट करें यहाँ मैंने ओकेएक्स के स्थायी अनुबंध का परीक्षण किया है, अगर इसे बेचने के लिए सेट किया गया है, तो यह सीधे खाली हो जाता है, और यह बहुत सस्ता नहीं है।
पूर्वी वेंटिलेशनGetOrders के कोड में दो वर्तनी त्रुटियां हैं. एक function को fuction में लिखा गया है और दूसरा for लूप की शर्तों में लिखा गया है.
पूर्वी वेंटिलेशनयह मेरी गलती है। exchange.Buy ((-1, 0.5), ट्रेडिंग जोड़ी ETH_BTC है, और बाजार सूची 0.5BTC के लिए ETH खरीदने का प्रतिनिधित्व करती है exchange.Buy ((price, 0.5), यदि यह सीमा सूची है, तो यह मूल्य के साथ 0.5ETH खरीदने का प्रतिनिधित्व करता है
पूर्वी वेंटिलेशनexchange.Buy ((-1, 0.5), ट्रेडिंग जोड़ी ETH_BTC है, जो बाजार मूल्य पर 0.5BTC के ETH को खरीदने का प्रतिनिधित्व करती है यहाँ यह 0.5ETH के लिए बाजार मूल्य पर खरीदा जाना चाहिए।
ग्लिप9धन्यवाद.
घासयह सब नेट पर उपलब्ध है https://study.163.com/course/courseMain.htm?share=2&shareId=400000000602076&courseId=1006074239&_trace_c_p_k2_=c3f5d238efc3457d93c8b92c0398d2b2
घासहोम पेज पर WeChat जोड़ें, आपको समूह में लाएं
wqyकभी-कभी समस्याएं आती हैं और मुझे नहीं पता कि मुझे कहां पूछना है।
घासबदल गया
घासपुनः प्राप्त करें
घासआप GetRawJSON का उपयोग कर सकते हैं या फ़ील्ड में जानकारी देख सकते हैं
पूर्वी वेंटिलेशनबहुत बढ़िया, और मैनेजमेंट का जवाब भी। मुझे कोड में कई वर्तनी त्रुटियां मिली हैं, हाहा।
घासओह, यह सही है, गलतियों को इंगित करने के लिए धन्यवाद।
घासकुछ स्थायी अनुबंध दो तरफा होल्डिंग की अनुमति देते हैं, जिन्हें एक समतल सेटअप की आवश्यकता होती है। मैंने अपडेट किया, पहले केवल बिटमेक्स था।