Análise Financeira Geral em Python (Parte 2)

Bem continua ?

Janela deslizante (mover janelas)


No título, citei uma tradução literal. Se alguém me corrige, e outro termo é mais aplicável - obrigado.

O significado de uma janela deslizante é que, a cada novo valor, a função é recalculada por um determinado período de tempo. Essas funções são um grande número . Por exemplo: rolling.mean (), rolling.std (), que são mais frequentemente usados ​​na análise de movimentos de estoque. rolling.mean () é uma média móvel comum que suaviza flutuações de curto prazo e permite visualizar a tendência geral.

#     
adj_close_px = sber['Adj Close']

#   
moving_avg = adj_close_px.rolling(window=40).mean()

#  
print(moving_avg[-10:])

imagem

Um gráfico que permite entender o que é obtido como resultado desta função:

#    
sber['40'] = adj_close_px.rolling(window=40).mean()

#    
sber['252'] = adj_close_px.rolling(window=252).mean()

#   
sber[['Adj Close', '40', '252']].plot(figsize=(20,20))

plt.show()

imagem

Como você pode ver, o rolling.mean () lida com a tarefa. A função suaviza flutuações de curto prazo e permite que você veja uma tendência de longo prazo com base na qual você pode tomar uma decisão: o preço é mais alto do que a média móvel considerada - tomamos uma parte, mais baixa - vendemos uma ação - se for simples e eu não recomendaria seguir esse método. Como regra, além de médias móveis, outros indicadores também são utilizados para confirmar a exatidão da decisão. Todos devem tomar suas próprias decisões, dependendo do estilo de negociação.

Volatilidade


Volatilidade das ações é a mudança na variação dos retornos das ações durante um período de tempo. Eles geralmente comparam a volatilidade de uma ação com outra para ter uma idéia de qual pode ter o maior risco ou com um índice de mercado para entender a volatilidade das ações em relação ao mercado. Como regra, quanto maior a volatilidade, mais arriscado é o investimento nessas ações. Note-se que não é constante e muda ao longo do tempo. Isso pode ser visto novamente com a função rolling.std () incluída no pacote pandas. Exemplo de cálculo de alterações de volatilidade:

#   
min_periods = 60 

#  
vol = daily_pct_change.rolling(min_periods).std() * np.sqrt(min_periods) 

#  
vol.plot(figsize=(10, 10))

plt.show()

imagem

Observe que, ao contrário da semana passada, obtive mais dois valores - o Moscow Exchange Index (IMOEX.ME) e o RBC (RBCM.ME). Vou precisar dos valores deles na próxima publicação sobre o método dos mínimos quadrados. E isso é tudo por hoje.

All Articles