Bit-Maker überwacht USDT-Equivalente auf dem Markt

Schriftsteller:AutoBitMaker-ABM, Datum: 2021-02-20 10:46:08 Uhr
Tags:

AutobitMakerDie Strategie der risikofreien Optionen wurde offiziell eingeführt. Der Strategieprinzip ist die Sicherung sowohl gegenwärtiger als auch vertraglicher Sicherungen, die auch manuell durchgeführt werden können. Aber im Vergleich zu manuellen Operationen erfasst der BOT den Gewinnraum für alle Handelspare des Marktes, Hunderte von Transaktionen pro Tag; er befreit Ihre Hände noch mehr und reduziert das Risiko des Marktes.

Der Code ist derzeit nur für die Überwachung von Konten, der Quellcode wird veröffentlicht und jeder kann ihn selbst überprüfen oder verwenden. Die US-amerikanische Währung wird in den letzten Jahren in den USA eingeführt.

Wir sindAutobitMaker, kurzABM KapitalBitte identifizieren Sie sorgfältig den Namen des Teams und die Mikrosignale, um zu erkennen, ob es sich um eine echte oder falsche Gruppe handelt. Wir kommunizieren vorerst nur mit unseren Kunden auf WeChat, E-Mail und nicht mit anderen Mitteln wie QQ.

ABM-TeamEs gibt drei Arten von Strategien.

  • Vertragsabwicklung
  • Bargeldgeschäfte
  • Leasing

Selbstlernende Gitter basieren auf traditionellen Gitterstrategie-Denken, aber nach langfristigen Echtplatten + Retest-Daten wurden Dutzende von Parameterkonfigurationen wie Opening-Platz-Logik, Push-Time, Stop-Punkt-Position, Push-Ratio, Gitterintervall usw. optimiert. Intelligentes dynamisches Push-Modell und Stop-Punkt-Position wurden realisiert, um die hohen Risiken zu vermeiden, die mit einer einseitigen Situation des traditionellen Gitters verbunden sind, und nutzen extrem niedrige Push-Rückkehr, um ein gutes Gewinn-Rücknahme-Verhältnis zu erzielen.

Strategiekonfigurationsparameter sind sehr reich, und das Team stellt spezielle Mitarbeiter ein, die eine einzigartige Kombination von Parametern für Ihr Konto anpassen, basierend auf den Bedürfnissen der Kunden für Risiken und Erträge, und verfügt über eine rund um die Uhr automatisierte Marktüberwachung.

Wir entwickelten ein eigenes Index-Trading-System, in dem jedes Index-Trading-System mehrere hochwertige Einzelpaare enthält, die jeweils ein einzigartiges Gewichtsanteil aufweisen. Zusätzlich zu den eingebauten statischen Indizes definieren wir dynamische Indizes für verschiedene Währungsmodelle für die Index-Sätze und wählen die führenden Währungsformen aus, die die Indexstufe bilden, um das Risiko weiter zu senken.

Ein einziges Konto kann konfiguriert werden, um gleichzeitig mehrere Einwährungstransaktionspaare und Index-Trading-Paare zu betreiben, um Risiken zu verteilen und Ihnen dabei zu helfen, in einer Vielzahl von komplexen Markten zu profitieren.

Der Team Strategy Server-Cluster ist mittlerweile auf 80 und über 50 weitere Support-Server, die mit einer durchschnittlichen Geschwindigkeit von 2 mal pro Sekunde die Stop-Loss-Konditionen von Konten überprüfen und schnell abbrechen können, wenn ein Risiko eintritt.

Ali Cloud, Amazon Cloud, Microsoft Cloud Architekturen mit heterogenen Hybrid Clouds, getrennte Verwaltung und Ausführung von Knoten, Clusterbildung zwischen mehreren Knoten zur Sicherung von Redundanz, sicheren und effektiven Betrieb und finanziellen Sicherheit

Über den Versuch: Abhängig von Ihrer finanziellen Lage bieten wir einen Testlauf von etwa zwei Wochen an. Wenn ein Bot Ihr Konto übernommen hat, sollten Sie nichts selbst tun, und alle Bots werden sofort abgebrochen, wenn andere manuelle Positionen erkannt werden.

