Sunday 24 December 2017

Trading forex multi dias


Forex Trading Diary 6 - Multi-Day Trading e Plotting Resultados Tem sido um tempo desde a minha última Forex Trading Diário atualização. Ive sido ocupado trabalhando no novo QuantStart Jobs Board e por isso eu não tive tanto tempo como de costume para trabalhar em QSForex. Embora eu tenha feito alguns progressos Em particular, eu tenho sido capaz de adicionar algumas novas funcionalidades, incluindo: Documentação - Ive agora criou uma subseção QSForex no site, que inclui todas as entradas do Forex Trading Diary e documentação para QSForex. Em particular, inclui instruções detalhadas de instalação e um guia de uso para backtesting e live trading. Geração de Dados de Tick Simulado - Como é difícil baixar dados de tick de forex em massa (ou pelo menos tem sido de certos fornecedores que eu uso) eu decidi que seria mais simples gerar apenas alguns dados de tick aleatório para testar o sistema. Multi-Day Backtesting - Uma solicitação de recurso de longa data no QSForex é a capacidade de backtest durante vários dias de dados de carrapatos. Na última versão, o QSForex agora suporta backtesting multi-dia e multi-pair, tornando-o substancialmente mais útil. Plotting Backtesting Results - Enquanto console de saída é útil, nada bate ser capaz de visualizar uma curva de equidade ou redução histórica. Ive fez uso da biblioteca Seaborn para traçar os vários gráficos de desempenho. Nesta entrada eu descreverei todos os novos recursos em detalhes abaixo. Se você não tem sido capaz de seguir a série até à data, você pode ir para a seção QSForex, a fim de recuperar o atraso em entradas anteriores. Simulated Tick Script de Dados Um recurso extremamente importante requisitado para QSForex tem sido a capacidade de backtest durante vários dias. Anteriormente, o sistema só suportava backtesting através de um único arquivo. Esta não era uma solução escalável como tal um arquivo deve ser lido na memória e posteriormente em um Pandas DataFrame. Enquanto os arquivos de dados de carrapatos produzidos não são enormes (cerca de 3,5Mb cada), eles se somam rapidamente se considerarmos vários pares em períodos de meses ou mais. Para começar a criar uma capacidade de multi-dia / multi-arquivo, comecei a tentar baixar mais arquivos do histórico do tiquetaque do DukasCopy. Infelizmente, encontrei alguns problemas e não consegui fazer o download dos arquivos necessários para testar o sistema. Desde que eu não era demasiado fussed sobre as séries de tempo reais se, eu senti que seria mais simples escrever um certificado para gerar dados simulados do forex eu mesmo. Eu coloquei este script no arquivo scripts / generateatesimulatedpair. py. O código atual pode ser encontrado aqui. A idéia básica do script é gerar uma lista de timestamps distribuídos aleatoriamente, cada um possuindo valores bid / ask e valores de volume bid / ask. O spread entre o lance eo pedido é constante, enquanto os valores de lance / solicitação são gerados como uma caminhada aleatória. Desde que eu realmente não vou estar testando realmente todas as estratégias reais sobre estes dados que eu não estava muito incomodado sobre suas propriedades estatísticas ou seus valores absolutos em relação aos pares de moeda estrangeira real. Contanto que ele tivesse o formato correto e comprimento aproximado, eu poderia usá-lo para testar o sistema de backtesting de vários dias. O script está atualmente codificado para gerar dados de forex para todo o mês de janeiro de 2017. Ele usa a biblioteca de calendário Python para determinar dias úteis (embora eu ainda não tenha excluído feriados) e, em seguida, gera um conjunto de arquivos do formato BBBQQQYYYYMMDD. csv . Onde BBBQQQ será o par de moeda especificado (por exemplo, GBPUSD) e YYYYMMDD é a data especificada (por exemplo, 20170112). Esses arquivos são colocados no diretório CSVDATADIR, que é especificado no settings. py na raiz do aplicativo. Para gerar os dados, o seguinte comando deve ser executado, onde BBBQQQ deve ser substituído com o nome de moeda particular de interesse, p. GBPUSD: O arquivo requer modificação para gerar vários meses ou anos de dados. Cada lima do tiquetaque diário é na ordem de 3.2Mb no tamanho. No futuro, vou estar a modificar este script para gerar vários meses ou anos de dados com base numa lista de pares de moedas fornecidos, em vez de os valores serem codificados. No entanto, por enquanto isso deve ajudá-lo a começar. Tenha em atenção que o formato coincide exactamente com o dos dados históricos do tick DukasCopy, que é o conjunto de dados que estou a utilizar actualmente. Multi-Day Backtesting Implementado Seguir diretamente da geração de dados de carrapatos simulados é a implementação de backtesting de vários dias. Enquanto meu plano de longo prazo é usar um sistema de armazenamento histórico mais robusto, como PyTables com HDF5. Por enquanto eu vou fazer uso de um conjunto de arquivos CSV, um arquivo por dia por par de moedas. Esta é uma solução escalável à medida que aumenta o número de dias. A natureza impulsionada pelo evento do sistema exige apenas a necessidade de N arquivos na memória ao mesmo tempo, onde N é o número de pares de moedas sendo negociados em um determinado dia. A idéia básica do sistema é que o atual HistoricCSVPriceHandler continue a usar o método streamnexttick, mas com uma modificação para contabilizar vários dias de dados através do carregamento de cada dia de dados seqüencialmente. A implementação atual sai do backtest após o recebimento da exceção StopIteration lançada pela próxima (...) chamada para self. allpairs como mostrado neste snippet de pseudocódigo: Na nova implementação, este snippet é modificado para o seguinte: Neste snippet, Quando StopIteration é gerado, o código verifica o resultado de self. updatecsvforday (). Se o resultado for True, o backtest continuará (em self. curdatepairs., Que poderia ter sido alterado para os dados dos dias subsequentes). Se o resultado for Falso. O backtest termina. Esta abordagem é muito eficiente de memória como apenas um dado dias vale de dados é carregado em qualquer ponto. Isso significa que podemos potencialmente realizar meses de backtesting e são limitados apenas pela velocidade de processamento da CPU ea quantidade de dados que podemos gerar ou adquirir. Eu atualizei a documentação para refletir o fato de que o sistema agora espera vários dias de dados em um formato específico, em um determinado diretório que deve ser especificado. Plotting Backtesting resultados com Seaborn Library Um backtest é relativamente inútil se não podemos visualizar o desempenho da estratégia ao longo do tempo. Embora o sistema tenha sido baseado principalmente na consola até à data, comecei a transição para uma interface gráfica de utilizador (GUI) com esta versão. Em particular, criei o habitual painel de três gráficos que muitas vezes acompanham métricas de desempenho para sistemas de negociação quantitativa, nomeadamente a curva de equidade, o perfil de retorno ea curva de redução. Todos os três são calculados para cada tick e são enviados para um arquivo chamado equity. csv no OUTPUTRESULTSDIR encontrado em settings. py. Para ver os dados usamos uma biblioteca chamada Seaborn. Que produz gráficos de qualidade de publicação (sim, qualidade de publicação ACTUAL) que parecem muito melhores do que os gráficos padrão produzidos pelo Matplotlib. Os gráficos parecem muito próximos dos produzidos pelo pacote R ggplot2. Além disso Seaborn realmente usa Matplotlib embaixo, assim você ainda pode usar a API Matplotlib. Para permitir a saída Ive escrito o script output. py que vive no backtest / diretório. A lista para o script é a seguinte: Como você pode ver o script importa Seaborn e abre o arquivo equity. csv como um Pandas DataFrame, em seguida, simplesmente cria três subtramas, um cada para a curva de equidade, retornos e levantamento. Observe que o gráfico de levantamento em si é realmente calculado a partir de uma função auxiliar que vive em performance / performance. py. Que é chamado a partir da classe Portfolio no final de um backtest. Um exemplo da saída para a estratégia incluída MovingAverageCrossStrategy, em um conjunto gerado aleatoriamente de dados de GBPUSD para o mês de janeiro de 2017, é dado como segue: Em particular, você pode ver as seções planas da curva de equidade nos fins de semana onde nenhum dado Está presente (pelo menos, para este conjunto de dados simulado). Além disso, você pode ver que a estratégia simplesmente perde dinheiro de uma forma bastante previsível neste conjunto de dados aleatoriamente simulados. Este é um bom teste do sistema. Estamos simplesmente tentando seguir uma tendência em uma série de tempo gerada aleatoriamente. As perdas ocorrem devido ao spread fixo introduzido no processo de simulação. Isso torna muito claro que se quisermos fazer um lucro consistente em maior freqüência de negociação forex, vamos precisar de uma borda quantificável específico que gera retornos positivos acima e acima dos custos de transação, como a propagação e derrapagem. Teremos muito mais a dizer sobre este ponto extremamente importante em entradas subseqüentes do Forex Trading Diary. Próximos Passos Cálculos de Posição de Fixação Ive recentemente teve muita correspondência extremamente útil com usuários de QSForex através dos comentários de Disqus e da página de QSForex Issues sobre a correção dos cálculos dentro da classe de Posição. Alguns observaram que os cálculos podem não refletir exatamente como o OANDA (o corretor usado para o sistema trading. py) calcula os negócios em moeda cruzada. Assim, uma das etapas mais importantes é realmente fazer e testar essas modificações sugeridas em position. py e também atualizar os testes de unidade que vivem em positiontest. py. Isso terá um efeito knock-on com o portfolio. py e também o portfoliotest. py. Medição de Desempenho Embora tenhamos agora um conjunto básico de indicadores de desempenho visual através da curva de equidade, perfil de retorno e série de levantamento, precisamos de medidas de desempenho mais quantificadas. Em particular, precisamos de métricas de nível de estratégia, incluindo relações de risco / recompensa comuns, tais como o Índice de Sharpe, Rácio de Informação e Rácio de Sortino. Também precisamos de estatísticas de levantamento, incluindo a distribuição dos levantamentos, bem como estatísticas descritivas, como redução máxima. Outras métricas úteis incluem a taxa de crescimento anual composta (CAGR) eo retorno total. No nível do comércio / posição nós queremos ver métricas como o lucro / perda avg, lucro máximo / perda, relação de lucro e vitória / relação de perda. Desde que construímos a classe Posição como parte fundamental do software desde o início, não deve ser muito problemático gerar essas métricas por meio de alguns métodos adicionais. Mais sobre isso na próxima entrada, no entanto clique abaixo para saber mais sobre. A informação contida neste site é a opinião dos autores individuais com base em sua observação pessoal, pesquisa e anos de experiência. O editor e seus autores não são conselheiros de investimentos, advogados, CPAs ou outros profissionais de serviços financeiros registrados e não prestam serviços de consultoria jurídica, tributária, contábil, de investimento ou outros serviços profissionais. As informações oferecidas por este site são apenas educação geral. Porque cada situação factual dos indivíduos é diferente o leitor deve procurar seu próprio conselheiro pessoal. Nem o autor nem o editor assumem qualquer responsabilidade por quaisquer erros ou omissões e não têm responsabilidade nem responsabilidade perante qualquer pessoa ou entidade em relação a danos causados ​​ou alegadamente causados ​​directa ou indirectamente pelas informações contidas neste site. Use por sua conta e risco. Além disso, este site pode receber compensação financeira das empresas mencionadas através de publicidade, programas afiliados ou de outra forma. As tarifas e ofertas dos anunciantes mostrados neste website mudam com freqüência, às vezes sem aviso prévio. Enquanto nos esforçamos para manter informações precisas e oportunas, os detalhes da oferta podem estar desatualizados. Os visitantes devem assim verificar os termos de tais ofertas antes de participar neles. O autor e seu editor não se responsabilizam por atualizar informações e renunciarem a responsabilidade por conteúdo, produtos e serviços de terceiros, inclusive quando acessados ​​por meio de hiperlinks e / ou anúncios neste site. DISCLAIMER Versão em Português: http://polomercantil. com. br Fonte do artigo: http://pt. articlesnatch. com Sobre o autor: Ed i suggerimenti operativi hanno natura di obtendo e che le decisioni derivanti sono prese em piena autonomia ea proprio rischio. I relatórios e o analisar redatte si propongono come strumento di informaci on y supporto alloperativit e non costituiscono sollecitazione al pubblico risparmio. I rendimenti passati non possono essere garanzia per quelli futuri. Chi scrive declina ogni responsabilidade no seu eventuali inesatate dei dati riportati e chiqui investe i propri risparmi prendendo spunto dalle indicazioni riportate lo fa a proprio rischio e pericolo. E possibile che chi scrive sia direttamente interessado em qualita di risparmiatore privato allandamento dei valori mobiliari di cui si discute. AVVERTENZA SUI RISCHI A negociação de um contrato de trabalho com um CFD comporta um alto nível de risco para o risco de não ser objecto de um inquérito. Lutilizzo della leva finanziaria crea ulteriori rischi e esposizioni a perdite. A empresa de gestão de risco, que se ocupa directamente do direito de exploração e dos direitos de propriedade e de propriedade, tem por objectivo fornecer serviços de manutenção ao investimento e fornecer serviços de manutenção ao cliente. As possibilidades de perda de capital e de investimento no investimento não podem ser garantidas. Educar para a negociação de negócios e câmbio CFD, e se avete dei dubbi chiedete il parere di un consulente finanziario o fiscale indipendente. Scalping, trading intraday e multi dias de negociação: quale conviene sul Forex Prediligo il trading intraday sia allo scalping che al comércio di posizione o multiday. Cerco semper una via di mezzo per non ritrovarmi con delle perdita eccessive o con un grado di stress emotivo troppo alto. A negociação de escalpelamento infatti compor um estresse emotivo molto elevato, mentre il trading di posizione o multiday compor delle eventuali perdite troppo alte per il mio mode di fare trading. Tuttavia, mentre nel primo caso e guadagni sono molto contenuti, volte troppo, e nel lungo período potrebbe andare a tuo sfavore. Nel secondo caso gli eventuali profitti sono davvero allettanti, ma le perdite Meglio non pensarci. Todos os direitos reservados a strada intraprendere Io ho scelto uma via intermedia, quella del trading intraday. Almenagem para a parte superior de quase todos os tipos de varianti. Cosa significa Se há seguimento para esta categoria, há um visto para um prêmio e um prêmio para o resto da vida. A questo punto possono presentarsi 2 circostanze: lo stop proft vem toccato senza conseguiu, em quanto ho gi preso um piccolo profitto em scalping il prezzo continua ad andare verso la mia direzione e sposto lo stop ogni volta forma e uma barra dinversione su un determinato Time frame, fino a quando lo stop profit não vem toccato o fino a quando não é decido di chiudere il trade. Em questultimo caso pu significativo em seu comércio de comércio e comércio, em troca de negociação intradia em negociação de vários dias e posizione. Comendo a massa, a vida é emocional che di profitti e puoi guadagnare molti punti senza pi in a posizione, ma semplicemente spostando para parar o lucro na base ao movimento do prezzo. Ti faccio un esempio pratico. Studio semper i grafici a time frame Adicionar à Lista de Desejos Adicionar para comparar. Questo perch poi posso trovare meglio una direzione profittevole filtrando le mie entrate su tempo intraday. Em modo de rischiare molto meno em termini di stop loss. Qual é a melhor maneira de fazer uma conversão de um dia para outro? Quindi provoc ad anticipar movimento em tempo intraday. A seguinte informação não está disponível atualmente em Português. Ho raggiunto il primo profitto ma poi sono stata stoppata nella notte senza alcuna perdita. Il mio secondo tentativo de andare a rialzo avviene il 27 febbraio. O mio primo obiettivo stato raggiunto e il prezzo finalmente continuado ad andare verso la mia direzione. Sono, stata, molto, fortunata, perch, 27, fevereiro, estando, un, disserviço, circa, 2, ore, broker, chevy, Oanda. Avevo inserir um código postal para o preço de um bem-estar com um preço razoável, ao contrário do preço de um cheque, quando um riu é um riad, era um cancelamento. Quindi oggi 28 febbraio cerco de mediare ancora il commerce perch avevo visto unulteriore possibilit di rialzo e chiudo tutta la posizione in mattinata. Avrei potuto lasciarla aperta Não, por 2 motivi: não voglio pi rischiare che il mio parar lucro venga cancellato por um disservizio del broker oggi venerd e não consigliabile lasciare aperti comércio durante o final da semana fim Forex, perca allapertura potrebbero verificarsi dei gap. Perch conviene avere un approccio di questo genere Se for um profissional que trabalha para o mercado de trabalho, é importante para o seu negócio. Restare in una posizione in profitto per pi giorni pu darti molte soddisfazione sia in termini di guadagno che di relax mentale. Da madrança com um corretor de altro com MT4. Ti comunica o vídeo com o vídeo em directo. Per il momento ti auguro un sereno fim de semana

No comments:

Post a Comment