Eu tenho uma série de dados x, y e eu estou tentando encontrar a média móvel. Os números de dados x são inteiros de 1 a 100 enquanto os dados y são números de 0,01 a 1 e também têm um desvio padrão ydev (que derivamos porque a experiência é repetida várias vezes). Eu estou tentando encontrar a média móvel usando os 20 vizinhos mais próximos (usando Matlab): A maneira acima deriva a média móvel, mas eu não sei como usar o desvio padrão que eu tenho para cada ponto de dados y porque alguns pontos de dados têm muito Desvios padrão maiores do que outros, o que significa que eles não são tão confiáveis quanto os outros (então eles provavelmente pesam menos). Como posso incluir o desvio padrão para cada ponto de dados no cálculo acima perguntado Jul 5 15 at 15:07 Mover média ou mover mediana. Quanto à questão "Como posso incluir o desvio padrão para cada ponto de dados no cálculo acima", depende do que você quer fazer. Você deve primeiro decidir que (que não é uma questão de programação). Uma sugestão: você não pode usar todo o conjunto de dados para cada x (em vez de apenas a média e desvio padrão) e calcular medico médio a partir desse ndash Luis Mendo Jul 5 15 em 15:12 LuisMendo Eu queria fazer média móvel (editei o Código para refletir isso). O conjunto de dados é uma experiência de séries temporais e tem sido repetido várias vezes (que é como eu tenho desvios padrão para cada ponto). Eu quero usar o desvio padrão para cada ponto no meu cálculo de média móvel, porque eu quero os pontos com menor desvio padrão para pesar mais do que os pontos com maior desvio padrão. Ndash AL B Jul 5 15 at 16:50 Digamos que você tem um vetor a. Em seguida, outra forma de escrever significa (a) como uma média ponderada é awts. Onde wts uns (1, numel (a)) numel (a). No seu caso, você tem um y (ind1 (i): ind2 (i)). Parece que o que você está querendo usar é uma média móvel ponderada, onde seus pesos wts não são mais idênticos, mas são escolhidos usando o desvio padrão dos valores correspondentes. Assumindo que o vetor sd contém os desvios-padrão, uma maneira de fazer isso: Aqui, os valores com desvios padrão menores contribuirão com pesos maiores. Uma idéia alternativa é calcular a média móvel simples de y e seus desvios padrão sd. E então traçá-los ao lado um do outro. Isso tem a vantagem de ser mais estatisticamente interpretável do que escolher pesos em função dos desvios padrão. Usando MATLAB, como posso encontrar a média móvel de 3 dias de uma coluna específica de uma matriz e anexar a média móvel àquela matriz que eu sou Tentando calcular a média móvel de 3 dias de baixo para cima da matriz. Eu forneci o meu código: Dada a seguinte matriz a e máscara: Tentei implementar o comando conv, mas estou recebendo um erro. Aqui está o comando conv que eu tenho tentado usar na segunda coluna da matriz a: A saída que desejo é dada na seguinte matriz: Se você tiver alguma sugestão, eu gostaria muito. Obrigado Para a coluna 2 da matriz a, estou computando a média móvel de 3 dias da seguinte maneira e colocando o resultado na coluna 4 da matriz a (I renomeado como a matriz 39 como 39desiredOutput39 apenas para ilustração). A média de 3 dias de 17, 14, 11 é 14 a média de 3 dias de 14, 11, 8 é 11 a média de 3 dias de 11, 8, 5 é 8 ea média de 3 dias de 8, 5, 2 é 5. Não há nenhum valor nas 2 linhas inferiores para a 4a coluna porque a computação para a média móvel de 3 dias começa na parte inferior. A saída 39valid39 não será mostrada até pelo menos 17, 14 e 11. Espero que isso faz sentido ndash Aaron Jun 12 13 em 1:28 Em geral, seria útil se você mostrar o erro. Neste caso você está fazendo duas coisas erradas: Primeiro, sua convolução precisa ser dividida por três (ou o comprimento da média móvel) Segundo, observe o tamanho de c. Você não pode apenas caber c em um. A maneira típica de obter uma média móvel seria usar o mesmo: mas isso não se parece com o que você quer. Em vez disso, você é forçado a usar um par de linhas: Movendo Desvio Padrão Movendo Desvio Padrão é uma medida estatística de volatilidade do mercado. Ele não faz previsões de direção de mercado, mas pode servir como um indicador de confirmação. Você especifica o número de períodos a usar, eo estudo calcula o desvio padrão dos preços da média móvel dos preços. Ele é derivado calculando-se uma Média Móvel Simples n período de tempo do item de dados. Em seguida, soma os quadrados da diferença entre o item de dados e sua média móvel em cada um dos n períodos de tempo anteriores. Finalmente, divide esta soma por n e calcula a raiz quadrada deste resultado. Propriedades Período: O número de barras em um gráfico. Se o gráfico exibir dados diários, então período significa dias em gráficos semanais, o período permanecerá por semanas, e assim por diante. O aplicativo usa um padrão de 20. Aspecto: O campo Símbolo no qual o estudo será calculado. Campo é definido como Padrão, que, ao exibir um gráfico para um símbolo específico, é o mesmo que Fechar. Interpretação Os valores de Desvio Padrão aumentam significativamente quando o contrato analisado do indicador muda de valor dramaticamente. Quando os mercados estão estáveis, as baixas leituras do Desvio Padrão são normais. As baixas leituras de desvio padrão normalmente tendem a vir antes de mudanças significativas no preço. Os analistas geralmente concordam que a alta volatilidade é parte de tops principais, enquanto baixa volatilidade acompanha fundos principais. Conteúdo Fonte: FutureSource Ver Outros Estudos de Análise Técnica Primary Sidebar Elevar a sua negociação Últimos Tweets Incerto sobre a volatilidade do mercado Tente a estratégia de futuros sintéticos curto Encontrar exemplos amp que assistir aqui t. coKD0fYCMMrp Tempo atrás 4 Horas via Buffer Access oportuna amp confiável informações comerciais Um local com Inside Market Advisory Inscreva-se para a sua versão de avaliação gratuita agora t. coeJjrD5hBN0 Tempo atrás 7 Horas via Buffer Olhe por cima do ombro do Senior Broker Andrew Pawielski como os mercados abrem este Wed para aprender análise de mercado LIVE: t. cov5u092OKU3 Tempo atrás 11 Hours Via Buffer Direitos Autorais xA9 2017 xB7 Daniels Trading. Todos os direitos reservados. Este material é transmitido como uma solicitação para entrar em uma transação de derivativos. Este material foi preparado por um corretor da Daniels Trading que fornece comentários sobre o mercado de pesquisa e recomendações comerciais como parte de sua solicitação de contas e solicitação de negócios, porém, a Daniels Trading não mantém um departamento de pesquisa como definido na CFTC Regra 1.71. A Daniels Trading, seus diretores, corretores e funcionários podem negociar derivativos para suas próprias contas ou para contas de terceiros. Devido a vários fatores (como tolerância ao risco, requisitos de margem, objetivos de negociação, estratégias de curto prazo versus longo prazo, análise técnica versus análise de mercado fundamental e outros fatores), tal negociação pode resultar no início ou na liquidação de posições que são diferentes de Ou contrária aos pareceres e recomendações nele contidos. O desempenho passado não é necessariamente indicativo do desempenho futuro. O risco de perda em contratos futuros de negociação ou opções de commodities pode ser substancial e, portanto, os investidores devem compreender os riscos envolvidos na tomada de posições alavancadas e devem assumir a responsabilidade pelos riscos associados a tais investimentos e seus resultados. Você deve considerar cuidadosamente se tal negociação é adequado para você, à luz de suas circunstâncias e recursos financeiros. Você deve ler a página de divulgação de risco acessada na DanielsTrading na parte inferior da página inicial. Daniels Trading não é afiliado com nem endossa qualquer sistema de comércio, boletim ou outro serviço semelhante. Daniels Trading não garante ou verificar quaisquer alegações de desempenho feitas por tais sistemas ou service. Moving média - desvio padrão Eu tenho alguns dados da série de tempo (vetor 1x70000) que eu gostaria de executar uma média móvel de 12 horas (720 pontos) em. Eu encontrei um algoritmo vectorizado para calcular a média móvel: z 0 cumsum (data) dataavg (z (numpoints1: nlength1) - z (1: nlength-numpoints1)) numpoints onde datain é a série de dados de tempo, numpoints é o número de pontos Para incluir a média, e nlength é o comprimento do vetor de dados. No entanto, o meu principal objectivo é calcular o desvio padrão de cada média de 12 horas, ou seja, 69280 70000 - 720 cálculos de desvio padrão. Uma vez que o algoritmo acima para a média utiliza somas cumulativas, os valores individuais não estão disponíveis para calcular o desvio padrão dentro dele. Eu tentei duas soluções que envolvem tanto looping: 1) pegar uma seção dos dados para calcular média desvio padrão mover sobre um ponto e repetir 2) criar uma matriz 720x70000 onde cada linha é simplesmente a linha anterior movida para a esquerda um ponto Calcular o desvio padrão de cada coluna O segundo método pareceu o mais promissor como a maior parte do tempo de processamento foi na criação da grande matriz que eu fiz com um loop for. Alguém tem alguma sugestão sobre a criação eficiente deste array Ou qualquer outra sugestão completamente diferente para resolver este problema Obrigado a todos Ed on Wed, 11 Sep 2002 16:22:36 -0600, Ed Ross escreveu: gt gt gt O segundo método parecia o mais Promissora como a maior parte do tempo de processamento gt estava em criar a grande matriz que eu fiz com um loop para gt. Alguém tem alguma sugestão sobre a criação eficiente gt esta matriz gt gt gt Ou qualquer outra sugestões completamente diferentes para resolver este problema gt Você poderia tentar usar o filtro para calcular a média móvel. Parece ser um favorito neste newsgroup. Heres um post descrevendo como: gt gt Obrigado a todos gt Ed Eu só queria salientar que o seu desvio padrão, não a média em si, que estou tendo problemas com. O código que eu postei acima calcula a média real muito bem. Em Wed, 11 Sep 2002 17:06:55 -0600, Ed Ross escreveu: gt Eu só queria salientar que o seu desvio padrão, não a própria média gt, que estou tendo problemas com. O código que eu postei acima gt calcula a média real muito bem. Gt gt gt Cheers, gt Ed Sim, eu percebo isso. Você perguntou se havia outras maneiras de resolver o problema, então eu lhe forneci um. Talvez ajude na computação do desvio padrão. Talvez não. No artigo lteeb20d3.1WebX. raydaftYaTPgt, Ed Ross ltedrosscayahoo. cagt escreveu: gt Eu só queria ressaltar que o seu desvio padrão, não a própria média gt, que estou tendo problemas com. O código que eu postei gt acima calcula a média real muito bem. Use a outra fórmula para o desvio padrão. O ponto é que você pode usar a mesma abordagem que você usa atualmente para calcular a média móvel, mas aplicá-la aos quadrados dos elementos e, em seguida, subtrair o termo xbar. São apenas duas aplicações de filtro, uma vez para a própria série, e depois para a série ao quadrado. Outro truque. Como o desvio padrão não é afetado por um deslocamento constante, subtraia primeiro a média geral da série. Isso reduzirá o erro computacional. Talvez eu não esteja sendo muito claro aqui. Vamos tentar um exemplo. 100 pontos em uma série, com uma janela de largura 10. (Nota, eu tenho nota testado este código, mas deve ser fechar. Ive nem sequer verificado se eu tenho a fórmula para a variação acima correto.) Alguns dados aleatórios m100 x (Mn) para j1: n xbarxbarx (ij) n filtro final faz o MA mais fácil embora: xbar filtro (uns (1, m) N) n, 1, x) xbar (1: (n-1)) movendo SD usando o filtro x2 filtro (um, n), 1, x.2) V (x2-nxbar.2) ) SDsqrt (V) SD (1: (n-1) HTH, John DeRrico Ed Ross ltedrosscayahoo. cagt escreveu em notícia: eeb20d3.-1WebX. raydaftYaTP: gt Oi tudo gt gt gt Eu tenho alguns dados de séries de tempo (vetor 1x70000) Que eu gostaria de gt executar uma média móvel de 12 horas (720 pontos).Eu encontrei um algoritmo gt vectorized para calcular a média móvel: gt gt gt z 0 cumsum (data) gt dataavg (z (numpoints1: nlength1) - z (1: nlength-numpoints1)) gt numpoints gt gt gt onde datain é a série de dados de tempo, numpoints é o número de gt pontos para incluir a média, e nlength É o comprimento do vetor de dados gt. Gt gt gt Contudo, o meu principal objectivo é calcular o desvio padrão de cada média gt de 12 horas, ou seja, 69280 70000-720 desvio padrão gt cálculos. Uma vez que o algoritmo acima para a média usa gt somas cumulativas, os valores individuais não estão disponíveis para calcular gt o desvio padrão dentro dele. Gt gt gt Eu tentei duas soluções que envolvem tanto looping: gt gt gt 1) pegar uma seção dos dados para calcular média gt padrão desvio mover sobre um ponto e repetir gt gt gt 2) criar uma matriz 720x70000 onde cada linha é a Simplesmente a linha anterior gt movido para a esquerda um ponto calcular o desvio gt padrão de cada coluna gt gt gt O segundo método parecia o mais promissor como a maior parte do tempo de processamento gt foi na criação da grande matriz que eu fiz com um gt para Loop Alguém tem alguma sugestão sobre eficazmente gt criar esta matriz gt gt gt Ou qualquer outra sugestões completamente diferentes para resolver este problema gt gt gt Obrigado a todos gt Ed gt Heres algum código bastante opaco para calcular uma variação móvel (o quadrado do que você quer. (X, N) ymovingvar (X, N) Calcula a variação em movimento de N pontos do vetor X Recomenda altamente que N seja ímpar (não Verificação de erros) Observação: os pontos N2 primeiro e último não serão confiáveis. Saída será um vetor de coluna. Comentários: Scott Seidman (scott. seidmanrochester. edu) 12399 XX (:) XSQRX. X convsigones (1, N) y (conv Conv., XSQR) - (conv, X) .2) N) (N-1) - Scott Primeiro campo de endereço para responder gt Eu só queria ressaltar que é o desvio padrão, não a própria média gt, Que eu estou tendo problemas com O código que eu postei gt acima calcula a média real muito bem Eu não tenho acesso Para o seu post original, mas eu suponho que você quer saber como obter um desvio padrão em movimento. Se sim, você pode usar algo como o seguinte código (não testado): Isso usa a fórmula E (x-u) 2) Ex2 - Ex2. Espero que ajudou, o que é uma lista de observação Você pode pensar em sua lista de observação como segmentos que você tem marcado. Você pode adicionar tags, autores, threads e até mesmo resultados de pesquisa à sua lista de observação. Desta forma, você pode facilmente acompanhar os tópicos que você está interessado polegadas Para ver a sua lista de observação, clique no link quotMas newsreaderquot. Para adicionar itens à sua lista de observação, clique no link quotadd para assistir listquot na parte inferior de qualquer página. Como adicionar um item à minha lista de observação Para adicionar critérios de pesquisa à sua lista de observação, pesquise o termo desejado na caixa de pesquisa. Clique no botão quotAdicionar esta pesquisa ao meu link de listagem de visualizações na página de resultados de pesquisa. Você também pode adicionar uma tag à sua lista de observação procurando a tag com a diretiva quottag: tagnamequot onde tagname é o nome da tag que você gostaria de assistir. Para adicionar um autor à sua lista de observação, vá para a página de perfil dos autores e clique no botão quotAdicionar este autor ao meu link de lista de observações na parte superior da página. Você também pode adicionar um autor à sua lista de observação, indo a um tópico que o autor postou e clicando no quotAdicionar este autor ao meu link listquot do relógio. Você será notificado sempre que o autor fizer um post. Para adicionar um tópico à sua lista de observação, vá para a página do tópico e clique no link quotAdicionar este tópico ao meu link de lista de observações na parte superior da página. Sobre Newsgroups, Newsreaders e MATLAB Central O que são newsgroups Os newsgroups são um fórum mundial aberto a todos. Os newsgroups são usados para discutir uma enorme variedade de tópicos, fazer anúncios e trocar arquivos. As discussões são encadeadas ou agrupadas de forma a permitir que você leia uma mensagem postada e todas as suas respostas em ordem cronológica. Isto torna mais fácil seguir o fio da conversa e ver whatrsquos já foi dito antes de postar sua própria resposta ou fazer uma nova postagem. O conteúdo do grupo de notícias é distribuído por servidores hospedados por várias organizações na Internet. As mensagens são trocadas e gerenciadas usando protocolos de padrão aberto. Nenhuma entidade única ldquoownsrdquo os newsgroups. Existem milhares de newsgroups, cada um abordando um único tópico ou área de interesse. O MATLAB Central Newsreader publica e exibe mensagens no grupo de notícias comp. soft-sys. matlab. Como posso ler ou publicar nos newsgroups Você pode usar o newsreader integrado no site da MATLAB Central para ler e publicar mensagens neste newsgroup. MATLAB Central é hospedado por MathWorks. As mensagens enviadas através do Central Newsreader MATLAB são vistas por todos os grupos de notícias, independentemente de como eles acessam os grupos de notícias. Há várias vantagens em usar o MATLAB Central. Uma conta A sua conta MATLAB Central está ligada à sua conta MathWorks para fácil acesso. Use o endereço de e-mail da sua escolha O MATLAB Central Newsreader permite que você defina um endereço de e-mail alternativo como seu endereço de postagem, evitando a confusão em sua caixa de correio principal e reduzindo o spam. Controle de Spam A maioria do spam do newsgroup é filtrada para fora pelo newsreader central de MATLAB. Marcação As mensagens podem ser marcadas com um rótulo relevante por qualquer usuário conectado. As tags podem ser usadas como palavras-chave para encontrar arquivos particulares de interesse ou como uma maneira de categorizar suas postagens marcadas. Você pode optar por permitir que outras pessoas visualizem suas tags e você pode exibir ou pesquisar outras tags, assim como as da comunidade em geral. Tagging fornece uma maneira de ver tanto as grandes tendências e as menores, mais obscuros idéias e aplicações. Listas de vigilância A configuração de listas de observação permite que você seja notificado das atualizações feitas em postagens selecionadas por autor, segmento ou qualquer variável de pesquisa. As notificações da sua lista de observação podem ser enviadas por email (resumo diário ou imediato), exibidas em Meu leitor de notícias ou enviadas via feed RSS. Outras formas de aceder aos newsgroups Utilize um leitor de notícias através da sua escola, entidade patronal ou fornecedor de serviços Internet Pagar o acesso a grupos de notícias de um fornecedor comercial Utilizar Grupos do Google Mathforum. org fornece um leitor de notícias com acesso ao grupo de notícias comp. soft sys. matlab Execute o seu próprio servidor. Para obter instruções típicas, consulte: slyckng. phppage2 Selecione seu país
No comments:
Post a Comment