Bit-Maker 3.0 सूट स्मार्ट लर्निंग USDT स्थानीय (Binance सिंगल प्लेटफॉर्म-Arbitrage USDT Standard)

लेखक:ऑटोबिटमेकर-एबीएम, दिनांक: 2019-12-17 23:46:42
टैगः

स्वयं सीखने की जालीः

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

रणनीतिक विन्यास पैरामीटर बेहद समृद्ध हैं, टीम विशेषज्ञों को असाइन करती है, जो आपके खाते के लिए ग्राहक जोखिम और लाभ आवश्यकताओं के आधार पर अद्वितीय पैरामीटर संयोजन को अनुकूलित करती है, और 24 घंटे मानव + स्वचालित बाजार निगरानी है।

हम अपने स्वयं के विकसित विशेष सूचकांक व्यापार सेट हैं, जिनमें से प्रत्येक सूचकांक व्यापार सेट में कई उच्च गुणवत्ता वाले एकल व्यापार जोड़े शामिल हैं, प्रत्येक व्यापार जोड़े में एक अद्वितीय भार अनुपात है। रोबोट सूचकांक सेट पर संचालित होते हैं, जो एकल व्यापार के लिए एकतरफा जोखिम से बचने के लिए स्वयं-सीखने वाली ग्रिड रणनीतियों का संचालन करते हैं। अंतर्निहित स्थैतिक सूचकांक के अलावा, हमने सूचकांक सेट के लिए कई विकल्प मुद्रा मॉडल के गतिशील सूचकांक को परिभाषित किया है, जिससे जोखिम को और कम करने के लिए प्रत्येक ब्लॉक के अग्रणी मुद्राओं को सूचकांक स्तर का चयन किया गया है।

एकल खाता एक ही समय में कई एकल-मुद्रा व्यापारिक जोड़े और सूचकांक व्यापारिक जोड़े चलाने के लिए कॉन्फ़िगर किया जा सकता है, जो जोखिम जोखिम को विभाजित करता है और आपको विभिन्न जटिल बाजारों में लाभ कमाने में मदद करता है।

ऑप्टिमाइज़ेशन + विंड कंट्रोल के बारे मेंः इतिहास पुनरीक्षण सर्वर पूरे वर्ष के दौरान, सभी नवीनतम डेटा को स्वचालित रूप से पुनरीक्षण करता है, वास्तविक समय में इष्टतम पैरामीटर की गणना करता है। हमारी रणनीतिक क्लस्टर में 50 से अधिक सहायक सर्वर शामिल हैं, जो खाते की रोकथाम की स्थिति को प्रति सेकंड दो बार की औसत गति से सत्यापित करते हैं, ताकि जोखिम आने पर वे जल्दी से बाहर निकल सकें।

विभेदक हाइब्रिड क्लाउड का उपयोग करने वाले अली क्लाउड, अमेज़ॅन क्लाउड, माइक्रोसॉफ्ट क्लाउड आर्किटेक्चर, अलग-अलग प्रबंधन और निष्पादन नोड्स, बहु-नोड्स के बीच क्लस्टर बनाने के लिए अतिरेक की गारंटी, सुरक्षित और प्रभावी रूप से व्यवसाय के सुचारू संचालन और वित्तीय सुरक्षा के लिए

परीक्षण के बारे मेंः आपके फंड के आकार के आधार पर, हम लगभग दो सप्ताह का परीक्षण प्रदान करते हैं। परीक्षण चरण के दौरान, हम कमीशन नहीं लेते हैं। एक बार जब बॉट आपके खाते पर कब्जा कर लेता है, तो कृपया अपने आप कुछ भी न करें और जब कोई अन्य मैन्युअल स्थिति का पता चलता है, तो सभी बॉट तुरंत बाहर निकल जाएंगे।

कमीशन के बारे मेंः यह आपकी राशि पर निर्भर करता है. हम परीक्षण चरण के बाद बात कर सकते हैं. यदि आप हमारे अनुशंसा लिंक का उपयोग करके अपना खाता बना सकते हैं, तो हम बहुत कम कमीशन लेते हैं.

संपर्क करेंः WeChat: DuQi_SEC/autobitmaker/Shawn_gb2312/ABM_DD ईमेलःliuhongyu.louie@autobitmaker.com/autobitmaker_master@autobitmaker.com

WeChat के लिए एक परीक्षण आवेदन प्रस्तुत किया गया हैः微信小程序码


var chart = {
    __isStock: false,
    extension: {
        layout: 'single',
        col: 8,
        height: '300px'
    },
    tooltip: {
        xDateFormat: '%Y-%m-%d %H:%M:%S, %A'
    },
    title: {
        text: 'Account_Balance_Detail'
    },
    xAxis: {
        type: 'datetime'
    },
    yAxis: {
        title: {
            text: 'USDT'
        },
        opposite: false
    },
    series: []
};

function initChart() {
    chart.series.push({
        name: "Account_" + (Number(0)) + "_Detail",
        id: "Account_" + (Number(0)) + "_Detail",
        data: []
    });
}

