A resposta é que há um problema com o sistema de feedback do inventor, e eu já tinha perguntado em uma postagem, mas ele não respondeu.
https://www.fmz.com/bbs-topic/10581, como um usuário de longa data que paga, para ser honesto, não há nada mais a ser feito para resolver o problema.
A questão é amplificada quando se trata de um retorno de várias variedades, especialmente quando se trata de uma troca de pares e arbitragem de variedades.
Como no sistema de rastreamento, o getticker é uma função que leva tempo, isso significa que, quando há mais de uma dúzia de variedades, uma pesquisa obtém o preço de várias variedades, mas não de todas.
A ideia de que o mundo é um jogo de computador é muito longa, às vezes dezenas de minutos ou até mesmo dezenas de minutos, e está completamente fora da realidade.
Pergunta: Eu sou estranho.
Eu estou trabalhando com uma função chamada getrecords, que não consome tempo em um sistema de registo, então, se usarmos re[re.length-1].Close em vez de ticker.Last
O Google Maps permite que você tenha acesso a preços em tempo real de várias variedades, sem perder tempo e sem erros.
javascript
function main() {
while (true) {
var begin = new Date().getTime()
exchanges[0].GetTicker("LTC_USDT")
exchanges[0].GetTicker("BTC_USDT")
exchanges[0].GetTicker("ETH_USDT")
exchanges[1].GetTicker("LTC_USDT")
exchanges[1].GetTicker("BTC_USDT")
exchanges[1].GetTicker("ETH_USDT")
var end = new Date().getTime()
Log(end - begin)
Sleep(1000)
}
}
实盘级别回测,耗时很短。模拟级别回测因为tick是模拟生成的,不同品种可能一个周期内生成的tick数量并不同,所以一轮时间间隔可能会有增大的情况。
mt4或者聚宽等平台,不存在这个耗时问题,按道理说,发明者跟他们的原理是一样的。问题,在于GetRecords不耗时,但是GetTicker耗时,实在是有点难理解。我现在只要是品种多了,就不用GetTicker了,而用Records代替,误差反而小。在这里分享给大家,避免回测错误。
谢谢你的回答。我的确只是做了模拟级别的回测,没有做实盘级别的。实盘级别,数据太大了,对于几十个品种的策略而言,别说ticker级别的数据,就是1分钟甚至5分钟的k线数据,都无法获取,根本无法回测,会提示内存错误,之前我有发帖求助,尚未解决。
- 1


