Baixando e analisando os dados do Dukascopy tick com os scripts Birts PHP Os dados Dukascopy estão disponíveis na web em sua forma bruta como arquivos que abrangem apenas 1 hora, de modo que torna-se evidente que algumas ferramentas são necessárias para fazer o download e analisá-lo. Antes que fosse possível obter os dados através de qualquer outro método, fiz uma série de scripts que ainda uso hoje para baixar os dados de tiques gratuitos disponíveis da Dukascopy. I8217m é um fã da simplicidade do PHP, então escolhi isso para escrever os scripts. Eles não são um código de qualidade comercial, mas eles funcionam. Você pode obter o arquivo de script PHP da página de downloads de dados de marca. Você encontrará 4 scripts dentro: um script para baixar os dados da Dukascopy, sugerentemente chamado 8220downloaddukascopydata. php8221. Como cortesia da Dukascopy, que graciosamente fornece dados gratuitos, o script não tenta baixar os arquivos que já estão no seu disco rígido. No entanto, ele ainda solicita arquivos faltantes, então, para evitar estressar seu servidor, defina as datas na matriz de moedas no início do script até a data do seu último download they8217re usando os timestamps padrão do Unix (data de época, que é, em essência, o Número de segundos desde 01.01.1970). Se você deseja converter facilmente de uma data regular para um timestamp desse tipo, você pode usar o Epoch Converter. Uma ferramenta online muito fácil de usar. Um script para processar os dados baixados, que pressupõe que ele está localizado no mesmo diretório que o script anterior e que os dados foram baixados lá (processdukascopydata. php), este precisa de alguns parâmetros, execute-o sem qualquer descrição ou check-out O próximo script. Um pequeno script de shell que processará todos os dados baixados disponíveis no formulário. bat para o Windows e o formulário. sh para o linux. Windows Download amp converter para CSV how-to Comece por visitar a seção de download do Windows PHP e buscar a versão binária mais recente como um arquivo zip. Uma vez que você tenha feito isso, desembalhe-o para c: php e também descompacte os scripts do arquivo de script que você baixou no mesmo diretório. Renomeie c: phpphp. ini-development para c: phpphp. ini. Se a sua pasta não contém um arquivo chamado php. ini-development, use php. ini-dist ou qualquer outro arquivo php. ini-something que você possa encontrar. Edite c: phpphp. ini, procure por extensionphpcurl. dll e remova o ponto e vírgula na frente da linha e adicione um 8220ext8221 na frente de 8220phpcurl. dll8221 para que pareça com isto: extensionextphpcurl. dll Salve o arquivo e saia. Se você tiver um erro de zip e sua instalação do PHP tiver um extphpzip. dll, aplique também o método acima para extensionextphpzip. dll. Dirija-se à página de download de 7-Zip e obtenha a versão da linha de comando. Descompacte e coloque 7za. exe no mesmo diretório (c: php). Clique em start-gtrun e digite cmd e clique em OK (ou, em alternativa, digite cmd e pressione enter na caixa de programas e arquivos do Windows 7vista 8220search no menu Iniciar). Digite cd php na janela de comando. Digite php downloaddukascopydata. php Tenha um café. Tenha outro café. Vão dormir. Ir trabalhar. Vá para a academia. Vá para um clube. Espere mais. I8217m não está brincando, é preciso idades. Você pode verificar o progresso observando os diretórios do par de moedas serem preenchidos. Se você receber erros estranhos, execute o processo novamente quando o 8282 terminou o 8211, ele só baixará os arquivos perdidos no primeiro passo devido a erros de rede. Se você quiser apenas baixar alguns dos pares de moedas disponíveis, você pode editar downloaddukascopydata. php e alterar a matriz no início do arquivo. Você pode alternar a ordem de download do par de moedas ou remover completamente os pares que você deseja. O número ao lado de cada par é o carimbo de data / hora do UNIX no qual iniciar o download se você deseja iniciar em um momento posterior (o padrão é a data mais antiga disponível) você pode usar o epochconverter para obter o carimbo de data / hora para a data escolhida. Quando o download terminar, supondo que você deseja obter os dados EURUSD até 01.01.2017, você deve digitar php processdukascopydata. php EURUSD 200702 201701 EURUSD. csv e a saída será colocada em EURUSD. csv. Alternativamente, você pode digitar process. bat, que processará em lote todos os dados da moeda. It8217s é, em sua maioria, seguro para ignorar o erro de spam nesta etapa. Nota: se você usar process. bat ou process. sh, talvez seja necessário atualizar as datas de término neles para obter o intervalo de dados completo. Isso deve ser, se tudo for bom, você deveria ter seus arquivos CSV no mesmo c: php E você deve estar pronto para continuar preparando seus dados de marca para o Metatrader 4. Aviso: certifique-se de ter espaço suficiente no seu disco rígido. A partir de 2017, os arquivos baixados do tick têm mais de 20 GB e, se você adicionar o tamanho dos arquivos CSV resultantes, você estará bem após a marca de 100 GB. Em primeiro lugar, observe que o meu site lida com o teste de dados de ticks, não com a importação de arquivos CSV em HST. O script CSV2FXT que processa os arquivos CSV em arquivos FXT de dados de marca gerará automaticamente os arquivos HST corretos. Se você quiser mais informações sobre isso, sugiro obter um teste TDS e ler Como preparar seus dados de ticks para o Metatrader 4 Quanto ao aumento da duração do backtest, você provavelmente teve muito menos dados em seus arquivos HST antes da importação. I8217d também aposto you8217re backtesting um EA com código virtualizado, that8217s porque demora tanto tempo. It8217ll provavelmente leva ainda mais tempo com dados de marca. Apenas para ter uma ideia se a sua EA ou alguma outra coisa, tente fazer o teste do MACD EA no mesmo par de moedas e no tempo e compare a duração. Finalmente, os dados são armazenados na pasta de dados MT4, no histórico. Para chegar lá, vá para File - Open Data Folder. Data Feed Storici Dukascopy apresenta o Suo Historical Data Feed. Os dados são disponibilizados aos usuários apenas para uso pessoal, com o único objetivo de testar e avaliar seus produtos eletrônicos proprietários. Os dados são disponibilizados para usuários apenas para uso pessoal, com o objetivo de testar e avaliar seus produtos eletrônicos proprietários. Estratégias de negociação. Os dados não se destinam nem são disponibilizados para qualquer outro propósito. Também é proibido alterar, modificar, engenharia reversa, criar produtos derivados com base ou temperar de outra forma com Dados para fins diferentes dos indicados acima. É proibido exibir publicamente qualquer parte dos dados ou divulgá-lo a terceiros. É proibido referir, direta ou indiretamente, a Dukascopy andor Data em relação ao desempenho de qualquer estratégia comercial derivada através de Dados. Ao fornecer acesso a Dados, a Dukascopy não renuncia a nenhum de seus direitos em relação ao que precede. Nenhuma garantia da Dukascopy Data é fornecida em ldquoAS ISrdquo e ldquoWITH TODAS SUAS FALTAS baseadas em dados. A Dukascopy não oferece garantia nem representação em relação aos dados. Dukascopy, seus proprietários, subsidiárias, funcionários, gerentes e agentes não devem se responsabilizar, em relação ao acesso e uso de dados pelos usuários. Sem derrogação da generalidade do exposto, entre outros, a Dukascopy não garante ou representa: esses dados serão completos, consistentes ou precisos. Entre outros, os dados podem sofrer alguma distorção durante a transferência e pode não corresponder inteiramente às flutuações históricas reais dos preços no sistema de negociação proprietário da Dukascopy. Esse Data não conterá nenhum vírus ou outro código malicioso. Esse dado será adequado para qualquer propósito específico. Entre outros, a Dukascopy não faz qualquer representação quanto à existência de qualquer relação entre o desempenho real de qualquer estratégia de negociação particular e seu desempenho quando testado usando Dados.
No comments:
Post a Comment