Comece agoraComece grátis

Criação de variáveis a partir do volume

Vamos usar modelos não lineares para fazer previsões mais precisas. Com modelos lineares, as variáveis precisam ser linearmente correlacionadas ao alvo. Outros modelos de Machine Learning podem combinar variáveis de formas não lineares. Por exemplo: e se o preço subir quando a média móvel do preço estiver subindo e a média móvel do volume estiver caindo? A única maneira de capturar essas interações é multiplicar as variáveis ou usar um algoritmo de Machine Learning que lide com não linearidade (por exemplo, random forests).

Para incorporar mais informações que possam interagir com outras variáveis, podemos adicionar variáveis com correlação fraca. Primeiro, vamos adicionar dados de volume, que temos em lng_df na coluna Adj_Volume.

Antes de começar, lembre-se de que, para funções do TA-Lib (como SMA()), você precisa fornecer arrays do Numpy, não objetos do pandas. Você pode usar o atributo .values de uma Series ou DataFrame do pandas para retorná-los como um array do Numpy.

Este exercicio faz parte do curso

Machine Learning para Finanças em Python

Ver curso

Instruções do exercicio

  • Crie a variação percentual de 1 dia do volume (use pct_change() do pandas) e atribua-a à coluna Adj_Volume_1d_change em lng_df.
  • Crie uma média móvel de 5 dias da variação percentual de 1 dia do volume e atribua-a à coluna Adj_Volume_1d_change_SMA em lng_df.
  • Plote histogramas dessas duas novas variáveis que criamos usando a lista new_features.

exercicio interativo prático

Tente este exercicio completando este código de exemplo.

# Create 2 new volume features, 1-day % change and 5-day SMA of the % change
new_features = ['Adj_Volume_1d_change', 'Adj_Volume_1d_change_SMA']
feature_names.extend(new_features)
lng_df[____] = lng_df['Adj_Volume'].____
lng_df[____] = talib.SMA(____[____].____,
                        timeperiod=____)

# Plot histogram of volume % change data
lng_df[____].plot(kind='hist', sharex=False, bins=50)
plt.show()
Editar e Executar Código