Forecasting Financial Time Series - Parte I Nesta série de artigos, vamos criar um processo estatisticamente robusto para a previsão de séries temporárias financeiras. Essas previsões constituirão a base de um grupo de estratégias de negociação automatizadas. O primeiro artigo da série discutirá a abordagem de modelagem e um grupo de algoritmos de classificação que nos permitirão prever a direção do mercado. Dentro desses artigos, iremos fazer uso do scikit-learn. Uma biblioteca de aprendizagem de máquinas para Python. Scikit-learn contém implementações de muitas técnicas de aprendizagem de máquinas. Não só isso nos poupa muito tempo na implementação do nosso próprio, mas minimiza o risco de erros introduzidos pelo nosso próprio código e permite uma verificação adicional em relação a bibliotecas escritas em outros pacotes, como R. Isso nos dá uma grande quantidade de Confiança se precisarmos criar nossa própria implementação personalizada (por razões de velocidade de execução, digamos). Processo para Previsão Uma explicação detalhada do campo da aprendizagem de máquina estatística está além desse artigo. Para utilizar técnicas como Logistic Regression. Análise Discriminante Linear e Análise Discriminante Quadratic, precisamos delinear alguns conceitos básicos. Técnicas de aprendizagem supervisionadas As técnicas de aprendizagem supervisionadas envolvem um conjunto de tuplas conhecidas (xi, yi), i in, com xi representando as variáveis predictoras (como retornos de mercado de ações atrasados ou volume negociado) e yi representando as variáveis de monitoração de resposta associadas (como o estoque Retorno do mercado hoje). Nessa situação, estamos interessados em prever. Dadas as futuras variáveis preditoras, desejamos estimar as respostas desses preditores. Isto é contrário à inferência em que estamos mais interessados na relação entre as variáveis. Todos os algoritmos que utilizamos neste artigo, juntamente com muitos outros que empregaremos no futuro, são do domínio de aprendizagem supervisionado. Medindo Precisão de Previsão A classe particular de métodos que nos interessa envolve classificação binária. Ou seja, tentaremos alocar o retorno de porcentagem para um determinado dia em dois baldes: para cima ou para baixo. Em um previsor de produção, estaríamos muito preocupados com a magnitude dessa previsão e os desvios da predição a partir do valor real. Nesses casos, podemos usar o erro Mean-Squared. Mean Absolute Deviation e Root-Mean-Squared Error para fornecer uma estimativa de precisão de previsão. A literatura fornece muitos outros exemplos de medidas de precisão de previsão. Neste caso, só nos preocuparemos com a taxa de sucesso. Que é simplesmente a porcentagem de vezes que o provisorista alcançou uma previsão precisa (ou seja, quando o dia estava em dia e vice-versa). Em exemplos posteriores, usaremos uma matriz de confusão para determinar o desempenho da previsão em uma classe por classe. Além disso, calcularemos os valores acima mencionados e os incorporaremos ao nosso processo de pesquisa comercial. Fatores de previsão Uma metodologia de previsão é tão boa quanto os fatores escolhidos como preditores. Há um número impressionante de fatores potenciais a serem escolhidos quando prevêem o retorno do índice de mercado de ações. Neste artigo, vamos restringir os fatores aos atrasos de tempo dos retornos percentuais atuais. Isso não é porque eles são os melhores preditores, mas é porque é direto demonstrar o processo de previsão em um conjunto de dados facilmente obtido. A escolha do fator de previsão é extremamente importante, se não o componente mais importante, do pré-programador. Mesmo técnicas simples de aprendizagem de máquina produzirão bons resultados em fatores bem escolhidos. Note que o inverso não é sempre o caso. Lançar um algoritmo em um problema geralmente levará à má precisão de previsão. Para este provisorista especificamente, escolhi o primeiro e o segundo tempo de atraso da porcentagem de retorno como preditores para a direção atual do mercado de ações. Esta é uma escolha relativamente arbitrária e há muitos marcos para modificação, por exemplo, adicionando atrasos adicionais ou o volume de ações negociadas. Geralmente, é melhor ter menos preditores em um modelo, embora haja testes estatísticos disponíveis que possam demonstrar a capacidade preditiva de cada fator. Previsão do SampP500 com Regressão Logística, LDA e QDA O SampP500 é um índice ponderado das 500 maiores empresas de capital aberto (por capitalização de mercado) no mercado de ações dos EUA. Muitas vezes, é considerado uma referência de ações. Existem muitos produtos derivados para permitir a especulação ou cobertura no índice. Em particular, o SampP500 E-Mini Index Futures Contract é um meio extremamente líquido de negociação do índice. Nesta seção, vamos usar três classificadores para prever a direção do preço de fechamento no dia N com base apenas na informação de preços conhecida no dia N-1. Uma movimentação direcional para cima significa que o preço de fechamento em N é maior do que o preço em N-1, enquanto um movimento descendente implica um preço de fechamento em N inferior ao de N-1. Se pudermos determinar a direção do movimento de uma maneira que exceda significativamente uma taxa de sucesso de 50, com baixo erro e uma boa significância estatística, estamos no caminho para formar uma estratégia básica de negociação sistemática com base em nossas previsões. Nesta fase, não se preocupavam com os algoritmos de classificação de aprendizado de máquinas mais atualizados. No momento, apenas apresentávamos conceitos e começámos tão bem a discussão sobre a previsão com alguns métodos elementares. Regressão Logística A primeira técnica que consideramos é a regressão logística (LR). No nosso caso, vamos usar o LR para medir a relação entre uma variável dependente categórica binária (Up ou Down) e variáveis contínuas múltiplas independentes (a porcentagem retardada retorna). O modelo fornece a probabilidade de que um determinado (seguinte) dia seja categorizado como Up ou Down. Nesta implementação, optamos por atribuir cada dia como Up se a probabilidade exceder 0,5. Poderíamos usar um limite diferente, mas, por simplicidade, escolhi 0,5. LR usa a fórmula logística para modelar a probabilidade de obter um Up Day (YU) com base nos fatores de lag (L1, L2): a função logística é usada porque fornece uma probabilidade entre 0,1 para todos os valores de L1 e L2, Ao contrário da regressão linear onde as probabilidades negativas podem ser geradas na mesma configuração. Para ajustar o modelo (ou seja, estimar os coeficientes betai), o método de máxima verossimilhança é usado. Felizmente para nós, a implementação da montagem e previsão do modelo LR é tratada pela biblioteca scikit-learn. Análise de Discriminante Linear A próxima técnica utilizada é a Análise de Discriminação Linear (LDA). LDA difere de LR porque, em LR, modelamos P (YUL1, L2) como uma distribuição condicional da resposta Y dada pelo preditor Li, usando uma função logística. Em LDA, a distribuição das variáveis Li é modelada separadamente, dado Y, e P (YUL1, L2) é obtido através do Teorema de Bayes. Essencialmente, LDA resulta do pressuposto de que preditores são retirados de uma distribuição gaussiana multivariada. Depois de calcular as estimativas para os parâmetros dessa distribuição, os parâmetros podem ser inseridos no teorema de Bayes para fazer previsões sobre a qual classe pertence uma observação. A LDA assume que todas as classes compartilham a mesma matriz de covariância. Não me preocupar com as fórmulas para estimar a distribuição ou as probabilidades posteriores necessárias para fazer previsões, uma vez mais scikit-learn lida com isso para nós. Análise Quadratic Discriminant Análise Quadratic Discriminant (QDA) está intimamente relacionado com LDA. A diferença significativa é que cada classe agora pode possuir sua própria matriz de covariância. O QDA geralmente funciona melhor quando os limites de decisão não são lineares. LDA geralmente funciona melhor quando há menos observações de treinamento (isto é, quando é necessário reduzir a variação). O QDA, por outro lado, funciona bem quando o conjunto de treinamento é grande (ou seja, a variação é menos preocupante). O uso de um ou outro, em última instância, se resume ao compromisso de desvio de tendência. Tal como acontece com LR e LDA, scikit-learn cuida da implementação da QDA, pelo que apenas precisamos fornecer dados de treinamento para estimativa e previsão de parâmetros. Implementação de Python Para a implementação desses previsão, usaremos NumPy. Pandas e scikit-learn. Já escrevi um tutorial sobre como instalar essas bibliotecas. Comentei fortemente o código em si, então deve ser fácil verificar o que está acontecendo. O primeiro passo é importar os módulos e bibliotecas relevantes. Importamos o LogisticRegression. Classificadores LDA e QDA para este provisorista: agora que as bibliotecas são importadas, precisamos criar um DataFrame de pandas que contém os retornos percentuais atrasados para um número anterior de dias (padrão para cinco). O createlaggerieseries terá um símbolo de estoque (conforme reconhecido pelo Yahoo Finance) e crie um DataFrame atrasado ao longo do período especificado: a próxima função auxiliar é projetada para criar uma porcentagem de hitrate para cada modelo, eliminando o código duplicado. Baseia-se no fato de que os objetos Regression Logística, LDA e QDA possuem os mesmos métodos (ajuste e previsão). A taxa de sucesso é enviada para o terminal: Finalmente, nós a amarramos com uma função principal. Neste caso, tentaríamos prever a direção do mercado de ações norte-americano em 2005, usando dados de retorno de 2001 a 2004: a saída do código é a seguinte: pode-se ver que a Regressão Logística e o Analisador Discriminador Linear foram capazes de Ganhe uma taxa de sucesso de 56. No entanto, o Analisador Quadratic Discriminant foi capaz de melhorar em ambos para produzir uma taxa de sucesso de 60. Para o período específico analisado, isso é provável devido ao fato de haver alguma não linearidade na relação entre os fatores retardados e a direção que não está bem capturada na análise linear. Assim, existe a esperança de que possamos prever parcialmente o mercado de ações dos EUA. Existem algumas ressalvas para esta metodologia de previsão: não utilizamos nenhuma forma de validação cruzada para reduzir os erros de montagem. Um provisorista exigiria que essa análise fosse considerada robusta. O pré-mediador só foi treinado em dados entre 2001-2004 inclusive. Os dados mais recentes sobre o mercado de ações podem ter precisão de previsão substancialmente diferente. Nós realmente não tentamos trocar essa informação. Em particular, como é que vamos realmente executar negócios? Utilizaríamos o futuro do e-mini dos Estados Unidos Usaríamos as ordens de mercado aberto (MOO) ou de mercado (MOC) Nós também precisamos considerar os custos de transação. Em artigos subseqüentes, consideramos essas questões em maior profundidade. Um aviso sobre a previsão aleatória Nesta seção, eu quero mostrar o problema da significância estatística quando lidar com os meteorologistas. Além do previsor descrito acima, também gerei uma série de previsão baseada unicamente no sinal de sorteios aleatórios de uma distribuição normal padrão. Note-se que, no mesmo período, produziu uma taxa de acerto de previsão de 53,4 e, no entanto, o método usado para gerar a série é essencialmente não diferente de jogar uma moeda Mantenha isso em mente sempre que você realiza os procedimentos de previsão, pois muitas vezes pode levar a um ataque horrível Desempenho comercial se não for levado em consideração. Nos artigos a seguir, consideramos os classificadores de previsão não-lineares supervisionados mais avançados, como redes neurais artificiais (ANN) e máquinas vetoriais de suporte (SVM). Com um estábulo de técnicas de aprendizado de máquina à nossa disposição, posteriormente, seremos capazes de usar métodos de conjunto para produzir uma precisão e robustez de previsão que, por vezes, podem exceder as de qualquer provisorista. Estratégia de Negociação da AMARPARIA no Índice de Mercado de Valores da SampP500 Usando R In Este artigo, eu quero mostrar-lhe como aplicar todos os conhecimentos adquiridos nas postagens anteriores da análise de séries temporais para uma estratégia de negociação no índice de mercado de ações da SampP500. Veremos que ao combinar os modelos ARIMA e GARCH, podemos superar de forma significativa uma abordagem Buy-and-Hold a longo prazo. Visão geral da estratégia A idéia da estratégia é relativamente simples, mas se você deseja experimentar com isso, eu sugiro muito ler as postagens anteriores sobre a análise das séries temporais para entender o que você estaria modificando. A estratégia é realizada de forma contínua: para cada uma Dia n, os dias anteriores dos retornos logarítmicos diferenciados de um índice de mercado de ações são usados como uma janela para montar um modelo ARIMA e GARCH ideal. O modelo combinado é usado para fazer uma previsão para os retornos do dia seguinte. Se a predição é negativa, o estoque é curto no fechamento anterior, enquanto que se for positivo, é desejável. Se a previsão é a mesma direção que o dia anterior, nada será alterado. Para esta estratégia usei o máximo de dados disponíveis do Yahoo Finance para o SampP500. Peguei o k500, mas este é um parâmetro que pode ser otimizado para melhorar o desempenho ou reduzir a redução. O backtest é realizado de forma direta e vetorial usando R. Ele não foi implementado no backtester baseado em eventos Python até o momento. Daí o desempenho alcançado em um sistema de comércio real seria provavelmente um pouco menor do que você poderia alcançar aqui, devido à comissão e à derrapagem. Implementação da Estratégia Para implementar a estratégia, vamos usar alguns dos códigos que criamos anteriormente na série de artigos de análise de séries temporais, bem como algumas novas bibliotecas, incluindo o rugarch. Que me sugeriu Ilya Kipnis no QuantStrat Trader. Passarei pela sintaxe de uma forma passo a passo e apresentarei a implementação completa no final, bem como um link para o meu conjunto de dados para o indicador ARIMAGARCH. Eu incluí o último porque me levou alguns dias no meu PC dekstop para gerar os sinais. Você deve ser capaz de replicar meus resultados na íntegra, pois o próprio código não é muito complexo, embora leve algum tempo para simular se você Realizá-lo na íntegra. A primeira tarefa é instalar e importar as bibliotecas necessárias em R: Se você já possui as bibliotecas instaladas, pode simplesmente importá-las: com isso será aplicado a estratégia para o SampP500. Podemos usar quantmod para obter dados que datam de 1950 para o índice. O Yahoo Finance usa o símbolo GPSC. Podemos então criar os retornos logarítmicos diferenciados do preço de fechamento do SampP500 e eliminar o valor inicial de NA: precisamos criar um vetor, previsões para armazenar nossos valores de previsão em datas específicas. Nós estabelecemos o comprimento do comprimento anterior para ser igual ao comprimento dos dados de negociação que temos menos k, o comprimento da janela: Nesta fase, precisamos fazer um loop a cada dia nos dados de negociação e caber um modelo ARIMA e GARCH apropriado para a janela de rolagem de Comprimento k. Dado que nós tentamos 24 ajustes ARIMA separados e se encaixam em um modelo GARCH, para cada dia, o indicador pode levar muito tempo para gerar. Usamos o índice d como uma variável de loop e loop de k para o comprimento dos dados de negociação. Em seguida, criamos a janela de rolagem, levando os retornos do SampP500 e selecionando os valores entre 1d e kd, onde k500 para esta estratégia: Nós usamos o Mesmo procedimento no artigo ARIMA para pesquisar todos os modelos ARMA com p e q dentro, com exceção de p, q0. Nós envolvemos a chamada arimaFit em um bloco de tratamento de exceção R tryCatch para garantir que, se não conseguirmos um ajuste para um valor particular de p e q, ignoramos e avançamos para a próxima combinação de p e q. Note-se que definimos o valor integrado de d0 (este é um d diferente para o nosso parâmetro de indexação) e, como tal, estamos realmente adaptando um modelo ARMA. Em vez de um ARIMA. O procedimento de looping nos proporcionará o melhor modelo ARMA, em termos do Critério de Informação Akaike, que podemos usar para alimentar nosso modelo GARCH: no próximo bloco de código, usaremos a biblioteca do rugarch, com o Modelo GARCH (1,1). A sintaxe para isso exige que configuremos um objeto de especificação ugarchspec que leva um modelo para a variância e a média. A variância recebe o modelo GARCH (1,1) enquanto a média leva um modelo ARMA (p, q), onde p e q são escolhidos acima. Também escolhemos a distribuição sged para os erros. Uma vez que escolhemos a especificação, realizamos o ajuste real do ARMAGARCH usando o comando ugarchfit, que leva o objeto de especificação, os k retornos do SampP500 e um solucionador de otimização numérica. Optamos por usar o híbrido. Que tenta diferentes solucionadores, a fim de aumentar a probabilidade de convergência: se o modelo GARCH não converge, simplesmente estabelecemos o dia para produzir uma previsão longa, o que é claramente um palpite. No entanto, se o modelo converge, nós emitimos a direção de predição de data e amanhã (1 ou -1) como uma seqüência de caracteres em que ponto o ciclo está fechado. Para preparar a saída para o arquivo CSV, criei uma seqüência de caracteres que contém os dados separados por uma vírgula com a direção de previsão para o dia subseqüente. O penúltimo passo é a saída do arquivo CSV para o disco. Isso nos permite levar o indicador e usá-lo em software de backtesting alternativo para análise posterior, se assim desejar: No entanto, há um pequeno problema com o arquivo CSV como está no momento. O arquivo contém uma lista de datas e uma previsão para a direção de amanhã. Se devêssemos carregar isso no código de backtest abaixo, como seria o caso, nós estaríamos realmente apresentando um viés avançado porque o valor de previsão representaria dados não conhecidos no momento da predição. Para explicar isso, precisamos simplesmente mover o valor previsto um dia à frente. Descobriu que isso era mais direto usando o Python. Como eu não quero assumir que você instalou bibliotecas especiais (como pandas), eu continuei a ser Python puro. Aqui está o pequeno script que traz esse procedimento. Certifique-se de executá-lo no mesmo diretório que o arquivo forecast. csv: Neste ponto, agora temos o arquivo de indicador corrigido armazenado em previsões. cw. Uma vez que isso leva uma quantidade substancial de tempo para calcular, eu forneci o arquivo completo aqui para você se transferir: Resultados da Estratégia Agora que geramos o nosso arquivo CSV indicador, precisamos comparar sua performance com a opção Comprar amp Hold. Em primeiro lugar, lemos o indicador do arquivo CSV e o armazenamos como spArimaGarch: Criamos então uma interseção das datas para as previsões ARIMAGARCH e o conjunto original de retornos do SampP500. Podemos então calcular os retornos para a estratégia ARIMAGARCH multiplicando o sinal de previsão (ou -) pelo próprio retorno: depois de ter os retornos da estratégia ARIMAGARCH, podemos criar curvas de equidade tanto para o modelo ARIMAGARCH quanto para o Buy Amp. Hold. Finalmente, nós os combinamos em uma única estrutura de dados: Finalmente, podemos usar o comando xyplot para traçar as duas curvas de ações no mesmo gráfico: a curva de equidade até 6 de outubro de 2017 é a seguinte: como você pode ver, ao longo de 65 anos Período, a estratégia ARIMAGARCH superou significativamente o valor do amplificador de compra. No entanto, você também pode ver que a maior parte do ganho ocorreu entre 1970 e 1980. Observe que a volatilidade da curva é bastante mínima até o início dos anos 80, altura em que a volatilidade aumenta significativamente e os retornos médios são menos impressionantes. Claramente, a curva de equidade promete excelente desempenho durante todo o período. No entanto, essa estratégia realmente teria sido negociável. Em primeiro lugar, consideramos o fato de que o modelo ARMA só foi publicado em 1951. Não foi amplamente utilizado até a década de 1970, quando a Caixa amp Jenkins discutiu isso em seu livro. Em segundo lugar, o modelo ARCH não foi descoberto (publicamente) até o início dos anos 80, pela Engle e GARCH em si, foi publicado por Bollerslev em 1986. Em terceiro lugar, esse backtest foi efetivamente realizado em um índice de mercado de ações e não como instrumento fisicamente negociável. Para obter acesso a um índice como este, teria sido necessário negociar futuros SampP500 ou uma réplica do Fundo Trocado Negociado (ETF), como o SPDR. Por isso, é realmente apropriado aplicar esses modelos a uma série histórica antes da invenção. Uma alternativa é começar a aplicar os modelos a dados mais recentes. Na verdade, podemos considerar o desempenho nos últimos dez anos, de 1 de janeiro de 2005 a hoje: como você pode ver, a curva de equidade permanece abaixo de uma estratégia de compra de expansão de acumuladores por quase 3 anos, mas durante a queda no mercado de ações de 20082009 Extremamente bem. Isso faz sentido porque provavelmente haverá uma correlação serial significativa nesse período e será bem capturado pelos modelos ARIMA e GARCH. Uma vez que o mercado se recuperou após 2009 e entre o que parece ser mais uma tendência estocástica, a performance do modelo começa a sofrer mais uma vez. Note-se que esta estratégia pode ser facilmente aplicada a diferentes índices do mercado de ações, ações ou outras classes de ativos. Eu o encorajo a tentar pesquisar outros instrumentos, pois você pode obter melhorias substanciais nos resultados aqui apresentados. Próximas etapas Agora que acabamos de discutir a família de modelos ARIMA e GARCH, quero continuar a discussão da análise de séries temporais considerando processos de memória longa, modelos de espaço estadual e séries temporais cointegradas. Estas áreas subsequentes de séries temporais nos apresentarão modelos que podem melhorar nossas previsões além das que aqui apresentamos, o que aumentará significativamente a nossa rentabilidade comercial e / ou reduzirá o risco. Aqui está a listagem completa para a geração de indicadores, backtesting e traçado: E o código Python para se candidatar a previsões. csv antes de reimportar: Implementando Estratégias de Negociação para Modelos de Previsão Citações Citações 6 Referências Referências 7 Desde então, tem sido usado em muitos estudos para prever o Movimentos diários dos preços das ações e mostrou-se superar as redes neurais (Tay e Cao, 2001 Kim, 2003 Huang et al., 2005 Chen e Shih, 2006). Uma variedade de outras abordagens de aprendizagem de máquinas, incluindo aprendizagem de reforço (O et al. 2006), bootstrapping evolutivo (Lebaron, 1998) e análise de componentes principais (Torres e Burgess, 1999) foram usadas para prever os mercados financeiros. Embora muitos desses estudos indiquem que eles superam seus benchmarks, descobrimos que a maioria das abordagens exibe grandes descolagens 2 nos lucros e um comportamento de comutação grande e excessivo, resultando em altos custos de transação. Quot Resumo Resumo Resumo RESUMO: os efeitos da sazonalidade e as regularidades empíricas nos dados financeiros foram bem documentados na literatura de economia financeira há mais de sete décadas. Este artigo propõe um sistema especializado que utiliza novas técnicas de aprendizado de máquinas para prever o retorno do preço sobre esses eventos sazonais e, em seguida, usa essas previsões para desenvolver uma estratégia de negociação lucrativa. Embora as abordagens simples para o comércio dessas regularidades possam se revelar rentáveis, essa negociação leva a grandes levantamentos potenciais (declínio de um pico de um investimento medido como uma porcentagem entre o pico e a calha) no lucro. Neste artigo, introduzimos um sistema de negociação automatizado baseado em conjuntos pontuados de desempenho de florestas aleatórias que melhoram a lucratividade e a estabilidade dos eventos sazonais de negociação. Uma análise de várias técnicas de regressão é realizada, bem como uma exploração dos méritos de várias técnicas de ponderação especializada. O desempenho dos modelos é analisado usando uma grande amostra de ações do DAX. Os resultados mostram que conjuntos recenados de florestas aleatórias ponderadas produzem resultados superiores em termos de rentabilidade e precisão de previsão em comparação com outras técnicas de conjunto. Também descobriu-se que o uso de efeitos sazonais produz resultados superiores aos que não os modelizam explicitamente. Artigo de texto completo Jun 2017 Ash Booth Enrico Gerding Frank McGroarty quotLeBaron 47 aplicou bootstrapping para capturar oportunidades de arbitragem no mercado de câmbio e, em seguida, usou uma rede neural onde sua arquitetura de rede foi determinada através de um processo evolutivo. Finalmente, Torres e Burgess 62 usaram componentes principais para capturar oportunidades de arbitragem. Resumo: Propomos um sistema de negociação automatizado multi-estoque que se baseia em uma estrutura em camadas que consiste em um algoritmo de aprendizado de máquina, um utilitário de aprendizado on-line e uma sobreposição de gerenciamento de riscos. A árvore de decisão alternativa (ADT), que é implementada com Logitboost, foi escolhida como o algoritmo subjacente. Um dos pontos fortes de nossa abordagem é que o algoritmo é capaz de selecionar a melhor combinação de regras derivadas de indicadores de análise técnica bem conhecidos e também pode selecionar os melhores parâmetros dos indicadores técnicos. Além disso, a camada de aprendizagem on-line combina a saída de vários ADTs e sugere uma posição curta ou longa. Finalmente, a camada de gerenciamento de risco pode validar o sinal de negociação quando excede um limiar específico diferente de zero e limitar a aplicação de nossa estratégia de negociação quando não é lucrativa. Testamos o algoritmo de ponderação especializado com dados de 100 empresas selecionadas aleatoriamente do índice SampP 500 durante o período 2003-2005. Achamos que esse algoritmo gera retornos anormais durante o período de teste. Nossos experimentos mostram que a abordagem impulsionadora é capaz de melhorar a capacidade preditiva quando os indicadores são combinados e agregados como um único preditor. Ainda mais, a combinação de indicadores de diferentes ações demonstrou ser adequada para reduzir o uso de recursos computacionais e ainda manter uma capacidade preditiva adequada. Artigo Apr 2018 Creamer alemão Yoav Freund
No comments:
Post a Comment