Type/to search
0
Follow
1
Followers
Introdução Parte 1: Coletando gráficos K-line em negociações reais
FAQ
Created 2015-07-21 13:15:05  Updated 2019-08-01 11:01:03
 3
 3199

Olá, sou o vento frio, bem-vindo ao Inventor Quantify, e a partir de hoje, vou escrever um post sobre como começar a usar o Inventor Quantify, para que você possa começar rapidamente e escrever suas próprias estratégias.

O estilo de artigo é muito simples, e eu tento que cada pequeno artigo resolva um pequeno problema, acompanhado de um exemplo completo e funcional.

Se você tiver algum problema, entre em contato comigo, eu vou tentar ajudar você a resolver alguns problemas, porque também estou trabalhando, o tempo vai ser mais intenso, não posso responder a tempo, e também não tenho tempo para falar com você.

Por favor, compreendam.

Obter dados de K-line, é uma pergunta que os amigos no grupo costumam fazer, e aqui eu dou um pequeno exemplo simples para que vocês saibam que algumas plataformas de negociação fornecem dados de K-line, como o Bitcoin.

Okcoin, para plataformas como esta, pode ser obtido diretamente, enquanto a maioria das plataformas de negociação não fornece dados de linhas K, em que caso você deve coletar as linhas K.

Nota: Não é necessário coletar K-lines no ambiente de testes, porque o inventor quantifica os K-lines históricos fornecidos para testes, e não permite que o usuário faça transações em tempo real.

O uso é principalmente considerado, o inventor quantificado K linhas são coletados por si mesmo, em número e precisão, pode variar por pequenas diferenças, por isso, na operação em disco rígido, não é fornecido ao usuário.

É preciso ter em conta que o exchange.GetRecords (((); o número máximo de linhas K coletadas é de 1411, somando-se 1441 e sendo o primeiro a ser removido, para evitar que afete o desempenho.

img

function onTick(exchange) {

var records = exchange.GetRecords();//搜集K线,最多可以搜集1411条 if (!records) { return; } Log("当前搜集到的K(分钟)线数量",records.length);

}

function main() {

Log(exchange.GetName(), exchange.GetCurrency()); while (true) {//循环执行 onTick(exchange); Sleep(10000); }

}

Related Recommendations
Comment
All comments (3)

    大家好,我是冷风,欢迎大家使用BOTVS,从今天起,我开陆续写新手入门的文章,以方便大家快速入门,写出自己的策略。

    关于这个很期待,但是好像没有或者很少!!!

    11 years ago

    有几个问题想请教一下。

    1. 我用这个代码在回测环境中发现收集来的K线历史数据和回测日志的图是不同的,K线数据基本上OPEN/HIGH/LOW/CLOSE有两个是相同的,而且变化明显小于日志的图。我只是在onTick的最后加了一行代码打印records的最后一个。
      回测的时间选2015-08-10 17:10:24至2015-08-10 20:10:24,5分钟K线,火币BTC,实际上选其他时间段也有同样问题。请看17:55开始的3根K线,对应的打印如下:
      {"Time":1439200500000,"Open":1649.44,"High":1649.443213,"Low":1649.44,"Close":1649.443213,"Volume":226.632}
      {"Time":1439200800000,"Open":1645.52,"High":1645.52,"Low":1646.59212,"Close":1646.59212,"Volume":231.261}
      {"Time":1439201100000,"Open":1643.88,"High":1643.884816,"Low":1643.88,"Close":1643.884816,"Volume":702.867}

    2、楼主这里想说明的是,实盘环境下(无论是火币之类提供K线历史的还是其他不提供的)都要依靠我们自己的机器人收集K线数据,机器人最多会缓存1411条K线,是这样吗?

    11 years ago

    不好意思这么晚看到.. 如果交易所有提供API获取K线,托管者在实盘下面是不会自己收集的,直接获取交易所提供的K线,如果交易所不提供就自己收集, 只保存最近的1411条的, 模拟测试的话,tick级的数据是模拟的,跟实际有差别的.

    11 years ago
  • 1
Forums
PINE Language
Get the app
iPhone Download
© 2015 - ∞ INVENTOR PTE LTD (SG)