Introdução: Humanos mentem, Números não.
Você já ouviu algum “guru” dizer que este ou aquele setup é infalível? Que “basta comprar quando a média cruzar”?
No trading discricionário (manual), nós mentimos para nós mesmos. Ignoramos os stops, lembramos apenas dos gains e operamos baseados na emoção do momento. Na Academia do Mercado, nós não “achamos” nada. Nós testamos tudo.
Hoje, você vai transformar aquele código visual do post anterior em um Robô de Execução. Vamos criar um algoritmo que compra e vende automaticamente baseado em uma Média Móvel, e vamos descobrir se essa estratégia realmente dá dinheiro ou se é apenas lenda urbana.
Prepare-se. Vamos ligar o Detector de Mentiras do Profit Chart.
A Lógica: Simples, mas Poderosa
Para este primeiro backtest, usaremos a estratégia mais clássica da análise técnica: Seguimento de Tendência (Trend Following).
- A Tese: Se o preço fecha acima da Média Móvel de 9 períodos, a tendência é de alta -> COMPRA.
- A Tese: Se o preço fecha abaixo da Média Móvel de 9 períodos, a tendência é de baixa -> VENDA.
Parece simples demais? Grandes fortunas foram construídas apenas seguindo tendências. O segredo não é a complexidade, é a disciplina de execução. E robôs têm disciplina infinita.
O Código (NTSL)
Copie o código abaixo e cole no seu Editor de Estratégias (mesmo processo do post anterior).
Atenção: Observe os novos comandos
BuyAtMarket(Comprar a Mercado) eSellShortAtMarket(Vender a Mercado). São eles que transformam um indicador em um robô.
(Use o botão de cópia no canto direito do bloco abaixo 👇)
Input
Periodo(9);
Var
MinhaMedia : Float;
Begin
// 1. Calculo da Media Movel Exponencial
MinhaMedia := MediaExp(Periodo, Close);
// 2. Plotagem (Visual)
Plot(MinhaMedia);
SetPlotColor(1, clAqua); // Corrigido para clAqua (Ciano)
SetPlotWidth(1, 2);
// 3. Estrategia de Execucao
// Se fechar acima da media, Compra
if (Close > MinhaMedia) then
BuyAtMarket;
// Se fechar abaixo da media, Vende
if (Close < MinhaMedia) then
SellShortAtMarket;
End;Como Rodar o Backtest (O Momento da Verdade)
Agora que o código está compilado, não vamos colocar dinheiro real ainda. Vamos simular o passado.
No Editor de Estratégias, clique no botão “Backtest”.

Escolha o ativo: WDO (Mini Dólar) ou WIN (Mini Índice).

Dê duplo clique no ativo WIN.

Escolha o tempo gráfico: Tente 5 minutos ou 15 minutos.

Clique em Executar.



Analisando o Resultado
O Profit vai gerar um relatório completo. Não olhe apenas para o “Lucro Líquido”. Como um analista Quant, você deve olhar para:
- Fator de Lucro (Profit Factor): Se for maior que 1.00, a estratégia é lucrativa. Se for menor, ela perde dinheiro.
- Declínio Máximo: O quanto o robô “entregou” de lucro ou ficou negativo no pior momento.
- Percentual de Operações Vencedoras: Robôs de tendência costumam errar muito (40% de acerto), mas quando acertam, ganham muito (gains longos).
Dever de Casa
O código acima é “bruto”. Ele fica virando a mão o tempo todo (compra/vende) a cada candle que cruza a média.
O desafio para você: O que acontece se você mudar o Periodo(9) para Periodo(20) ou Periodo(50)? O robô ganha mais ou menos dinheiro? Altere o valor em Parâmetros do lado esquerdo da tela.
Na próxima aula, vamos aprender a filtrar esses sinais para não operar em momentos de consolidação (o “moedor de carne” de robôs).
Entre no nosso Grupo VIP do Telegram para discutir os resultados deste Backtest.

