Saturday 5 August 2017

Pca Trading Signals


Permita que você tenha um modelo multifatorial que leve como insumos cerca de 10 20 variáveis ​​exógenas debilmente estacionárias. Então você pode usar o PCA para obter apenas 3 4 variáveis ​​ortogônicas para simplificar seu modelo sem perder muita informação (talvez os 3 primeiros componentes principais explicam mais de 90 das 10 20 variáveis ​​originais39 variância total). Por exemplo, os comerciantes técnicos muitas vezes usam muito t. a. Indicadores, como MACD, RSI, estocásticos e assim por diante: é provável que o primeiro componente principal desses indicadores explique mais de 95 variantes de todos os indicadores39. Ndash Lisa Ann 2 de maio 13 às 9:54 Para responder suas perguntas, temos que dar uma olhada no que faz. PCA é matematicamente definido como uma transformação linear ortogonal que transforma os dados em um novo sistema de coordenadas, de modo que os vetores de notícias são ortogonais e explicam a parte principal da variância do primeiro conjunto. Levou uma matrix N x M como entrada, N representa a repetição diferencial da experiência e M os resultados de uma sonda particular. Isso lhe dará instruções (ou componentes principais) que explicam a variância do seu conjunto de dados. Então tudo depende do que você insere no seu PCA. Uso a PCA para analisar a correlação do mercado, então insisto nos preços de M em N vezes. Você pode inserir diferentes medidas (gregos, futuros) de um único estoque para dar uma olhada em sua dinâmica. O meu uso dará a correlação de um preço das ações com o mercado, conhecido como beta, o outro uso dará correlação entre diferentes indicadores técnicos de uma ação. E, bem, acho que você pode obter alguns resultados interessantes com diferentes indicadores em relação a diferentes ações. Não se esqueça do pré-processamento. Como você pode ver aqui: Sincronização de dados há alguns problemas complicados com os dados do mercado. Também depende do que você faz com seus resultados. Você pode usar algum critério para remover componentes com pouca variação para reduzir a dimensão do seu conjunto de dados. Este é o objetivo habitual da PCA. Dá-lhe um número reduzido de ações para construir um portfólio, para estimar curvas de risco de lucro. Mas você também pode fazer um tratamento pós-tratamento mais complexo. Aqui: th-if. uj. edu. pl acta vol36 pdf v36p2767.pdf você pode ver um uso de PCA combinado com a matriz de matriz aleatória para remover o ruído do mercado. O PCA é uma ferramenta, uma ferramenta muito poderosa, mas apenas uma ferramenta. Seus resultados dependerão de como você o usa. O risco é usá-lo demais. Você sabe o que eles disseram, se você tem um martelo, todos os problemas parecem um prego. Em uma publicação anterior, eu mostro como se pode usar a análise do componente principal para derivar fatores de risco. Além disso, usando o PCA, o eigenportfolio diferente pode ser visto como uma negociação de pares no nível dos setores. A idéia baseia-se no princípio da coerência (ver Avellaneda 2002): quando as empresas são classificadas de acordo com seus coeficientes em um determinado eigenvector, as empresas da mesma indústria ou setor estão agrupadas. A trama dos coeficientes classificados em relação às empresas correspondentes ajuda a notar que, os vizinhos de uma determinada empresa tendem a estar no mesmo grupo industrial. Nesta publicação, eu apresento uma metodologia de troca de pares onde os pares são formados usando o PCA e o princípio da coerência. Esta é apenas uma forma de fazer, estou apresentando uma metodologia. O princípio da coerência é válido neste caso, os estoques da mesma indústria são agrupados. Para fins de ilustração, eu uso os principais estoques no terceiro eigenvector. Essas ações pertencem ao mesmo setor: Materiais Básicos. Eu escolho dois candidatos para testar a estratégia de negociação dupla SWN e CNX: eu não afirmo que esta seja a melhor opção ou a melhor estratégia, como eu disse, isso é apenas um modo de fazer. Por simplicidade, as duas séries estão no mesmo arquivo. Aqui está o código R: Carregue a biblioteca da biblioteca (tseries) Leia um arquivo. csv chamado test2.csv em R Defina as duas variáveis ​​usadas para testar a estratégia de negociação dupla swndataS, 2 cnxdataS, 3 swnas. matrix (swn) cnxas. matrix (Cnx) Modelo de regressão linear simples sem intercepção E construção da propagação Sy-hedgeratiox beta que representa o primeiro coeficiente do modelo é a hedgeratio cnx0) betacoef (lmresult) 1 spreadswn-betacnx Teste de cointegração usando o teste Augey Dickey-Fuller (para unidade Root) O Teste é executado a 5 níveis, resCADFlt-adf. test (spread, alternativetationary, k0) if (resCADFp. value lt 0.05) cat (A propagação é provável que reverte na média n) else cat (A propagação não é média) Reverter n) Separar os dados no conjunto de treinamento e conjunto de teste para Backtest a estratégia de negociação do par e otimizar seus parâmetros definir índices para treinar setment conjunto 1: 100 1: (comprimento (dadosS, 1) 2) teste (comprimento (compostagem) 1) : Comprimento (dataS, 1) determina a relação de cobertura no conjunto de treinamento Registrado linear simples O modelo de essião na trens determina a propagação 0cnxtrainset,) hedgeratiocoef (lmresult) 1 propagação do spread-hedgeratiocnx (spread, typel) descrição do espalhamento spreadMeanmean (spreadtrainset,) cat (Spread Mean :, spreadMean, n) spreadStdDevsd (spreadtrainset,) cat ( Spead Desvio Padrão: spreadStdDev, n) Z-score do Spread: estratégia definida: Buy Spread quando o valor cai abaixo de 2 desvios padrão e os shorts se espalham quando seu valor sobe acima de 2 desvios padrão zcore tem desvio padrão1 Posições de exir quando a propagação em 1 Desvios padrão de sua média Defina a matriz de posições matrizMatrixmatrix (NaN, comprimento (dadosS, 1), 2) posMatrixlongPos, 11 posMatrixlongPos, 2-1 posMatrixshortPos, 1-1 posMatrixshortPos, 21 posMatrixexistPos, 0 Return (dataS, 2: 3-lagg (DadosS, 2: 3)) lagg (dataS, 2: 3) pnlas. vector (rowSums (lagg (posMatrix) Return, na. rmTRUE)) sharpeTrainsetsqrt (comprimento (compostagem)) significa (pnl2: comprimento (compostagem)) sd (Pnl2: comprimento (ração)) gato (a proporção de sharpe no conjunto de treinamento é: sharpeTrainset, n) Sharpe Ratio em testset sharpeTestsetsqrt (comprimento (testset)) significa (pnltestset) sd (pnltestset) cat (a proporção sharpe no conjunto de teste é: sharpeTestset, n) Lagg function lagglt-function (x) y matrix (NaN, length (dataS , 1), 2) y2: comprimento (dataS, 1), 1x1: (comprimento (dadosS, 1) -1), 1 y2: comprimento (dadosS, 1), 2x1: (comprimento (dadosS, 1) -1) , 2 retorno (y)

No comments:

Post a Comment