¿Puede alguien ayudarme a ver el problema con el código de la estrategia?

El autor:- ¿Qué quieres decir?, Creado: 2021-10-13 10:00:52, Actualizado:

La búsqueda de alguien escribió una política de empuje de alarma, la retrospección no ha enviado la señal, el disco real indica un error, ¿puedes ayudarme a ver el código?img

El valor de las pérdidas se calculará en función de las pérdidas anuales.6060,66060, 46060,36060, PERIOD_H1,45*60, PERIOD_M30, PERIOD_M15, PERIOD_M5, PERIOD_M1];// Lista de líneas de minutos El tiempo final = 0 var malevel0 = new Array ((); // define un diccionario donde malevel0[symbol]=0; Función EnBar (record, símbolo) ¿Qué quieres decir? Si (registro ==null) ¿Qué es lo que está pasando? Var len=record.length-1; Si el número de puntos es igual al número de puntos, ¿Qué es lo que está pasando?

var ma200=TA.MA(record,ma_len)
var cci = talib.CCI(record, cci_len)
if(record[len].Open<ma200[len])
    malevel0[symbol]=1;
var con=(malevel0[symbol]==1) && record[len].Open>ma200[len] && cci[len]>cci_value
//Log("con",malevel0[symbol]l,malevel0,record[len].Open,ma200[len],cci[len],record[len-1].Open,ma200[len-1]);
if(con)
{
      malevel0[symbol]=0;
      str = _D(record[record.length - 1].Time);//把 此刻的 毫秒时间  转换成  字符串(能看懂的)
      Log("条件提示["+symbol+str+"]推送微信@" ); //输出一条信息  并推送微信
    
}

¿Por qué no? ¿Qué es eso? Función profit_order (en inglés) ¿Qué quieres decir? Los precios = get_last_price Si (precios == nulo) ¿Qué es lo que está pasando? si (CheckPositionDirect) == 1) / más de una posición ¿Qué quieres decir?

   if( prices[0]-stop_price>profit_perent*stop_price/100)
   {
       Log("多止盈",prices[0],stop_price);
       ClosePosition(prices[0]);
       reset();
 
   }
 
 }else if(CheckPositionDirect()==-1)//空仓
 {
   if( stop_price-prices[1] >profit_perent*stop_price/100)
   {
       Log("空止盈",prices[1],stop_price);
       ClosePosition(prices[1]);
       reset();
 
   }
    
 }  

} */

La lógica de las transacciones principales Función Enmarcado (simbolo) ¿Qué es eso?
//exchange.SetContractType (tipo de cambio de contratación); //exchange.SetContractType (tipo de cambio de contratación); Record = exchange.GetRecords ((Period_list[period])); y el nombre de la página en el que se encuentra el archivo. Si el registro es nulo ¿Qué es lo que está pasando? Si (record[record.length - 1].Tiempo!= último Tiempo) { //Log (() el nuevo K columna de la línea produce el símbolo, registro [record.length - 1].Time); lastTime = record[record.length - 1].Time; // Es muy importante actualizar lastTime.

         OnBar(record,symbol);//收盘价模式
       
    }

}

// plataforma basada en el nivel de tick La función principal (() { Falg = 1; var contract_list=[ BTC_USDT, ETH_USDT] Por lo tanto, el valor de la lista de contratos es el valor de la lista de contratos. Malevel0[contract_list[i]]=0; Malevel0[contract_list[i]]=0; Malevel0[contract_list]=0; Malevel0[contract_list]=0; Malevel0[contract_list]=0; Malevel0[contract_list]=0; Malevel0[contract_list]=0; Malevel0[contract_list]=0; Malevel0[contract_list]=0; Malevel0[contract_list]=0; Malevel0[contract_list]=0; ¿Por qué no? mientras (falg) ¿Qué quieres decir? Los símbolos var; Por lo tanto, el valor de la lista de contratos es el valor de la lista de contratos. El nombre de la empresa es el mismo que el nombre de la empresa.

     exchange.IO("currency", symbols)
     OnTick(symbols); 
     Sleep(500)  
    }
    
    
}

}


Más.

- ¿Qué quieres decir?/upload/asset/1642f0eca89ded61e3f8d.png /upload/asset/1642f0eca89ded61e3f8d.png /upload/asset/1642f0eca89ded61e3f8d/ No muestra información errónea

Las hierbasEn la página del robot, puedes ver los errores específicos.