अपग्रेड! डिजिटल मुद्रा वायदा वर्ग मार्टिन रणनीति

लेखक:छोटे सपने, बनाया गयाः 2022-02-07 09:12:36, अद्यतन किया गयाः 2023-09-20 10:11:23

img

अपग्रेड! डिजिटल मुद्रा वायदा वर्ग मार्टिन रणनीति

作为一个教学策略,兼顾一定的实战性能当然是最好的。「数字货币期货类马丁策略」在FMZ.COM围观板块也已经展示了小半年了。经历了好几拨风吹雨打,马丁、网格策略有其风险硬伤,参数保守一点也不是不能用。

  • बिआन वायदा वास्तविक मूल्य

    img

  • dYdX डिस्क

    img

सपना ने कहा, "हमारे पास कोई भी रिफिल नहीं है, लेकिन हम अपने स्वयं के हाथों से एक कुत्ते का सिर बनाते हैं।

हालांकि, पहले संस्करण की रणनीति का डिजाइन अपेक्षाकृत सरल है, इंटरफ़ेस पर केवल एक होल्डिंग है, कुल अधिकार लाभ डेटा आउटपुट, आय वक्र केवल लाभ और हानि प्राप्त करने के लिए मुद्रित किया गया है, इसमें घाटे की गणना नहीं की गई है। कई नए सहपाठियों द्वारा स्पॉट किया गया है, अनुकूलित प्रदर्शन की मांग की गई है।

इस लेख में हम सभी के साथ मिलकर इस स्थिर और वास्तविक युद्ध की छह महीने की रणनीति को उन्नत करने के लिए हैं।

उन्नयन योजना

  • उन्नयन स्थिति बार प्रदर्शित करता है, वर्तमान में होल्डिंग की जानकारी दिखाता है, न कि डेटा के एक सेट को प्रिंट करता है. वर्तमान कुल लाभ, अस्थायी लाभ, वास्तविक लाभ और हानि दिखाता है (अस्थायी लाभ और हानि के लिए कुल लाभ और हानि)
  • यह वर्तमान पोस्टिंग स्थान दिखाता है।

उन्नयन से पहले नीति के संस्करण नीति के "नोट" पृष्ठ पर दर्ज किए गए हैं।

img

这个也是我的个人开发习惯,在FMZ.COM上很方便记录策略开发、迭代的点点滴滴。

उन्नयन शुरू करो! सबसे पहले हम "स्थिति टैग" को अनुकूलित करते हैं, जो कि FMZ विकास दस्तावेजों से परिचित छात्रों को पता है कि FMZ पर स्थिति टैग डेटा प्रदर्शित करने के लिए उपयोग किया जाता है।LogStatusफ़ंक्शन. तो हम इस इनपुट को ढूंढते हैं और कोड को डिजाइन करना शुरू करते हैं.

img

अब यहां एक बड़ा कोड जोड़ेंः

                    var tblPos = {
                        "type" : "table",
                        "title" : "持仓",
                        "cols" : ["持仓数量", "持仓方向", "持仓均价", "持仓盈亏", "合约代码", "自定义字段 / " + SpecifyPosField],
                        "rows" : []
                    }
                    var descType = ["多头仓位", "空头仓位"]
                    for (var posIndex = 0 ; posIndex < pos.length ; posIndex++) {
                        tblPos.rows.push([pos[posIndex].Amount, descType[pos[posIndex].Type], pos[posIndex].Price, pos[posIndex].Profit, pos[posIndex].ContractType, SpecifyPosField == "" ? "--" : pos[posIndex].Info[SpecifyPosField]])
                    }
                    
                    var tbl = {
                        "type" : "table",
                        "title" : "数据",
                        "cols" : ["当前总权益", "实际盈亏", "当前价格", "买单价格/数量", "卖单价格/数量"],
                        "rows" : []
                    }
                    var buyOrder = null 
                    var sellOrder = null 
                    for (var orderIndex = 0 ; orderIndex < orders.length ; orderIndex++) {
                        if (orders[orderIndex].Type == ORDER_TYPE_BUY) {
                            buyOrder = orders[orderIndex]
                        } else {
                            sellOrder = orders[orderIndex]
                        }
                    }
                    var realProfit = currTotalEq - totalEq
                    if (exchange.GetName() == "Futures_Binance") {
                        _.each(pos, function(p) {
                            realProfit += parseFloat(p.Info.unRealizedProfit)
                        })                        
                    }
                    var t = exchange.GetTicker()
                    tbl.rows.push([currTotalEq, realProfit, t ? t.Last : "--", (buyOrder.Price + "/" + buyOrder.Amount), (sellOrder.Price + "/" + sellOrder.Amount)])
                    
                    // 更新图表数据             
                    if (t && showLine) {
                        _.each(pos, function(p) {
                            $.PlotLine(descType[p.Type] + "持仓价格", p.Price)
                        })
                        $.PlotLine("买单挂单价格", buyOrder.Price)
                        $.PlotLine("卖单挂单价格", sellOrder.Price)
                        $.PlotLine("当前价格", t.Last)
                    }
                    
                    // 更新状态栏数据
                    LogStatus("时间:" + _D() + "\n" + "`" + JSON.stringify(tblPos) + "`" + "\n" + "`" + JSON.stringify(tbl) + "`")

