

Seperti yang ditunjukkan pada gambar di atas, ketika saya menguji perdagangan mata uang tunai, saya menemukan bahwa grafik pengamatan pendapatan memperhitungkan pembelian sebagai stok kosong, penjualan tanpa statistik, tidak tahu siapa yang bisa menunjukkan.
Dan yang lainnya adalahexchange.GetPosition()Metode untuk mendapatkan Holding tidak didukung dalam umpan balik.
Kodenya adalah sebagai berikut:
/*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);
}