Análisis de ganancias de la simulación de retrospectiva sólo vende y no compra

El autor:el cometa, Creado: 2020-12-07 23:24:34, Actualizado:

img

img

Como se muestra en el gráfico, cuando probé las transacciones de divisas al contado, descubrí que el gráfico de la reseña de ganancias consideraba las compras como vacíos, las ventas sin estadísticas, no sé a qué dios se puede señalar. El otro es:exchange.GetPosition()El método de obtención de la tenencia no es compatible con el retrospectivo. El código es el siguiente:

/*backtest
start: 2020-05-01 00:00:00
end: 2020-12-03 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Huobi","currency":"BTC_USDT"}]
*/

var times = 0;
var lasttime = null;
var hasPosition = false; //持仓数量

function main() {
    Log("strategy started.");
    while(true){
        var records = _C(exchange.GetRecords, PERIOD_D1);
            records = records.slice(-20);
        var {Time} = records[records.length - 1];
        if(lasttime != Time){
            lasttime = Time;
            var fast = TA.MA(records, 5);
            var slow = TA.MA(records, 20);
            
            var lastFast1 = fast[fast.length - 2];
            var lastSlow1 = slow[slow.length - 2];
            var lastFast2 = fast[fast.length - 3];
            var lastSlow2 = slow[slow.length - 3];
            
            if(lastFast2 < lastSlow2 && lastFast1 > lastSlow1 && !hasPosition){
                //当前为金叉
                //$.Buy(0.001);
                exchange.Buy(-1, 0.01);
                hasPosition = true;
            }
            if(lastFast2 > lastSlow2 && lastFast1 < lastSlow1 && hasPosition){
                //当前为死叉
                exchange.Sell(-1, 0.01);
                hasPosition = false;
            }
        }
    }
}

function init() {
    const account = _C(exchange.GetAccount);
    Log('strategy inted.', exchange.GetName(), account);
}

Más.

Las hierbasLos intercambios de efectivo no tienen el concepto de posición, por lo que se recomienda ver el tutorial inicial de la comunidad.

el cometaYa veo, gracias.