पहले की सरलता को बदलने के लिएLogStatusआउटपुट

LogStatus(_D(), "当前总权益:", currTotalEq, "持仓:", pos)

इस रणनीति में दो पैरामीटर जोड़े गए हैंः

img

  • showLine पैरामीटर इस विकल्प पर, आप वास्तविक प्लेट के पृष्ठ पर रेखाचित्र रेखांकन श्रेणी का उपयोग कर सकते हैं, जिसमें स्टॉक मूल्य, लंबित मूल्य, वर्तमान मूल्य वक्र चित्रित किए जाते हैं।

  • SpecifyPosField पैरामीटर यह सेट करने के लिए उपयोग किया जाता है कि कौन सा स्टॉक सूचना मूल फ़ील्ड प्रदर्शित किया जाना चाहिए, क्योंकि प्रत्येक एक्सचेंज के लिए स्टॉक मूल डेटा फ़ील्ड का नाम अलग-अलग है। इसलिए यहां एक अनुकूलित पैरामीटर डिज़ाइन किया गया है जो फ़ील्ड नाम को प्रदर्शित करने के लिए निर्दिष्ट करता है। उदाहरण के लिए, मेरा बिनाइन रियल डिस्कः

    img

    मैं इनपुट फ़ील्ड (एक्सचेंज इंटरफेस के लिए मूल डेटा) में स्टॉक जानकारी डेटा दिखाना चाहता हूंunRealizedProfitयह गुण है कि स्टॉक में कोई लाभ या हानि नहीं हुई है. आप इसे unRealizedProfit पर सेट कर सकते हैं। यह स्थिति पट्टी पर दिखाई देता है.

    इस तरह के एक समान डिजाइन से नीतियां असंगत डेटा के लिए अनुकूलित आउटपुट कर सकती हैं, जिससे उपयोगकर्ताओं को अपने स्वयं के आउटपुट को अनुकूलित करने का विकल्प मिलता है।

अपग्रेड नीति के बाद बिनान, dYdX की वास्तविक ड्राइव को पुनरारंभ करें

img

img

आप देख सकते हैं कि आपको क्या दिखाना है। ट्रेडिंग की प्रगति, वर्तमान स्टॉक मूल्य, लाभ और हानि, और ऑर्डर की कीमतों को देखने के लिए रणनीति बहुत सुविधाजनक है। रणनीतियों में कुछ जोखिम होते हैं, वास्तविक डिस्क अपने जोखिम के आधार पर नियंत्रण के लिए विशिष्ट पैरामीटर सेट करती है, स्व-लाभ और हानि का बोझ उठाती है। रणनीतियों को केवल सीखने के लिए खुलासा किया जाता है।


संबंधित

अधिक

AAA386क्या आप जानते हैं कि स्रोत कोड में n = 1 का अर्थ नहीं है? क्या नीचे n ++ में जमा होने की संख्या नहीं है?

एकांतवासीमुझे लगता है कि सोने के लिए अच्छा है XAUUSD अपेक्षाकृत तेजी से गिरावट के साथ गिरावट के साथ नहीं है कि तेजी से

वाहबहुआयामी, DreamHost पहले लाभ चर है कि पैरामीटर अनुपात में बदलने के लिए है, तो आप एक ही समय में कई मुद्राओं चलाने के लिए है

छोटे सपनेयह डिजाइन के अनुसार संभव है, लेकिन यह अधिक जोखिम भरा लगता है, इसलिए यह n = 1 लिखा गया है।

छोटे सपनेहां, क्योंकि विभिन्न व्यापारिक जोड़े, कीमतों में बहुत अंतर करते हैं, अंतर को प्रतिशत में डिजाइन करने की आवश्यकता होती है। यदि आप मूल्य अंतर को जारी रखना चाहते हैं, तो आपको एक सरणी पैरामीटर सेट करने की आवश्यकता है, जो इन विभिन्न किस्मों के मूल्य अंतर को अलग से सेट करता है।