Über die Provision: Das hängt von der Höhe Ihres Geldes ab. Wir können nach der Testphase mehr darüber sprechen. Wenn Sie ein Konto mit unserem Empfehlungslink erstellen können, werden wir eine sehr niedrige Kommission verlangen.

Sie können uns kontaktieren:

  1. Gesprächsbereitschaft des Landes
  2. WirChat:DuQi_SEC/autobitmaker/autobitmaker_001/Shawn_gb2312/ABM_DD
  3. E-Mail:liuhongyu.louie@autobitmaker.com- Ich bin nicht derjenige.autobitmaker.com
  • Ein besonderer Tipp (das Mikrosignal autobitmaker001 ist nicht wir!! wir heißen auch nicht makebit!!

Wir schicken eine Test-Anmeldung an:微信小程序码


//exchanges[0] is spot

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, totalBalance) {
    var nowTime = new Date().getTime();
    var account = exchanges[0].GetAccount();
    try {
        if (account !== null && account.Info !== null && totalBalance > 0) {
            ObjChart.add([0, [nowTime, Number(totalBalance)]]);
        }
    } catch (err) {
        Log('ERROR ' + account + ',' + err)
    }
}

function getSpotBalanceInUSDT() {
    var ticker = JSON.parse(HttpQuery('https://api.binance.com/api/v1/ticker/24hr'));
    var currentBalance = 0;
    var account = exchanges[0].GetAccount();
    var priceMap = {};
    try {
        if (ticker !== null) {
            for (var index in ticker) {
                priceMap[ticker[index].symbol] = ticker[index].lastPrice;
            }
        }
        if (account !== null && account.Info !== null) {
            for (var index in account.Info.balances) {
                var obj = account.Info.balances[index];
                if (obj.asset !== 'USDT' && priceMap[obj.asset + 'USDT']) {
                    currentBalance += Number(Number(priceMap[obj.asset + 'USDT']) * Number((Number(obj.free) + Number(obj.locked))));
                }
                if (obj.asset === 'USDT') {
                    currentBalance += Number((Number(obj.free) + Number(obj.locked)));
                }
            }
        }
    } 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', 'CurrentPrice', 'Position', 'USDT Value'],
        rows: []
    }
    table.rows.push([{
        body: '本策略是 USDT 本位,低风险现货智能动态参数网格',
        colspan: 5
    }]);
    table.rows.push([{
        body: '所有交易对任选',
        colspan: 5
    }]);
    var ticker = JSON.parse(HttpQuery('https://api.binance.com/api/v1/ticker/24hr'));
    var account = exchanges[0].GetAccount();
    var priceMap = {};
    try {
        if (ticker !== null) {
            for (var index in ticker) {
                priceMap[ticker[index].symbol] = ticker[index].lastPrice;
            }
        }
        if (account !== null && account.Info !== null) {
            for (var index in account.Info.balances) {
                var obj = account.Info.balances[index];
                if (obj.asset !== 'USDT' && priceMap[obj.asset + 'USDT']) {
                    if (Number((Number(obj.free) + Number(obj.locked))) > 0) {
                        table.rows.push([obj.asset, ('LONG #1eda1bab'), Number(priceMap[obj.asset + 'USDT']), Number((Number(obj.free) + Number(obj.locked))), Number(Number(priceMap[obj.asset + 'USDT']) * Number((Number(obj.free) + Number(obj.locked)))).toFixed(4)]);
                    }
                }
            }
        }
    } catch (err) {
        Log('ERROR ' + account + ',' + err)
    }
    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 currentSpotBalance = getSpotBalanceInUSDT();
            var totalBalance = Number(currentSpotBalance).toFixed(4);
            printProfitInfo(totalBalance);
            updateAccountDetailChart(ObjChart, totalBalance);
            for (var i = 0; i < 120; i++) {
                try {
                    var avaliableMargin = 100;
                    ObjChart.update([chart, getChartPosition(avaliableMargin)]);
                    var profit = Number((totalBalance) - baseOriginalBalance).toFixed(5);
                    var profitRate = Number((((totalBalance) - baseOriginalBalance) / baseOriginalBalance) * 100).toFixed(4);
                    printPositionInfo(exchanges, profit, profitRate);
                    Sleep(1000 * 120);
                } catch (errInner) {
                    throw errInner;
                }
            }
        } catch (err) {
            throw err;
        }
    }
}

Mehr