Monday 23 April 2018

Estratégia de reversão média matlab


Os números são legais.
Minha tentativa de aplicar abordagens estatísticas e probabilísticas para atacar o mercado.
Configuração do MySQL para o Yahoo Finance.
Eu finalmente tive algum tempo para configurar um banco de dados para armazenar os preços das ações históricas do Yahoo Finance. É muito melhor do que ter que baixar o arquivo CSV toda vez que você precisar dos dados para fazer alguns testes de estratégia.
Baixe o MySQL se você ainda não tiver (dev. mysql / downloads / mysql /). Execute o servidor MySql pelo comando abaixo. Seu caminho pode ser diferente dependendo do sistema operacional: sudo /usr/local/mysql/support-files/mysql. server start Efetue login no mysql como root (a senha está vazia inicialmente): mysql - u root - p Cria um banco de dados. Eu escolhi usar o nome & # 8220; QuantDB & # 8221 ;: criar banco de dados QuantDB; Criar usuário: criar usuário & # 8216; teste & # 8217; @ & # 8217; localhost & # 8217; identificado por & # 8216; senha & # 8217 ;; Conceda privilégio: conceda todos os privilégios em QuantDB. * Para & # 8216; test & # 8217; @ & # 8217; localhost & # 8217;
Agora que o banco de dados está em execução e está configurado, aqui está o meu código que executa o download de dados e a inserção da tabela (github / random-walk / Trade-Analysis-Python-). O Controller. py é um script interativo simples que permite ao usuário conectar-se a qualquer banco de dados MySql via host fornecido pelo usuário, dbname, nome de usuário e senha. Uma vez estabelecida a conexão, o usuário terá opções para atualizar o ticker de sua escolha ou todos os tickers fornecidos no tickers. txt.
FYI .. eu levei duas horas para baixar e atualizar todos os tickers de 1970-01-01. No entanto, as execuções futuras serão muito mais rápidas, pois o código saberá o preço mais recente no banco de dados e fará o download apenas dos dados ausentes desse dia em diante.
Teclas esperadas para completar um alfabeto aleatoriamente.
Aqui está uma pergunta que apareceu na entrevista de 30 minutos do meu amigo. Depois de ouvi-lo, resolvi essa questão de forma independente, mas não tenho certeza se poderia ter feito isso com a mesma restrição e pressão. Aqui está:
Você deseja digitar o alfabeto inteiro na seqüência correta usando um teclado especial que consiste apenas em caracteres alfabéticos (sem espaço, sem turno, sem entrar, etc.). Infelizmente, você não consegue lembrar o alfabeto & # 8230; Já faz muito tempo desde que você aprendeu. Tudo o que você lembra é que a sequência tem 26 caracteres. Então você começa a digitar aleatoriamente, esperando que, eventualmente, você consiga por pura sorte. Cada toque de tecla errado irá limpar automaticamente a tela para começar de novo. E para tornar as coisas mais difíceis, você tem uma memória de curto prazo extrema e não consegue se lembrar de nenhum teste anterior (cada novo teste é independente do anterior)
Quantos toques de tecla você espera concluir esta tarefa?
Aqui está a minha abordagem. Pode haver melhores.
Deixe que o valor esperado das teclas até um determinado caractere, X, seja: E [a, b, & # 8230 ;, X] Assim, queremos determinar E [a, b, & # 8230 ;, z].
Eu usarei uma abordagem recursiva. Vamos começar com o caso base.
Isso vem da definição de expectativa da função de probabilidade discreta. Você alcançará a letra & # 8216; a & # 8217; com 1 stroke em 1/26 probabilidade, e você precisará repetir 25/26 do tempo. Quando você tenta novamente, as teclas esperadas ainda são as mesmas E [a], mas com um traço adicional que conta para a falta atual.
Seguindo em frente, E [a, b] pode ser pensado como uma extensão para o acima.
Observe que, para alcançar o & # 8216; ab & # 8217 ;, é necessário ter & # 8216; a & # 8217; concluído. Assim, leva 1 + E [a] traços na probabilidade 1/26, e 1 + E [a] + E [a, b] traços na probabilidade 25/26.
Generalizando o padrão e você obtém:
Executando álgebra simples em cada etapa recursiva:
De fato, eu posso generalizar para qualquer seqüência de comprimento n para:
Eu verifiquei a equação acima usando a simulação do MATLAB. Isso realmente funciona!
Coloque a paridade de chamadas para determinar a direção do preço à vista.
A paridade put-call é uma relação bem conhecida no princípio de não arbitragem. Simplesmente, se tivermos uma chamada européia, colocar e encaminhar com o mesmo vencimento e greve, então, relacionando a curva de pay-off terminal, eu posso deduzir:
Como o preço das ações é martingale sob a medida de risco neutro, as opções de compra e venda que usam ações como uma base também são martingale. Assim, posso derivar a paridade put-call em termos de tempo presente:
Reorganize isso e eu recebo:
Assim, se eu pudesse encontrar os preços de call, put e forward do mesmo vencimento e strike, eu deveria ser capaz de calcular o preço esperado do spot. Usando essas informações, posso decidir se o preço spot real está sobrecomprado ou sobrevendido. O mercado real é muito mais complicado do que isso, mas ainda estou muito inclinado a conduzir algumas análises de preço se a relação acima puder ser usada para gerar sinais de negociação.
** Uma coisa a notar é que eu assumi que o preço segue uma medida neutra ao risco. Para conseguir isso, muitos modelos derivados usam o movimento browniano geométrico definido por:
onde r = taxa livre de risco, σ = volatilidade e W = processo de movimento browniano padrão.
Determinar os mercados de tendência versus reversão de média.
Atualmente, estou trabalhando em indicadores que fornecem se o mercado está tendendo ou se revertendo. Isso é importante no escalpelamento, porque enquanto minha suposição subjacente na negociação de alta frequência é a reversão à média, sempre haverá grandes momentos, algumas vezes por dia. Assim, um sistema automatizado deve ser capaz de dizer se o momento está presente ou não, e aplicar uma estratégia de negociação apropriada de acordo.
Eu vou manter postado & # 8230;
[MT4] Arbitragem Estatística & # 8211; Negociação de pares.
Houve uma época em que eu esperava explorar estratégias simples de arbitragem estatística, ou seja, negociação de pares, quando eu costumava ser apaixonado por ações. No entanto, eu nunca senti como implementar e executar os testes de co-integração em vários GB de dados históricos de centenas de combinações possíveis de estoques. Eu acho que foi pura preguiça da minha parte, querendo evitar uma grande análise estatística de dados. Mas agora que estou trabalhando com o FX, que tem muito menos pares do que ações, facilitando a análise de dados, minha motivação na arbitragem estatística ressurgiu.
Eu li este tópico alguns dias atrás, e a estratégia de negociação de pares discutida lá pegou minha curiosidade. A estratégia é muito visual e simples, fácil de replicar. Aqui está um breve resumo da estratégia.
Selecione dois pares altamente correlacionados. O encadeamento menciona EURUSD e GBPUSD. Sobreponha os dois preços, dimensionando o secundário nos intervalos de preços do par principal. Isso é muito fácil. x_on_y = y_min + (y_max-y_min) (x & x8211; x_min) / (x_max-x_min)
A suposição dessa estratégia é que o spread de dois pares correlacionados (Long EURUSD, Short GBPUSD, por exemplo) é reversão à média. Assim, mesmo quando um par supera o outro, posso apostar com alta confiança que o intervalo entre os pares com e sem desempenho não durará muito para preservar a correlação histórica.
Eu ainda estou trabalhando em abordagens matemáticas para definir os pontos de entrada, daí a minha imprecisão anterior na etapa 2. O que é uma lacuna óbvia? Talvez 2 desvios padrão maiores que o tamanho normal do intervalo? Depois de descobrir isso, codificarei o sistema automatizado para testar o desempenho.

Um objetivo de média-variância para otimização robusta de produção em cenários geológicos incertos.
Destaques.
Um objetivo de média-variância para gerenciamento de risco e mitigação de incerteza.
Use o índice de Sharpe para selecionar o parâmetro de compensação de média-variância.
Controle ótimo de malha aberta sem feedback.
Comparação da otimização de média-variância para outras estratégias de otimização.
Neste artigo, introduzimos um critério de média-variância para a otimização da produção de reservatórios de petróleo e sugerimos o índice de Sharpe como um procedimento sistemático para otimizar o risco de compensação e o retorno. Demonstramos por simulação de ciclo aberto de um campo de óleo sintético de duas fases que o critério de média-variância é capaz de mitigar as incertezas geológicas inerentes melhor do que as estratégias de equivalência de certeza alternativa e otimização robusta que foram sugeridas para otimização de produção. Na otimização da produção, os perfis de injeção de água ideais e as pressões dos furos de produção são calculados pela solução de um problema de controle ótimo que maximiza uma medida financeira, como o Valor Presente Líquido (VPL). O VPL é uma variável estocástica, pois os parâmetros do reservatório, como o campo de permeabilidade, são estocásticos. Na certeza da otimização da equivalência, o valor médio do campo de permeabilidade é utilizado na maximização do VPL do reservatório ao longo de sua vida útil. Essa abordagem negligencia a incerteza significativa no VPL. A otimização robusta maximiza o VPL esperado em um conjunto de campos de permeabilidade para superar essa lacuna de otimização de equivalência de certeza. A otimização robusta reduz o risco em comparação com a otimização da equivalência com certeza porque considera um conjunto de campos de permeabilidade, em vez de apenas o campo de permeabilidade média. Este é um mecanismo indireto de mitigação de risco, pois o risco não entra diretamente na função objetivo. Na função objetivo bi-critério de média-variância, o risco aparece diretamente, ele também considera um conjunto de modelos de reservatórios e tem otimização robusta como um caso extremo especial. O objetivo de média-variância é comum para problemas de otimização de portfólio em finanças. O problema de otimização de portfólio de Markowitz é o exemplo original e mais simples de um critério de média-variância para mitigar o risco. O risco é mitigado na produção de petróleo incluindo tanto o VPL esperado (média do VPL) quanto o risco (variação do VPL) para o conjunto de possíveis modelos de reservatório. Com a inclusão do risco na função objetivo, o índice de Sharpe pode ser usado para calcular as trajetórias ótimas de pressão de injeção de água e de furo de produção que fornecem a relação ótima de retorno-risco. Por simulação, investigamos e comparamos o desempenho de otimização de produção por otimização de média-variância, otimização robusta, otimização de equivalência de certeza e estratégia reativa. As estratégias de otimização são simuladas em malha aberta sem feedback enquanto a estratégia reativa é baseada em feedback. As simulações demonstram que a otimização de equivalência de certeza e otimização robusta são estratégias de risco. Com o mesmo esforço computacional da otimização robusta, a otimização da média-variância é capaz de reduzir significativamente o risco ao custo de um retorno ligeiramente menor. Dessa forma, a otimização de média-variância é uma ferramenta poderosa para o gerenciamento de riscos e a mitigação de incertezas na otimização da produção.
Escolha uma opção para localizar / acessar este artigo:
Verifique se você tem acesso através de suas credenciais de login ou de sua instituição.

Estratégia de reversão à média matlab
Compra de compra em PDF.
Teste de Polímero.
Um novo modelo cinético de vulcanização com enxofre de borracha natural é proposto. A abordagem de modelagem leva em conta o conhecimento atual sobre as diferentes estruturas polissulfídicas presentes durante a vulcanização e as reações individuais associadas. Um esquema simplificado é proposto, dando uma visão mecanicista do fenômeno de reversão, que resulta em um decréscimo do módulo de elasticidade (relacionado à densidade de reticulação de enxofre) para longos tempos de vulcanização em alta temperatura. O conjunto resultante de equações diferenciais é resolvido por um método numérico apropriado para prever a evolução do grau de vulcanização para condições de cura isotérmica.
A cinética de vulcanização de um composto de borracha natural modelo foi caracterizada experimentalmente por medidas reológicas, a fim de testar o modelo cinético proposto. Uma notável concordância entre previsões de modelos e dados experimentais é observada. Os parâmetros cinéticos identificados correspondentes às reações individuais levadas em conta pelo modelo mecanicista são consistentes com os de um modelo pseudo-mecanicista existente, menos refinado. O modelo proposto permite, assim, fazer a ponte entre a previsão de variações macroscópicas do módulo de elasticidade e a evolução da estrutura da escala molecular durante a vulcanização quando o fenômeno de reversão está presente.
Escolha uma opção para localizar / acessar este artigo:
Verifique se você tem acesso através de suas credenciais de login ou de sua instituição.

Sistemas de negociação de aprendizado de máquina.
O SPDR S & P 500 ETF (SPY) é um dos produtos de ETF amplamente negociados no mercado, com cerca de US $ 200 bilhões em ativos e volume de negócios médio de pouco menos de 200 milhões de ações diariamente. Assim, a probabilidade de ser capaz de desenvolver um sistema de negociação lucrativo usando informações publicamente disponíveis pode parecer pequena. Então, para nos dar uma chance de lutar, vamos nos concentrar em uma tentativa de prever o movimento durante a noite no SPY, usando dados da sessão do dia anterior.
Além dos preços de abertura / alta / baixa e fechamento da sessão do dia anterior, selecionamos várias outras variáveis ​​plausíveis para construir o vetor de recursos que usaremos em nosso modelo de aprendizado de máquina:
O volume diário O preço de fechamento do dia anterior As médias móveis de 200 dias, 50 dias e 10 dias do preço de fechamento Os preços altos e baixos de 252 dias da série SPY.
Vamos tentar construir um modelo que prevê o retorno overnight no ETF, ou seja, [O (t + 1) - C (t)] / C (t)
Neste exercício, usamos dados diários desde o início da série SPY até o final de 2014 para construir o modelo, que será testado em dados fora da amostra em execução de janeiro de 2015 a agosto de 2016. Em um contexto de alta frequência uma quantidade considerável de tempo seria gasto na avaliação, limpeza e normalização dos dados. Aqui enfrentamos muito menos problemas desse tipo. Normalmente, padronizamos os dados de entrada para equalizar a influência de variáveis ​​que podem ser medidas em escalas de ordens de grandeza muito diferentes. Mas, neste exemplo, todas as variáveis ​​de entrada, com exceção do volume, são medidas na mesma escala e, portanto, a padronização é desnecessária.
Primeiro, os dados na amostra são carregados e usados ​​para criar um conjunto de regras de treinamento que mapeiam o vetor de recursos para a variável de interesse, o retorno noturno:
No Mathematica 10, a Wolfram introduziu um conjunto de algoritmos de aprendizado de máquina que inclui regressão, vizinho mais próximo, redes neurais e florestas aleatórias, juntamente com funcionalidade para avaliar e selecionar a melhor técnica de aprendizado de máquina. Esses recursos fazem com que seja muito fácil criar um classificador ou um modelo de previsão usando algoritmos de aprendizado de máquina, como este exemplo de reconhecimento de manuscrito:
Criamos um modelo preditivo no conjunto de treinamento SPY, permitindo que o Mathematica escolha o melhor algoritmo de aprendizado de máquina:
Há várias opções para a função Prever que podem ser usadas para controlar a seleção de recursos, o tipo de algoritmo, o tipo de desempenho e a meta, em vez de simplesmente aceitar os padrões, como fizemos aqui:
Tendo construído nosso modelo de aprendizado de máquina, carregamos os dados fora de amostra de janeiro de 2015 a agosto de 2016 e criamos um conjunto de testes:
Em seguida, criamos um objeto PredictionMeasurement, usando o modelo Nearest Neighbor, que pode ser usado para análise posterior:
Não há muita dispersão nas previsões do modelo, todas com valor positivo. Uma técnica comum nesses casos é subtrair a média de cada uma das previsões (e também podemos padronizá-las dividindo pelo desvio padrão).
O gráfico de dispersão dos retornos noturnos reais versus previstos no SPY agora se parece com isso:
Ainda há uma falta óbvia de dispersão nos valores previstos, em comparação com os retornos reais durante a noite, que poderíamos corrigir por meio de padronização. De qualquer forma, parece haver uma relação pequena e não linear entre os valores previstos e reais, o que traz alguma esperança de que o modelo possa ser útil.
Da previsão para negociação.
Existem vários métodos de implantar um modelo de previsão no contexto da criação de um sistema de negociação. A rota mais simples, que tomaremos aqui, é aplicar um limite e converter as previsões filtradas diretamente em um sinal de negociação. Mas outras abordagens são possíveis, por exemplo:
Combinando as previsões de vários modelos para criar um conjunto de previsões Usando as previsões como entradas para um modelo de programação genética Alimentando as previsões na camada de entrada de um modelo de rede neural projetado especificamente para gerar sinais de negociação, em vez de previsões.
Neste exemplo, criaremos um modelo de negociação aplicando um filtro simples às previsões, escolhendo apenas os valores que excedem um limite especificado. Este é um truque padrão usado para isolar o sinal no modelo do ruído de fundo. Aceitaremos apenas os sinais positivos que excederem o nível do limiar, criando um sistema comercial de longa duração. Ou seja, ignoramos as previsões abaixo do nível do limite. Compramos o SPY no fechamento quando a previsão excede o limite e saímos de qualquer posição longa no dia seguinte. Essa estratégia produz os seguintes resultados pro forma:
Conclusão.
O sistema tem algumas características bastante atraentes, incluindo uma taxa de ganho de mais de 66% e um CAGR de mais de 10% para o período fora da amostra.
Obviamente, esta é uma ilustração muito básica: gostaríamos de incluir comissões de negociação, e a derrapagem incorreu na entrada e saída de posições nos períodos pós e pré-mercado, o que impactará negativamente o desempenho, é claro. Por outro lado, mal começamos a riscar a superfície em termos das variáveis ​​que poderiam ser consideradas para inclusão no vetor de feição, e que podem aumentar o poder explicativo do modelo.
Em outras palavras, na realidade, isso é apenas o começo de um longo e árduo processo de pesquisa. No entanto, este exemplo simples deve ser suficiente para dar ao leitor um gostinho do que está envolvido na construção de um modelo preditivo de negociação usando algoritmos de aprendizado de máquina.
Artigos relacionados.
Futuros WealthBuilder.
A história de uma estratégia de HFT.
Cópulas de Correlação.
1 comentário. Deixa novo.
Sistemas de negociação de machine learning [Jonathan Kinlay] O SPDR S & amp; P 500 ETF (SPY) é um dos produtos ETF amplamente negociados no mercado, com cerca de US $ 200 bilhões em ativos e volume de negócios médio de pouco menos de 200 milhões de ações diariamente. Assim, a probabilidade de ser capaz de desenvolver um sistema de negociação lucrativo usando informações publicamente disponíveis pode parecer pequena. Então, para nos dar uma chance de lutar, vamos nos concentrar em uma tentativa de prever o [& # 8230;]

Desenvolvendo uma estratégia de transporte de volatilidade.
A título de introdução, começamos revisando uma característica bem conhecida do iPath S & P 500 VIX ST Futures ETN (NYSEArca: VXX). Em comum com outros ETF / ETNs de volatilidade longa, o VXX tem uma tendência a diminuir em valor devido à forma inclinada para cima da curva de volatilidade para a frente. O gráfico abaixo ilustra a queda no valor da VXX, juntamente com o contrato VIX de futuros do mês anterior, durante o período de 2009.
Este fenómeno dá origem a oportunidades para estratégias “carry”, em que um produto de volatilidade longa como o VXX é vendido na expectativa de que irá diminuir de valor ao longo do tempo. Tais estratégias funcionam bem durante os períodos em que os futuros de volatilidade estão em contango, ou seja, quando os contratos futuros com prazos mais longos têm preços mais altos do que os contratos futuros com prazos mais curtos e o Índice Spot VIX, que é tipicamente o caso em torno de 70% do tempo. Uma estratégia análoga no mundo da renda fixa é conhecida como "reduzir a curva de juros". Quando as curvas de rendimento são inclinadas para cima, um investidor de renda fixa pode comprar um título ou título de maior rendimento na expectativa de que o rendimento declinará e o aumento de preço, à medida que a garantia se aproxima da maturidade. O quantitative easing é pago a essa técnica amplamente utilizada, mas as estratégias análogas nos mercados de moeda e volatilidade continuam a ter bom desempenho.
O desafio para qualquer estratégia de carry é o que acontece quando a curva se inverte, à medida que os futuros se movem para o backwardation, muitas vezes dando origem a perdas precipitadas. Uma variedade de esquemas de hedge foram concebidos para minimizar o risco. Por exemplo, uma bem conhecida estratégia de carry nos futuros VIX envolve a venda do contrato do mês anterior e a cobertura com uma posição vendida em um número apropriado de contratos futuros do E-Mini S & P 500. Nesse caso, a cobertura é imperfeita, deixando ao investidor a tarefa de administrar um risco significativo.
O gráfico do valor composto do contrato de futuros VXX e VIX sugere outra abordagem. Enquanto ambos os títulos diminuem de valor ao longo do tempo, a queda no valor do VXX ETN é substancialmente maior do que a do contrato futuro do mês da frente. A idéia básica, portanto, é uma negociação de valor relativo, na qual compramos futuros VIX, o melhor desempenho do par, enquanto vendemos o VXX de baixo desempenho. Como o valor da VXX é determinado pelo valor dos contratos futuros VIX de dois meses, a cobertura, embora imperfeita, provavelmente envolverá menos risco de base do que no caso da estratégia de futuros VIX-ES.
Outra forma de pensar sobre o negócio é a seguinte: ao combinar uma posição vendida em VXX com uma posição longa nos contratos futuros do mês anterior, estamos criando uma exposição residual no valor do contrato VIX do segundo mês em relação ao primeiro. . Portanto, esta é uma estratégia em que estamos olhando para capturar volatilidade transportar, não na frente da curva, mas entre os vencimentos de futuros primeiro e segundo mês. Estamos, na verdade, descendo a curva da volatilidade.
A relação entre os futuros VXX e VIX.
Vamos dar uma olhada na relação entre o VXX e o contrato de futuros do mês da frente, ao qual me referirei daqui em diante simplesmente como VX. Uma análise de regressão linear simples do VXX em relação ao VX é resumida nas tabelas abaixo e confirma duas características de seu relacionamento.
Em primeiro lugar, há uma forte relação estatisticamente significativa entre os dois (com um quadrado-R de 75%) - de fato, dado que o valor do VXX é em parte determinado pelo VX, como não poderia haver?
Em segundo lugar, o intercepto da regressão é negativo e estatisticamente significativo. Podemos, portanto, concluir que o baixo desempenho do VXX em relação ao VX não é apenas uma questão de ótica, mas é um fenômeno estatisticamente confiável. Portanto, a idéia básica de vender o VXX contra o VX é boa, pelo menos no sentido estatístico.
Construindo o Portfólio Inicial.
Ao construir nosso portfólio teórico, vou passar por cima de algumas questões técnicas importantes sobre como construir o hedge ótimo e simplesmente afirmar que o melhor que podemos fazer é aplicar um beta de cerca de 1,2 para produzir o seguinte resultado:
Embora amplamente positivo, com uma relação de informação de 1,32, o desempenho da estratégia é um pouco desanimador, em vários níveis. Em primeiro lugar, a volatilidade anual, acima de 48%, é desconfortavelmente alta. Em segundo lugar, a estratégia experimenta quedas muito substanciais em momentos em que a curva de volatilidade se inverte, como em agosto de 2015 e janeiro de 2016. Finalmente, a estratégia está altamente correlacionada com o índice S & P500, que pode ser uma consideração importante para investidores que procuram maneiras de diversificar seu risco de carteira de ações.
Explorando efeitos de calendário.
Vamos abordar estas questões em pouco tempo. Em primeiro lugar, porém, quero chamar a atenção para um efeito calendário interessante na estratégia (usando uma análise simples de tabela dinâmica).
Como você pode ver na tabela acima, os retornos da estratégia nos últimos dias do mês tendem a ser significativamente abaixo de zero.
A causa do fenômeno tem a ver com a maneira como a VXX é construída, mas o ponto importante aqui é que, em princípio, podemos utilizar esse efeito a nosso favor, revertendo as posições da carteira por volta do final do mês. Essa técnica simples produz uma melhoria significativa nos retornos da estratégia, ao mesmo tempo em que reduz a correlação:
Redução do Risco e Correlação da Carteira.
Podemos agora abordar a questão do alto nível residual de volatilidade da estratégia, enquanto reduz simultaneamente a correlação da estratégia para um nível muito mais baixo. Podemos fazer isso de maneira direta, adicionando um terceiro ativo, o SPDR S & P 500 ETF Trust (NYSEArca: SPY), no qual teremos uma posição vendida para explorar a correlação negativa da carteira original.
Em seguida, ajustamos os pesos da carteira para maximizar os retornos ajustados ao risco, sujeitos a limites na volatilidade e correlação máximas da carteira. Por exemplo, definindo um limite de 10% para a volatilidade e correlação, alcançamos o seguinte resultado (com pesos -0,37 0,27 -0,65 para VXX, VX e SPY, respectivamente):
Comparado com o portfólio original, o desempenho do novo portfólio é muito mais benigno durante o período crítico do segundo trimestre de 2015 até o primeiro trimestre de 2016 e embora permaneçam vários períodos significativos de rebaixamento, principalmente em 2011, a estratégia está agora se aproximando de uma proposta de investimento. uma relação de informação de 1,6 e volatilidade anual de 9,96% e correlação de 0,1.
Outras configurações são possíveis, é claro, e o desempenho ajustado ao risco pode ser melhorado, dependendo das preferências de risco do investidor.
Há um elemento de ajuste de curva no processo de pesquisa, conforme descrito até agora, na medida em que estamos usando todos os dados disponíveis até julho de 2016 para construir um portfólio com as características desejadas. Na prática, é claro, seremos obrigados a reequilibrar a carteira periodicamente, re-estimando os pesos ótimos da carteira à medida que novos dados chegam. A título ilustrativo, a carteira foi re-estimada usando dados na amostra para a carteira. final de fevereiro de 2016, produzindo resultados fora da amostra durante o período de março a julho de 2016, como segue:
Um exame detalhado do problema genérico de quão frequentemente reequilibrar o portfólio está além do escopo deste artigo e deixo para os analistas interessados ​​realizar a pesquisa por si mesmos.
Considerações práticas.
Para implementar a estratégia teórica descrita acima, há várias etapas práticas importantes que precisam ser consideradas.
Não é imediatamente aparente como os pesos devem ser aplicados a uma carteira compreendendo ETNs e futuros. Na prática, a melhor abordagem é re-estimar o portfólio usando uma relação de regressão expressa em termos de $ - valor, em vez de em porcentagens, para estabelecer a quantidade de ações VXX e SPY a serem vendidas por contrato futuro de VX. A reversão das posições do portfólio nos últimos dias do mês aumentará significativamente os custos de transação, especialmente para a posição em futuros de VX, para a qual o tamanho mínimo de tick é de $ 50. É importante calcular as estimativas realistas dos custos de transação na avaliação do desempenho geral da estratégia e especificamente com relação às reversões no final do mês. A estratégia assumiu a disponibilidade de VXX e SPY para curto, o que ocasionalmente pode ser um problema. Não é um problema tão grande se você está mantendo uma posição curta de longo prazo, mas virar a posição em torno de algumas ais no final do mês pode ser problemático, de tempos em tempos. Além disso, devemos levar em conta os custos de financiamento de empréstimos de ações, que chegam a cerca de 2,9% e 0,42% ao ano para VXX e SPY, respectivamente. Essas taxas podem variar com as condições de mercado e disponibilidade de estoque, é claro. É altamente provável que outros ETFs / ETNs possam ser adicionados de forma lucrativa ao mix a fim de reduzir ainda mais a volatilidade da estratégia e melhorar os retornos ajustados ao risco. Os candidatos prováveis ​​poderiam incluir, por exemplo, o ETF Direxion Daily 20+ Yr Trsy Bull 3X (NYSEArca: TMF). Já mencionamos a importante questão do rebalanceamento de portfólio. Há um argumento para reequilibrar com mais frequência para aproveitar os dados mais recentes do mercado; por outro lado, mudanças muito frequentes na composição da carteira podem minar a robustez da carteira, aumentar a volatilidade e incorrer em custos de transação mais altos. A questão de com que freqüência reequilibrar o portfólio é importante e requer mais testes para determinar a frequência ótima de rebalanceamento.
Conclusão.
Descrevemos o processo de construção de uma estratégia de carry de volatilidade com base no valor relativo do VXX ETN versus o contrato de vencimento em futuros VIX. Ao combinar uma carteira composta por posições curtas em VXX e SPY com uma posição longa em futuros VIX, o investidor pode, em princípio, obter retornos ajustados ao risco correspondentes a uma relação de informação de cerca de 1,6 ou mais. Acredita-se que outras melhorias no desempenho do portfólio possam ser alcançadas pela adição de outros ETFs ao mix do portfólio.
Artigos relacionados.
Cópulas de Correlação.
HFT VIX Scalper leva em Collective2.
Modelando Volatilidade e Correlação.
1 comentário. Deixa novo.
Desenvolvendo uma estratégia de transporte de volatilidade [Jonathan Kinlay] Para começar, começamos revisando uma característica bem conhecida do iPath S & P 500 VIX ST Futures ETN (NYSEArca: VXX). Em comum com outros ETF / ETNs de volatilidade longa, o VXX tem uma tendência a diminuir em valor devido à forma inclinada para cima da curva de volatilidade para a frente. O gráfico abaixo, que ilustra a queda no valor do VXX, juntamente com o contrato VIX de futuros do mês anterior, [& # 8230;]

Meia vida de reversão média & # 8211; Fórmula de Ornstein-Uhlenbeck para o processo de reversão da média.
Ernie chan propõe um método para calcular a velocidade de reversão à média. Ele propõe ajustar a fórmula do ADF (aumento do dickey mais completo, mais rigorosa) do tempo discreto para a forma diferencial. Isto toma forma da Fórmula Ornstein-Uhlenbeck para o processo de reversão da média. Processo Ornstein Uhlenbeck & # 8211; Wikipédia.
Onde dε é algum ruído gaussiano. Chan passa a mencionar que usando a fórmula do ADF discreta abaixo:
e realizar uma regressão linear de Δy (t) contra y (t - 1) fornece λ que é então usado na primeira equação. No entanto, a vantagem de escrever a fórmula na forma diferencial é permitir uma solução analítica para o valor esperado de y (t).
Séries de reversão médias exibem λ negativo. Por outro lado, λ positivo significa que a série não volta à média.
Quando λ é negativo, o valor do preço decai exponencialmente para o valor −μ / λ com a meia-vida do decaimento igual a −log (2) / λ. Veja referências.
Podemos realizar a regressão de yt-1 e (yt-1-yt) com o código R abaixo na série de preços SPY. Para este teste, usaremos um período retrospectivo de 100 dias versus toda a série de preços (início de 1993 até o presente). Se usássemos todos os dados, estaríamos incluindo o tempo necessário para se recuperar dos mercados em baixa. Para fins de negociação, desejamos usar uma amostra menor de dados para produzir um teste estatístico mais significativo.
1. Lag SPY próximo por -1 dia.
2. Subtrair hoje perto & # 8211; Ontem feche.
3. Subtrair (hoje feche & # 8211; ontem feche) & # 8211; significa (hoje feche & # 8211; ontem perto)
4. Realize a regressão linear de (hoje perto de # 8211; ontem)
(hoje fecham & # 8211; ontem fecham) & # 8211; significa (hoje feche & # 8211; ontem perto)
5. Na saída de regressão execute - log (2) / λ.
Observando a saída da regressão acima, vemos que a inclinação é negativa e é um processo de reverberação da média. Vemos do resumo (resultados) λ é -0,06165 e quando executamos - log (2) / λ obtemos uma meia-vida de reversão média de 11,24267 dias.
11,24267 dias é a meia-vida da reversão à média, o que significa que antecipamos a série para voltar totalmente à média por 2 * a meia-vida ou 22,48534 dias. No entanto, para negociar a reversão da média de forma lucrativa, não precisamos sair diretamente na média de cada vez. Essencialmente, se um negócio se estender por 22 dias, podemos esperar uma mudança de regime de curto prazo ou permanente. Pode-se isolar contra tais derrotas, definindo uma "parada de tempo".
A meia-vida de 11,24267 dias obtida é curta o suficiente para um horizonte de negociação inter-diário. Se obtivermos uma meia-vida mais longa, poderemos esperar muito tempo para que a série retorne à média. Uma vez que determinamos que a série é a reversão da média, podemos negociar lucrativamente esta série com um modelo linear simples, usando um período retrospectivo igual à meia-vida. Em um post anterior, exploramos um modelo linear simples do zscore: flare9xblog. wordpress / 2017/09/24 / simple-linear-strategy-for-sp500 /
O período de lookback de 11 dias foi obtido usando uma abordagem de força bruta & # 8216; & # 8217; (talvez sorte). Um período ideal de 11 dias produziu o melhor resultado para o SPY.
Post for brute forçado, notou-se durante a otimização da estratégia acima que ajustando a meia-vida de 11 dias para qualquer número acima ou abaixo, nós experimentamos uma diminuição no desempenho.
Ilustramos o efeito de mover o período de retrospectiva mais curto e mais longo que a meia-vida obtida. Por simplicidade, usaremos o total de retornos cumulativos para comparação:
Vemos que uma retrospectiva de 11 dias produziu os maiores retornos cumulativos acumulados.
Ernie Chan continua mencionando que "porque se preocupar com testes estatísticos". A resposta está no fato de que regras comerciais específicas só acionam quando suas condições são atendidas e, portanto, tendem a pular os dados. O teste estatístico inclui dados que um modelo pode pular e, assim, produzir resultados com maior significância estatística.
Além disso, uma vez que confirmamos que uma série é a reversão, podemos ter a certeza de encontrar uma estratégia comercial lucrativa e não a estratégia que acabamos de testar.
Negociação Algorítmica: Estratégias Vencedoras e Sua Justificativa - 28 de maio de 2013, por Ernie Chan.
Compartilhar isso:
Relacionado
Autor: Andrew Bannerman.
Inspetor de integridade. A análise quantitativa é um tempo passado favorito. Ver todas as mensagens de Andrew Bannerman.
6 pensamentos sobre & ldquo; Meia vida de reversão média & # 8211; Fórmula de Ornstein-Uhlenbeck para o processo de reversão da média
Eu acho que seus passos não são consistentes com o código. Me corrija se eu não sou.
# A seguinte linha de código está fazendo:
# ontem e # 8217; close & # 8211; média de (YESTERDAYS & # 8217; CLOSE)
# MAS NÃO, Subtrair a média das diferenças defasadas?
prev. y.mean & lt; - y. lag & # 8211; mean (y. lag) # Subtraia ontens perto da média das diferenças defasadas.
Sua correta, minha descrição não corresponde a esta versão de calcular a meia-vida de reversão à média. Esta versão regride y (t) - y (t - 1)
vs y (t - 1) & # 8211; mean (y - t - 1). Vou atualizar para adicionar o método de Ernie Chans quando tiver uma chance de seu livro, negociação algorítmica, estratégias vencedoras e suas razões. Em suma, Ernies se parece com isso:
Simplesmente registe y (t) - y (t - 1) vs y (t - 1) ou em inglês hoje perto & # 8211; ontem fechar vs ontimos fechar.
ylag = lag (y, 1) == y (t - 1)
deltaY = y-ylag == y (t) - y (t - 1)
regressão = y (t) - y (t - 1) (y, variável dependente) ey (t - 1) (x, variável independente)
Vou começar a atualizar este post quando tiver uma chance. Obrigado pela leitura!
Pode ser óbvio, mas gostaria de confirmar:
& # 8220; Esta versão regride y (t) - y (t - 1) vs y (t - 1) - média (y (t - 1) & # 8221;
y é y (t - 1) - média (y (t - 1)
Isso está correto? Felicidades.
Ótima leitura. Muito útil!
Feliz Ano Novo! A função R lm () é y, x. y sendo variável dependente e x independente. lm. fit () é x, y!
x é y (t - 1) - média (y (t - 1)
Eu tive que checar! Ernie Matlab, a função ols é y, x. Eu pensei que era como Pythons, x, y. O acima está correto e meu código R também está correto para este método.

No comments:

Post a Comment