Type/to search
1
Follow
0
Followers
L'aperçu des bénéfices du backtest simulé montre qu'il n'y a que des ventes mais pas d'achats.
Help
Created 2020-12-07 23:24:34  
 2
 1176

img

img

Comme le montre le graphique ci-dessous, j'ai testé les transactions en espèces de devises et j'ai découvert que le graphique de l'aperçu des bénéfices considérait les achats comme des stocks vides, les ventes étaient sans statistiques et je ne savais pas quel grand dieu pouvait me donner un indice.
Il y a aussiexchange.GetPosition()La méthode d'acquisition de la position n'est pas prise en charge dans le test de retour.
Le code est le suivant :

javascript
/*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); }
Related Recommendations
Comment
All comments (2)

    现货交易所没有仓位概念,建议你先看社区置顶初级教程。计算盈亏是和初始持仓不变进行比较

    6 years ago

    了解了,多谢

    6 years ago
  • 1
iPhone Download
Forums
PINE Language
© 2015 - ∞ INVENTOR PTE LTD (SG)