Estadísticas BitVC Dinámico/OKCoin ha logrado ganancias y pérdidas / saldo de cuenta 796 (2018-03-27 16:29:43)

El autor:No hay nada, Fecha: 2014-11-12 17:48:41
Las etiquetas:

Utilizando la función GetRawJSON que se ha añadido en la versión 2.67, se puede devolver la información original de la última solicitud de REST API para analizar los parámetros de extensión de la plataforma.


function main() {
    var eName = exchange.GetName();
    var coin = exchange.GetCurrency().toLowerCase();
    var isBitVC = eName == "Futures_BitVC";
    var isOKCoin = eName == "Futures_OKCoin";
    var is796 = eName == "Futures_796";
    if (!isBitVC && !isOKCoin && !is796) {
        throw "该策略为 BitVC/OKCoin/796 期货专用策略";
    }
    if (parseFloat(Version()) < 2.67) {
        throw "要求托管者2.67版本以上";
    }
    
    var lastVal = 0;
    LoopIntval = Math.max(LoopIntval, 1);
    Log(isBitVC ? "BitVC动态权益" : "OKCoin已实现盈亏", "将显示为收益曲线, 有变化后更新");
    while (true) {
        var account;
        while (!(account = exchange.GetAccount())) {
            Sleep(300);
        }
        // GetRawJSON返回GetAccount的原始信息
        var js = exchange.GetRawJSON();
        try {
            var obj = JSON.parse(js);
            var v = 0;
            if (isBitVC) {
                v = obj.dynamicRights;
            } else if (isOKCoin) {
                for (var i = 0; i < obj.info[coin].contracts.length; i++) {
                    v += obj.info[coin].contracts[i].profit;
                }        
            } else if (is796) {
                v = account.Stocks;
            }
            if (v != lastVal) {
                lastVal = v;
                LogProfit(lastVal, 'Stocks:', account.Stocks, 'FrozenStocks:', account.FrozenStocks);
            }
        } catch(e) {
            Log(e);
        }
        Sleep(LoopIntval * 1000);
    }
}

Más.