Cointegração na Negociação de Pares Forex.
A cointegração na negociação de pares forex é uma ferramenta valiosa. Para mim, a cointegração é a base para uma excelente estratégia de negociação mecânica neutra de mercado que me permite lucrar em qualquer ambiente econômico. Se um mercado está em tendência de alta, tendência de baixa ou simplesmente movendo-se para os lados, a negociação de pares de moedas permite-me colher ganhos durante todo o ano.
Uma estratégia de negociação de pares forex que utiliza cointegração é classificada como uma forma de negociação de convergência baseada em arbitragem estatística e reversão em média. Esse tipo de estratégia foi popularizado pela primeira vez por uma equipe de negociação quantitativa no Morgan Stanley nos anos 80, usando pares de ações, embora eu e outros traders descobrimos que também funciona muito bem para a negociação de pares forex também.
Pares de Forex negociados com base na cointegração.
A negociação de pares Forex baseada na cointegração é essencialmente uma estratégia de reversão à média. Simplesmente, quando dois ou mais pares de moedas são cointegrados, isso significa que o preço spread entre os diferentes pares de moedas tende a reverter ao seu valor médio de forma consistente ao longo do tempo.
É importante entender que a cointegração não é correlação. Correlação é uma relação de curto prazo em relação a co-movimentos de preços. Correlação significa que os preços individuais se movem juntos. Embora a correlação seja invocada por alguns traders, por si só é uma ferramenta indigna de confiança.
Por outro lado, a cointegração é uma relação de longo prazo com co-movimentos de preços, na qual os preços se movem juntos ainda dentro de certas faixas ou spreads, como se estivessem unidos. Eu acho que a cointegração é uma ferramenta muito útil na negociação de pares forex.
Durante minha negociação de pares forex, quando o spread aumenta para um valor de limite calculado pelos meus algoritmos de negociação mecânicos, “curto” o spread entre os preços dos pares. Em outras palavras, estou apostando que o spread voltará a zero devido à sua cointegração.
Estratégias básicas de negociação de pares de forex são muito simples, especialmente quando se utiliza sistemas de negociação mecânicos: Eu escolho dois pares de moedas diferentes que tendem a se mover de forma semelhante. Eu compro o par de moedas com baixo desempenho e vendo o par de desempenho superior. Quando o spread entre os dois pares converge, fecho minha posição para obter lucro.
A negociação de pares de Forex baseada na cointegração é uma estratégia bastante neutra de mercado. Por exemplo, se um par de moedas cair, então o negócio provavelmente resultará em uma perda no lado longo e um ganho de compensação no lado mais curto. Assim, a menos que todas as moedas e instrumentos subjacentes subitamente percam valor, o comércio líquido deve ser próximo de zero no pior cenário possível.
Da mesma forma, a negociação de pares em muitos mercados é uma estratégia de negociação de autofinanciamento, uma vez que as receitas de vendas a descoberto podem às vezes ser usadas para abrir a posição comprada. Mesmo sem esse benefício, a negociação de pares forex alimentada pela cointegração ainda funciona muito bem.
Compreender a cointegração para negociação de pares forex.
A cointegração é útil para mim na negociação de pares forex porque me permite programar meu sistema de negociação mecânico com base tanto em desvios de curto prazo dos preços de equilíbrio quanto nas expectativas de preço de longo prazo, pelo que quero dizer correções e retorno ao equilíbrio.
Para entender como funciona a negociação de pares forex orientada pela cointegração, é importante primeiro definir a cointegração e descrever como ela funciona nos sistemas de negociação mecânicos.
Como eu disse acima, a cointegração refere-se à relação de equilíbrio entre conjuntos de séries temporais, como preços de pares de moedas separados que por si só não estão em equilíbrio. Declarada no jargão matemático, a cointegração é uma técnica para medir a relação entre variáveis não estacionárias em uma série temporal.
Se duas ou mais séries temporais tiverem, cada uma, um valor de raiz igual a 1, mas sua combinação linear é estacionária, então elas são cointegradas.
Como um exemplo simples, considere os preços de um índice de bolsa e seu contrato futuro relacionado: Embora os preços de cada um desses instrumentos possam vagar aleatoriamente durante breves períodos de tempo, eles retornarão ao equilíbrio e seus desvios serão estacionário.
Aqui está outra ilustração, declarada em termos do exemplo clássico de "passeio aleatório": digamos que há dois bêbados individuais caminhando para casa depois de uma noite de festejos. Vamos supor ainda que esses dois bêbados não se conhecem, então não há relação previsível entre seus caminhos individuais. Portanto, não há cointegração entre seus movimentos.
Em contraste, considere a idéia de que um indivíduo bêbado está vagando para casa, acompanhado de seu cão na coleira. Neste caso, há uma conexão definitiva entre os caminhos dessas duas pobres criaturas.
Embora cada um dos dois ainda esteja em um caminho individual durante um curto período de tempo, e mesmo que um dos pares possa conduzir ou atrasar aleatoriamente o outro em qualquer ponto no tempo, eles sempre serão encontrados próximos uns dos outros. A distância entre eles é bastante previsível, portanto, o par é dito ser cointegrado.
Retornando agora a termos técnicos, se houver duas séries temporais não estacionárias, como um conjunto hipotético de pares de moedas AB e XY, que se tornam estacionárias quando a diferença entre elas é calculada, esses pares são chamados de uma série integrada de primeira ordem - também chame uma série I (1).
Mesmo que nenhuma dessas séries permaneça em um valor constante, se houver uma combinação linear de AB e XY que é estacionária (descrita como I (0)), então AB e XY são cointegrados.
O exemplo simples acima consiste em apenas duas séries temporais de pares de forex hipotéticos. No entanto, o conceito de cointegração também se aplica a várias séries temporais, usando ordens de integração superiores ... Pense em termos de um bêbado errante acompanhado por vários cães, cada um com uma coleira de comprimento diferente.
Na economia do mundo real, é fácil encontrar exemplos mostrando a cointegração de pares: renda e gastos, ou rigor das leis criminais e tamanho da população carcerária. Na negociação de pares forex, meu foco é capitalizar a relação quantitativa e previsível entre pares de moedas cointegradas.
Por exemplo, suponhamos que estamos assistindo a esses dois pares de moedas hipotéticos cointegrados, AB e XY, e o relacionamento cointegrado entre eles é AB & # 8211; XY = Z, onde Z é igual a uma série estacionária com uma média de zero, ou seja, I (0).
Isso parece sugerir uma estratégia de negociação simples: quando AB - XY & gt; V, e V é meu preço de gatilho de limiar, então o sistema de negociação de pares de forex venderia AB e compraria XY, já que a expectativa seria que AB diminuísse em preço e XY aumentasse. Ou, quando AB - XY & lt; - V, eu esperaria comprar AB e vender XY.
Evite a regressão falsa na negociação de pares forex.
No entanto, não é tão simples quanto o exemplo acima sugeriria. Na prática, um sistema de negociação mecânico para negociação de pares forex precisa calcular a cointegração em vez de confiar apenas no valor de R-quadrado entre AB e XY.
Isso porque a análise de regressão ordinária fica aquém quando se lida com variáveis não estacionárias. Isso causa a chamada regressão espúria, que sugere relações entre variáveis mesmo quando não há nenhuma.
Suponha, por exemplo, que eu regride 2 séries temporais separadas de “caminhada aleatória” uma contra a outra. Quando eu testo para ver se há um relacionamento linear, muitas vezes eu vou encontrar valores altos para o R-quadrado, bem como valores de p baixos. Ainda assim, não há relação entre esses dois passeios aleatórios.
Fórmulas e testes para cointegração em negociação de pares forex.
O teste mais simples de cointegração é o teste Engle-Granger, que funciona assim:
Verifique se AB t e XY t são ambos I (1) Calcule a relação de cointegração [XY t = aAB t + et] usando o método de mínimos quadrados Verifique se os resíduos de cointegração et são estacionários usando um teste de raiz unitária como o Teste aumentado de Dickey-Fuller (ADF).
Uma equação detalhada de Granger:
Eu (0) descreve a relação de cointegração.
XY t-1 - βAB t-1 descreve a extensão do desequilíbrio a partir do longo prazo, enquanto αi é a velocidade e a direção em que a série temporal do par de moedas se corrige do desequilíbrio.
Ao usar o método Engle-Granger na negociação de pares forex, os valores beta da regressão são usados para calcular os tamanhos de negociação para os pares.
Ao usar o método Engle-Granger na negociação de pares forex, os valores beta da regressão são usados para calcular os tamanhos de negociação para os pares.
Correção de erros para cointegração em negociação de pares forex:
Ao usar a cointegração para negociação de pares forex, também é útil explicar como as variáveis cointegradas se ajustam e retornam ao equilíbrio de longo prazo. Então, por exemplo, aqui estão as duas séries temporais de pares de forex mostrados autorregressivamente:
Pares de Forex negociados com base na cointegração.
Quando eu uso meu sistema de negociação mecânica para negociação de pares forex, a configuração e execução são bastante simples. Primeiro, encontro dois pares de moedas que parecem estar cointegrados, como EUR / USD e GBP / USD.
Então, eu calculo os spreads estimados entre os dois pares. Em seguida, verifico a estacionariedade usando um teste de raiz unitária ou outro método comum.
Garanto que meu feed de dados de entrada está funcionando adequadamente e deixo meus algoritmos de negociação mecânicos criarem os sinais de negociação. Supondo que eu executei back-tests adequados para confirmar os parâmetros, estou finalmente pronto para usar a cointegração na minha negociação de pares forex.
Eu encontrei um indicador que oferece um excelente ponto de partida para construir um sistema de negociação de pares de forex cointegrado. Parece um indicador de Bollinger Band, mas na verdade o oscilador mostra o diferencial de preço entre os dois pares de moedas diferentes.
Quando este oscilador se move em direção ao extremo alto ou baixo, indica que os pares estão se desacoplando, o que sinaliza os negócios.
Ainda assim, para ter certeza do sucesso, confio no meu bem construído sistema de negociação mecânica para filtrar os sinais com o teste Augmented Dickey-Fuller antes de executar os negócios apropriados.
É claro que qualquer pessoa que queira usar a cointegração para sua negociação de pares forex, ainda que não tenha as habilidades necessárias de programação de algoritmos, pode confiar em um programador experiente para criar um conselheiro especialista vencedor.
Através da mágica da negociação algorítmica, eu programo meu sistema de negociação mecânica para definir os spreads de preço com base na análise de dados. Meu algoritmo monitora os desvios de preço e, em seguida, compra e vende automaticamente pares de moedas para poder inutilizar as ineficiências do mercado.
Riscos a ter em conta ao usar a cointegração com a negociação de pares forex.
A negociação de pares de Forex não é totalmente isenta de risco. Acima de tudo, lembro-me de que a negociação de pares forex usando cointegração é uma estratégia de reversão à média, que se baseia no pressuposto de que os valores médios serão os mesmos no futuro, como eram no passado.
Embora o teste Augmented Dickey-Fuller mencionado anteriormente seja útil na validação dos relacionamentos cointegrados para a negociação de pares forex, isso não significa que os spreads continuarão a ser cointegrados no futuro.
Confio em regras de gerenciamento de risco fortes, o que significa que meu sistema de negociação mecânica sai de negociações não lucrativas se ou quando a reversão à média calculada for invalidada.
Quando os valores médios mudam, é chamado de desvio. Eu tento detectar o desvio o mais rápido possível. Em outras palavras, se os preços dos pares de moeda coexegidos anteriormente começarem a se mover em uma tendência em vez de reverter para a média calculada anteriormente, é hora de os algoritmos do meu sistema de negociação mecânico recalcularem os valores.
Quando uso meu sistema de negociação mecânica para negociação de pares forex, uso a fórmula autoregressiva mencionada anteriormente neste artigo para calcular uma média móvel para prever o spread. Então, eu saio do comércio em meus limites de erro calculados.
A cointegração é uma ferramenta valiosa para minha negociação de pares forex.
Usar a cointegração na negociação de pares forex é uma estratégia de negociação mecânica neutra de mercado que me permite negociar em qualquer ambiente de mercado. É uma estratégia inteligente baseada na reversão, mas ajuda-me a evitar as armadilhas de algumas das outras estratégias de negociação forex de reversão à média.
Devido ao seu uso potencial em sistemas de negociação mecânicos lucrativos, a cointegração para negociação de pares forex tem atraído o interesse tanto de traders profissionais quanto de pesquisadores acadêmicos.
Há uma abundância de artigos publicados recentemente, como este artigo de blog com foco em quant, ou esta discussão acadêmica sobre o assunto, bem como muita discussão entre os traders.
A cointegração é uma ferramenta valiosa na minha negociação de pares forex, e eu recomendo fortemente que você analise por si mesmo.
A Rentabilidade das Estratégias de Negociação de Pares: Métodos de Distância, Cointegração e Cópula.
Rad, Hossein, Baixo, Rand Kwong Yew e Faff, Robert W., As Estratégias de Negociação de Lucros de Pares: Métodos de Distância, Cointegração e Cópula, Finanças Quantitativas, DOI: org / 10.1080 / 14697688.2016.1164337.
35 Pages Publicado: 5 de junho de 2015 Última revisão: 19 de maio de 2016.
Hossein Rad.
Universidade de Queensland, Escola de Negócios, Estudantes.
Rand Kwong Yew Low.
Escola de Negócios da Universidade de Queensland.
Robert W. Faff.
Universidade de Queensland.
Data de gravação: 3 de junho de 2015.
Realizamos um extenso e robusto estudo do desempenho de três diferentes estratégias de negociação de pares - os métodos de distância, cointegração e cópula - em todo o mercado acionário dos EUA de 1962 a 2014 com custos de negociação variáveis no tempo. Para os métodos de cointegração e cópula, nós projetamos uma estratégia de negociação de pares de 2 etapas computacionalmente eficiente. Em termos de resultados econômicos, os métodos de distância, cointegração e cópula mostram um retorno mensal médio excedente de 91, 85 e 43 pontos-base (38, 33 e 5 pontos-base) antes dos custos de transação (após os custos de transação), respectivamente. Em termos de lucratividade continuada, a partir de 2009, a frequência de oportunidades de negociação via métodos de distância e cointegração é reduzida consideravelmente, enquanto essa frequência permanece estável para o método cópula. Além disso, o método de cópula mostra melhor desempenho para seus negócios não convergentes em comparação com os dos outros métodos. Embora o fator de liquidez esteja negativamente correlacionado com os retornos de todas as estratégias, não encontramos evidências de sua correlação com os retornos excedentes do mercado. Todas as estratégias mostram alfas positivos e significativos depois de contabilizar vários fatores de risco. Também descobrimos que, além de todas as estratégias terem um desempenho melhor durante os períodos de volatilidade significativa, o método de cointegração é a estratégia superior durante condições de mercado turbulentas.
Palavras-chave: negociação de pares, cópula, cointegração, estratégias quantitativas, arbitragem estatística.
Seleção de uma Carteira de Pares Baseada na Cointegração: Uma Estratégia de Arbitragem Estatística.
28 páginas Publicado em: 5 de janeiro de 2013
João Caldeira.
Universidade Federal do Rio Grande do Sul (UFRGS)
Guilherme V. Moura.
Universidade Federal de Santa Catarina (UFSC) - Departamento de Economia.
Data de Escrita: 4 de janeiro de 2013.
Estratégias de arbitragem estatística, como a negociação de pares e suas generalizações, dependem da construção de spreads reversíveis com um certo grau de previsibilidade. Este artigo aplica testes de cointegração para identificar ações a serem usadas em pares, estratégias de negociação. Além de estimar o equilíbrio de longo prazo e modelar os resíduos resultantes, selecionamos pares de ações para compor uma carteira de negociação de pares com base em um indicador de lucratividade avaliado na amostra. A rentabilidade da estratégia é avaliada com dados da Bolsa de Valores de São Paulo de janeiro de 2005 a outubro de 2012. A análise empírica mostra que a estratégia proposta apresenta retornos excedentes de 16,38% ao ano, Índice de Sharpe de 1,34 e baixa correlação com o mercado.
Palavras-chave: arbitragem estatística, negociação de pares, cointegração, estratégia neutra de mercado.
Gekko Quant - Negociação Quantitativa.
Negociação Quantitativa, Arbitragem Estatística, Aprendizado de Máquina e Opções Binárias.
Pós-navegação.
Arbitragem Estatística & # 8211; Negociando um par cointegrado.
No meu último post gekkoquant / 2012/12/17 / estatística-arbitragem-testing-for-cointegration-augmented-dicky-fuller / demonstrei cointegração, um teste matemático para identificar pares estacionários onde o spread por definição deve ser revertido à média.
Neste post, pretendo mostrar como negociar um par cointegrado e continuar analisando as ações Royal Dutch Shell A vs B (sabemos que elas estão cointegradas em meu último post). Negociar um par cointegrado é direto, sabemos a média e a variância do spread, sabemos que esses valores são constantes. O ponto de entrada para um stat arb é simplesmente procurar por um grande desvio fora da média.
Uma estratégia básica é:
Se spread (t) & gt; = Spread Médio + 2 * Desvio Padrão, então, Curto Se spread (t) & lt; = Spread Médio & # 8211; 2 * Desvio Padrão e depois Longo.
Se spread (t) & gt; = nDia Média Móvel + 2 * nDay Rolling Desvio padrão, em seguida, será Short If spread (t) & lt; = nDay Moving Average & # 8211; 2 * nDay Rolling O desvio padrão, em seguida, é longo.
Se espalhado (t) & lt; = Spread Médio + 2 * Degradado E espalhado (t-1) & gt; Spread Médio + 2 * Std Se spread (t) & gt; = Spread Médio & # 8211; 2 * Std AND spread (t-1) & lt; Spread Médio & # 8211; 2 * Std Advantage é que apenas trocamos quando vemos a reversão à média, enquanto os outros modelos esperam uma reversão à média em um grande desvio da média (o spread está explodindo?)
Este post irá olhar para o modelo de média móvel e desvios padrão rolantes para as ações Royal Dutch Shell A vs B, ele usará a taxa de hedge encontrada no último post.
Sharpe Ratio Shell A & amp; B Stat Arb Shell A.
Índice de Sharpe Anualizado (Rf = 0%):
Shell A e B Stat Arb 0,8224211.
Shell A 0,166307.
O stat arb tem um índice Sharpe Superior ao invés de simplesmente investir na Shell A. À primeira vista, o índice de sharpe de 0,8 parece decepcionante, mas como a estratégia passa a maior parte do tempo fora do mercado, ele terá uma taxa anualizada baixa. proporção de sharpe. Para aumentar o índice de sharpe, pode-se procurar negociar em freqüências mais altas ou ter um portfólio de pares para que mais tempo seja gasto no mercado.
22 pensamentos sobre & ldquo; Arbitragem Estatística & # 8211; Negociando um par cointegrado & rdquo;
isso também significa que quando identificada a divergência máxima eu posso tomar posição em derivativos como opções?
- Opção de compra de multibanco no primeiro estoque.
-Compre opção de compra no segundo.
ou com um BacKSpreadCall no primeiro e um BackSpreadPut no segundo para que eu possa definir as proteções e eu posso rolá-las se elas saírem do controle & # 8230;
As posições curtas devem ser moneyness ATM ou levemente OTM na minha opinião.
O que você pensa sobre?
Você tentou usar a abordagem de teste de Johansen para realizar testes mais rigorosos de cointegração? O que você acha de combinar o Engle-Granger com o Johansen?
O spread acima não oscila em torno dele significa, idealmente, que um par cointegrado não deve ser negociado de forma lateral, como mostrado acima, e seu artigo foi perfeito para a cointegração adequada que você demonstrou. mas esse spread não é um spread perfeito.
Eu 100% concordo com você.
No entanto, para fins práticos, desde que a reversão à média aconteça mais rapidamente do que a média, então você vai bem.
Eu acho que algo que eu perdi, como quantificar a meia vida / velocidade de reversão.
Por favor, note que na demonstração acima, o período de retorno é de 90 dias. Isso é razoavelmente curto. A escolha de 200 dias resultará em uma média menos responsiva / muda de direção. Isso provavelmente aumentará o tamanho das bandas de desvio padrão e resultará em menos negócios por ano. Isso geralmente resulta em um menor índice de Sharpe.
Post muito interessante. Adoraria ver a implementação em uma cesta de pares.
Eu faço algumas alterações no seu programa para calcular as bandas de bollinger e eu quero saber por que você colocou o desvio padrão para a direita? (movingStd = rollapply (spread, lookback, sd, alinhamento = & # 8221; direita & # 8221 ;, na. pad = TRUE))
OK obrigado por responder!
Seu blog me dá a chance de implementar e construir mais rapidamente a minha estratégia stat arb.
Vou testar modelos diferentes para arbitragem estatística. Eu mantenho todos os visitantes no circuito!
Em seu programa, o efeito martingale não está aqui. Como posso adicionar esse efeito?
Estou executando meus próprios backtests com programas diferentes (Excel, R et ProRealTime (uma plataforma francesa)) e para fazer alguma comparação, eu preciso adicionar o efeito martingale.
Obrigado pelo esclarecimento. Pelo mesmo argumento, rollmean tem que ter o mesmo: rollmean (spread, lookback, na. pad = TRUE, align = ’right’)
Com esta nova modificação, a taxa de Sharpe cai drasticamente.
Coisas boas!! Eu acho que existem dois erros no seu código, no entanto. A primeira é no cálculo da média móvel. Você esqueceu de definir o parâmetro align para & # 8220; right & # 8221; (como você faz para o desvio padrão). Função usa default & # 8220; center & # 8221; e seus dados & # 8211; spread e média móvel não estão alinhados. Você pode ver isso da trama também. A média móvel termina 45 dias antes do spread. Segundo bug está no cálculo dos retornos de negociação. Eu acho que você deve ter o retorno do dia seguinte quando entramos na posição no preço de fechamento.
Obrigado pelo seu código elegante. Eu notei que sua linha de código:
destina-se a aplicar a função shortPositionFunc para (-1 * aboveUpperBand + belowMAvg).
No entanto, a função shortPositionFunc aceita dois argumentos x e y.
Existe algum erro no código?
Obrigado pelo seu esclarecimento!
Obrigado Gekko pelo código de backtesting. É muito útil. Alguns comentários abaixo:
1) Outro leitor já comentou sobre isso acima. O movingAvg precisa ser corrigido adicionando-se align = "right" para se ter o primeiro número médio móvel no dia 90:
movingAvg = rollmean (spread, lookback, align = ”right”, na. pad = TRUE)
2) como entramos no final do dia, o retorno da data de negociação não deve ser contabilizado. podemos simplesmente deslocar cada elemento no vetor de “posições” usando a função “shift” na biblioteca taRifx.
Além disso, não acredito que o retorno diário seja (aRet - stockPair $ hedgeRatio * bRet). Imagine se você tivesse uma grande taxa de hedge, ou seja, se a ação A precificasse US $ 100 e a ação B tivesse US $ 10, então a hedgeRatio estaria na casa dos 10. Como aet e bRet estão em%, a fórmula não trabalhos. O retorno diário deve ser aRet-bRet * (razão entre o índice neutro do dólar versus o índice de hedge).
#Calculate spread diário ret.
dailyRet & lt; - aRet - bRet * hedgeRatioOVERdollarNeutralRatio.
tradingRet & lt; - dailyRet * shift (posições, -1)
Eu estou procurando novas estratégias na negociação de pares de ações que melhorem a abordagem de cointegração padrão (por exemplo, comecei a investigar o par de negociação com copulas, que ainda parece uma alternativa instável à cointegração). Você tem algum papel novo para me sugerir? Muito obrigado e parabéns pelo ótimo blog.
A segunda metade do livro passa por várias técnicas mais avançadas para proteger um portfólio / encontrar pares estacionários.
Estou um pouco confuso nesta etapa.
Quando eu plotei o longoPositions e ShortPositions junto com o spread, bandas e linhas médias móveis encontrados, então há sinais longos consecutivos e sinais curtos. De acordo com o meu entendimento
longPostions & lt; - se o spread estiver abaixo da banda inferior.
longExit & lt; - se o spread estiver acima de movAvg durante o tempo
shortPostions & lt; - se o spread estiver acima da banda superior.
shortExit & lt; - se o spread estiver abaixo de movAvg enquanto curto.
é a mesma coisa que seu código está fazendo. Por favor me ajude a entender essa parte.
Oi Gekko, eu li os livros do EP Chan que fala sobre esse assunto e eu estou um pouco confuso sobre a reserva média. Quando dois ativos são cointegrados, estamos supondo que eles retornarão à sua média, mas sua média móvel ou sua média total em um período fixo? Eu estou dando melhores resultados usando parâmetros estáticos do que usando bandas de bollinger. Eu vou te mostrar uma imagem com a minha dúvida. prntscr / 51jofw Poderia escrever outro artigo de reversão à média! Obrigado por todos.
Oi Gekko Ótimo Código. Você poderia explicar mais de perto uma ideia por trás dessa função cappedCumSum? Eu não entendo o momento em que você está especificando duas variáveis de entrada, mas na função Reduce () é apenas um parâmetro, & # 8211; é por causa de 0?
Há um erro. Seu algoritmo parece, no futuro, o problema na função rollmean. Algoritmo usando a média móvel dos dias futuros para fechar a posição.
Veja também documentação, vídeos e chat.
Jing é um desenvolvedor quantitativo na QuantConnect. Ela tem um mestrado em Matemática Financeira da John Hopkins e trabalhou anteriormente na Northeast Securities fazendo pesquisas quantitativas.
Artigos recentes.
Pairs Trading & # 8211; Cópula vs Cointegração.
Em Tutoriais De Estratégia, Publicado em 13 de junho de 2017.
Investigamos dois métodos de negociação de pares e comparamos os resultados. O comércio de pares envolve investigar a estrutura de dependência entre dois ativos altamente correlacionados. Com a suposição de que ocorrerá reversão à média, posições longas ou curtas são inseridas na direção oposta quando há uma divergência de preços. Tipicamente, a distribuição do preço do ativo é modelada por uma distribuição Gaussiana de séries de retorno, mas a distribuição normal conjunta pode falhar em capturar algumas características-chave da dependência do preço dos pares de ações, como a dependência da cauda. Nós investigamos usando a teoria da cópula para identificar essas oportunidades de negociação.
Neste tutorial, discutiremos a estrutura básica da cópula a partir da perspectiva matemática e explicaremos como aplicar a abordagem em pares de negociação. A implementação do algoritmo baseia-se no papel Trading estratégias com copulas [1] Stander Y, Marais D, Botha I. Estratégias de negociação com cópulas [J]. Revista de Ciências Econômicas e Financeiras, 2013, 6 (1): 83-107. Cópia Online do Stander Y, Marais D, Botha I (2013). Comparamos o desempenho da estratégia de negociação de pares de cópulas com o método de negociação de pares de co-integração baseado no artigo Estratégias de negociação de arbitragem estatística e negociações de alta frequência da Hanson TA, Hall J R. (2012) [2] Hanson TA, Hall J R. Estratégias de negociação de arbitragem estatística e negociação de alta frequência [J]. 2012.. A técnica de cointegração assume uma relação de cointegração entre as equidades pareadas para identificar oportunidades de negociação lucrativas. Os resultados empíricos sugerem que a estratégia baseada em cópulas é mais lucrativa do que os tradicionais sistemas de negociação de pares.
Estrutura do Copula.
1. Definição.
Dado um vetor aleatório, suas funções de distribuição cumulativa marginal (CDFs) são. Aplicando a transformada de probabilidade integral a cada componente, as distribuições marginais de são uniformes (da Wikipedia).
Então a cópula de é definida como a função de distribuição cumulativa da junção, para a qual a distribuição marginal de cada variável U é uniforme como.
A função de cópulas contém todas as características de dependência das distribuições marginais e descreverá melhor a relação linear e não linear entre variáveis, usando probabilidade. Eles permitem que as distribuições marginais sejam modeladas independentemente umas das outras, e nenhuma suposição sobre o comportamento conjunto dos marginais é necessária. [3] Rad H, Baixo R K Y, Faff R. A rentabilidade das estratégias de negociação de pares: métodos de distância, cointegração e cópula [J]. Financiamento Quantitativo, 2016, 16 (10): 1541-1558.cópia online.
2. Cópulas Bivariadas.
Uma vez que esta pesquisa se concentra em cópulas bivariadas (para a troca de pares, temos duas variáveis aleatórias), algumas propriedades probabilísticas são especificadas.
Seja X e Y duas variáveis aleatórias com função de probabilidade cumulativa e. que são uniformemente distribuídos. Então a função da cópula é. Tomando a derivada parcial da função cópula sobre U e V daria a função de distribuição condicional da seguinte forma:
3. Cópulas Arquimedianas.
Existem muitas funções de cópula que nos permitem descrever as estruturas de dependência entre variáveis, além da suposição gaussiana. Aqui vamos nos concentrar três destes; as fórmulas Clayton, Gumbel e Frank cópula da classe de Arquimedes.
Cópulas arquimedianas [4] Mahfoud M, Michael M. Cópulas arquimedianas bivariadas: uma aplicação a dois índices do mercado de ações [J]. BMI Paper, 2012. A cópia on-line é baseada nas transformações de Laplace das funções de distribuição univariada. Eles são construídos por uma função geradora particular [5]. Os pares baseados em cópulas de alta frequência são negociados nos US Goldmine Stocks [J]. 2016.
A função de densidade de probabilidade é:
Onde é o inverso da segunda derivada da função geradora.
Комментариев нет:
Отправить комментарий