function getChartPosition(avaliableMargin) {
    return {
        __isStock: false,
        extension: {
            layout: 'single',
            col: 4,
            height: '300px'
        },
        title: {
            text: '保证金占比(%)'
        },
        series: [{
            type: 'pie',
            name: 'one',
            data: [{
                name: '可用保证金(%)',
                y: avaliableMargin,
                color: '#dff0d8',
                sliced: true,
                selected: true
            }, {
                name: '保证金占用(%)',
                y: 100 - avaliableMargin,
                color: 'rgb(217, 237, 247)',
                sliced: true,
                selected: true
            }]
        }]
    };
}

function updateAccountDetailChart(ObjChart) {
    var nowTime = new Date().getTime();
    var account = exchanges[0].GetAccount();
    try {
        if (account !== null && account.Info !== null && account.Info.totalMarginBalance > 0) {
            ObjChart.add([0, [nowTime, Number(account.Info.totalMarginBalance)]]);
        }
    } catch (err) {
        Log('ERROR ' + account + ',' + err)
    }
}

function getBalance() {
    var currentBalance = 0;
    var account = exchanges[0].GetAccount();
    try {
        if (account !== null && account.Info !== null && account.Info.totalWalletBalance > 0) {
            currentBalance += Number(account.Info.totalWalletBalance);
        }
    } catch (err) {
        Log('ERROR ' + account + ',' + err)
    }
    Sleep(666);
    return Number(currentBalance).toFixed(6);
}

function getMarginBalance() {
    var currentBalance = 0;
    var account = exchanges[0].GetAccount();
    try {
        if (account !== null && account.Info !== null && account.Info.totalMarginBalance > 0) {
            currentBalance += Number(account.Info.totalMarginBalance);
        }
    } catch (err) {
        Log('ERROR ' + account + ',' + err)
    }
    Sleep(666);
    return Number(currentBalance).toFixed(6);
}

function printProfitInfo(currentBalance) {
    var profit = Number((currentBalance) - baseOriginalBalance).toFixed(5);
    var profitRate = Number((((currentBalance) - baseOriginalBalance) / baseOriginalBalance) * 100).toFixed(4);
    LogProfit(Number(profitRate), '&');
    Log('The current balance is ' + currentBalance + ', the profit is ' + profit + ', the profit rate is ' + profitRate + '%');
}

function printPositionInfo(exchangeInnerArray, totalProfitUSDT, totalProfitRate) {
    var totalProfit = 0.0
    var table = {
        type: 'table',
        title: 'POSITIONS',
        cols: ['Symbol', 'Type', 'AvgPrice', 'Position', 'Profit'],
        rows: []
    }
    if (showInfo) {
        table.rows.push([{
            body: '* 2020-09-07 之前一直人民币100万实盘运行,现策略更新,自动将合约闲置资金转入币安宝,即提高资金安全性,也可以双边获利,当合约所需保证金上涨或下降时,将自动调整两边余额。因当前FMZ无法监控币安宝余额,所以剥离10W人民币继续运行原策略以做展示。',
            colspan: 5
        }]);
    }
    table.rows.push([{
        body: '本策略是 USDT 本位,基于均值回归的币安合约套利策略,并以低风险辅助网格并行(BitMEX支持BTC本位)',
        colspan: 5
    }]);
    table.rows.push([{
        body: '套利主要币种是 BTC/USDT 和 ETH/USDT,网格覆盖币安永续合约全部币种交易对',
        colspan: 5
    }]);
    for (var index in exchangeInnerArray) {
        var position = exchangeInnerArray[index].GetPosition()
        for (var indexInner in position) {
            var profit = Number(position[indexInner].Info.unRealizedProfit);
            totalProfit = totalProfit + profit
            table.rows.push([position[indexInner].Info.symbol, (position[indexInner].Type == 1 ? 'SHORT #da1b1bab' : 'LONG #1eda1bab'), position[indexInner].Price, position[indexInner].Amount, profit.toFixed(5)]);
        }
        Sleep(168);
    }
    table.rows.push([{
        body: 'TOTAL PROFIT OF CURRENT POSITION',
        colspan: 4
    }, totalProfit.toFixed(6) + ' USDT']);
    table.rows.push([{
        body: 'TOTAL PROFIT',
        colspan: 4
    }, totalProfitUSDT + ' USDT']);
    table.rows.push([{
        body: 'TOTAL PROFIT RATE',
        colspan: 4
    }, totalProfitRate + ' %']);
    LogStatus('`' + JSON.stringify(table) + '`');
}

function main() {
    initChart();
    var ObjChart = Chart([chart, getChartPosition(100)]);
    while (true) {
        try {
            var currentBalance = getBalance();
            printProfitInfo(currentBalance);
            updateAccountDetailChart(ObjChart);
            for (var i = 0; i < 120; i++) {
                try {
                    var avaliableMargin = ((getMarginBalance()) / (getBalance())) * 100;
                    ObjChart.update([chart, getChartPosition(avaliableMargin)]);
                    var profit = Number((currentBalance) - baseOriginalBalance).toFixed(5);
                    var profitRate = Number((((currentBalance) - baseOriginalBalance) / baseOriginalBalance) * 100).toFixed(4);
                    printPositionInfo(exchanges, profit, profitRate);
                    Sleep(1000 * 120);
                } catch (errInner) {
                    throw errInner;
                }
            }
        } catch (err) {
            throw err;
        }
    }
}

अधिक

जोकर 。。