Comme le montre le graphique, lorsque j'ai testé les transactions de devises au comptant, j'ai découvert que le graphique de l'aperçu des bénéfices comptabilisait les achats comme des positions vides, les ventes sans statistiques, je ne sais pas à qui le dieu pourrait pointer le doigt.
L'autre estexchange.GetPosition()
La méthode d'acquisition de titres est suggérée dans les retrospectives pour ne pas soutenir cette méthode.
Le code est le suivant:
/*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);
}
Le foinL'échange instantané n'a pas de concept de position, il est recommandé de consulter le tutoriel de base de la communauté.
le cerfJe comprends, merci.