
Guia Passo a Passo para Iniciantes
Neste artigo, você aprenderá como criar indicadores técnicos em Python, utilizando bibliotecas como yfinance, pandas e mplfinance. Vamos começar com um exemplo prático: a Média Móvel de 10 Períodos (MM10) aplicada aos dados da PETR4 (Petrobras).
Este guia é voltado para iniciantes e explicará cada etapa em detalhes, desde a instalação das bibliotecas até a visualização do gráfico.
Introdução aos Indicadores Técnicos em Python
Indicadores técnicos são cálculos matemáticos aplicados a preços e volumes de ativos para auxiliar na análise de tendências. Eles podem ser usados para identificar:
- Tendências (alta, baixa ou lateral)
- Momentum (força do movimento)
- Suporte e Resistência
- Sinais de compra/venda
Neste artigo, focaremos na Média Móvel Simples (SMA), um dos indicadores técnicos mais básicos e populares, fique sabendo que a média móvel é uma média atrasada que vive correndo atrás do preço.
Configurando o Ambiente Python
Antes de começar, instale as bibliotecas necessárias:

yfinance: Baixa dados históricos do Yahoo Finance.pandas: Manipula dados em formato tabular (DataFrames).mplfinance: Cria gráficos financeiros (candlesticks, médias móveis, etc.).
Baixando Dados do Mercado com yfinance
Vamos baixar os dados da PETR4 (Petrobras) dos últimos 6 meses:

Explicação dos Parâmetros:
"PETR4.SA": Ticker da Petrobras na B3.period="6mo": Período de 6 meses. Pode ser1d,5d,1mo,1y, etc.interval="1d": Dados diários. Pode ser1m,5m,1h, etc.auto_adjust=True: Ajusta os preços para eventos corporativos (splits, dividendos).
Manipulando Dados com pandas
O yfinance retorna um DataFrame do pandas. Vamos verificar e ajustar os dados:

Por que isso é importante?
- Garantimos que apenas as colunas relevantes sejam usadas.
- Evitamos problemas com MultiIndex (caso o DataFrame tenha estrutura complexa).
Criando a Média Móvel (MM10)
A Média Móvel Simples (SMA) é a média dos últimos n preços de fechamento.

Explicação:
rolling(window=10): Define uma janela de 10 períodos.min_periods=1: Permite calcular mesmo com menos de 10 dados (úteis no início da série)..mean(): Calcula a média.
Plotando o Gráfico com mplfinance
Agora, vamos visualizar os dados:

Resultado:
- Gráfico de velas (candlesticks) com a MM10 em azul.
- Volume na parte inferior.







