Como distinguir os três tipos de estratégia quantitativa: Tipo A / B / C

Uma árvore de decisão para encaixar a sua ideia num tipo, e quais regras o código bloqueia de verdade.

Última atualização 2026-09
Pontos principais
  • Um símbolo, uma posição → Tipo A; uma cesta de símbolos, cada um com um peso → Tipo C; o resto (screeners, grid, arbitragem, execuções pontuais, bots de alerta) → Tipo B.
  • Os três tipos são a classificação com que o Blave Agent escreve estratégias; na plataforma não existe um campo de tipo. O sistema distingue apenas duas formas, «carteira» e «sinal», e não separa um Tipo B de um Tipo A que ainda não passou por backtest.
  • O Tipo C ainda não suporta alocar capital no portfólio de trading automático; o backtest dele está aí para ser lido e compartilhado.
  • Uma estratégia entra na lista de seleção do trading automático somente com um resultado de backtest não vazio, então o Tipo B nunca está lá.

De que tipo é a minha estratégia?

1

É «um símbolo, um intervalo fixo, uma posição (comprado / vendido / zerado)»? Sim → Tipo A (de sinal).

2

É «uma cesta de símbolos, cada um com um peso, girando e repesando a cada ciclo»? Sim → Tipo C (de portfólio).

3

O resto (screeners, grid, arbitragem, execuções pontuais, bots de alerta) → Tipo B.

Quando A e C se misturam, veja duas coisas valendo ao mesmo tempo: quantos símbolos (um ou vários) e a forma da posição (uma posição simples comprada/vendida/zerada contra um conjunto de pesos). Rotação entre vários símbolos e rebalanceamento de portfólio são Tipo C, não Tipo B.

Item Tipo A de sinal Tipo C de portfólio Tipo B o resto
Símbolos 1 N Sem limite
Forma da posição Uma posição, pode ser fracionária Vetor de pesos, por desenho soma ≤ 1 Sem forma fixa
Template Sim Sim Nenhum, escrito do zero
Backtest O agente sempre roda um antes O agente sempre roda um antes Não roda
Trading automático Suportado Alocar valor ainda não suportado Você escreve a lógica de ordens
Relatório de backtest Completo, com Sortino, Omega e valor-p do MCPT Mais enxuto: sem Sortino / Omega, sem MCPT automático Nenhum

Por que não existe um campo «Tipo B» na plataforma?

Porque ele não existe. Os três tipos são uma classificação na hora de escrever a estratégia, não um estado que o sistema acompanhe.

Do lado da máquina, o tipo vem do que a função de sinal devolve: devolveu uma série, segue o caminho do Tipo A; devolveu uma matriz de pesos, segue o do Tipo C — nenhuma constante de tipo é lida em lugar nenhum. Do lado da plataforma o tipo é deduzido de volta pela forma do resultado do backtest, e o único lugar em que um tipo aparece para fora carrega apenas dois valores: «carteira» e «sinal».

Por isso o sistema não separa um Tipo B de um Tipo A que ainda não passou por backtest. Escolher o tipo errado não é bloqueado nem sinalizado: classificar serve para o agente escolher a forma de código e as checagens certas, não para o sistema acompanhar isso por você.

Tipo A: um símbolo, uma posição

A função de sinal devolve um número a cada candle (a cada período):

Valor devolvido Significado
Positivo (1.0, 0.6…)Comprado; o número é a fração da posição
Negativo (-1.0, -0.6…)Vendido; o número é a fração da posição
0.0Zerar a posição
nanManter a posição atual como está

O sinal é executado na abertura do candle seguinte; a saída por liquidação de futuros é executada no fechamento daquele mesmo candle.

O número não é cortado: 0.5 é meia posição, 2.0 é alavancagem dobrada, e o código calcula assim mesmo. O volatility targeting produz sinais fracionários por conta própria, e o teto de exposição dele é o valor padrão de um parâmetro, não um limite do sistema.

Um Tipo A que já passou por backtest pode entrar no portfólio de trading automático: você aloca um valor em Configuração de trading e a estratégia escreve o estado da posição; o reconciliador soma os alvos de todas as estratégias e ajusta as posições na exchange (veja Portfólio de trading ao vivo). Uma estratégia sem valor alocado não recebe ordem nenhuma.

Tipo C: uma cesta de símbolos, um conjunto de pesos

A função de sinal devolve uma matriz de pesos (o peso-alvo de cada símbolo em cada instante) mais os dados de preço correspondentes. O rebalanceamento pode ser diário, semanal ou mensal e a própria estratégia implementa isso — os dois exemplos prontos (um z-score de compra líquida estrangeira escolhendo entre 100 ações taiwanesas, e um momentum Top-30) rebalanceiam semanalmente.

Os pesos somarem ≤ 1 é um acordo de desenho, e o código não verifica isso. Uma soma acima de 1 não gera erro; ela entra direto no retorno como alavancagem.

Hoje o Tipo C não suporta alocar capital no portfólio de trading automático. A causa raiz é que o caminho não existe: uma estratégia Tipo C não escreve arquivo de estado de posição, o reconciliador não a enxerga, e o capital alocado também não vira ordem. A área de trabalho deixa o campo de valor do Tipo C travado, mas trate o backtest de um Tipo C como algo para ler e compartilhar, não como algo para financiar.

O Tipo C também não tem MCPT automático: esse teste é uma série de preços contra uma série de posições, uma carteira tem várias, e achatá-las em uma equivale a reamostrar o retorno já realizado. A biblioteca de estratégias marca essa checagem como «não aplicável», o que não é o mesmo que reprovada.

Tipo B: todo o resto

O Tipo B não tem template, é escrito do zero e não roda backtest. E uma estratégia só chega à lista de seleção do trading automático com um resultado de backtest não vazio, então o Tipo B nunca aparece lá.

Ele ainda envia ordens — chamando por conta própria as bibliotecas de ordens prontas, no próprio agendamento. O Blave Agent não é um produto de «só sinal, sem executar»: o Tipo A passa pela reconciliação do trading automático e o Tipo B envia as ordens dele mesmo.

O que o código bloqueia e sobre o que ele apenas avisa

Item Comportamento real
Data final do backtest não devolvida para NoneRecusa rodar o backtest
Estratégia de futuros TAIEX sem a máscara de liquidaçãoRecusa rodar o backtest
Função de sinal inexistente, ou sem valor de retornoRecusa rodar o backtest
Taxa definida como 0, ou escrita como expressãoMarca como problema e roda assim mesmo
Um Tipo A de indicador que não declara a série a desenharLembrete, e roda assim mesmo
Pesos do Tipo C somando acima de 1Não verifica; conta direto como alavancagem

As três linhas de baixo são convenções, não portões. O agente lembra você conforme a praxe, mas não há código por trás — é também por isso que as checagens de evitar overfitting acabam dependendo de você decidir fazê-las.

Confusões comuns

O que você acha O que é
Rotação entre vários símbolos é Tipo BDistribuir pesos e rebalancear por ciclo faz disso um Tipo C
Um Tipo C que passou no backtest já pode ir para o trading automáticoO backtest existe para mostrar desempenho; hoje não há caminho para alocar capital
O relatório de backtest traz taxa de acertoNão há campo de taxa de acerto; você mesmo a calcula a partir do detalhe de entradas e saídas trade a trade, e o relatório de backtest de um Tipo C não traz esse detalhe (veja Como ler um backtest)
Se você escolher o tipo errado, o sistema bloqueiaNão acontece: a plataforma não guarda um tipo; escolher errado apenas te dá uma forma de código e checagens que não servem

A seguir

Com o tipo definido, o passo seguinte é ver isso rodando. As estratégias oficiais da Biblioteca de estratégias vêm com backtest real e o período de backtest declarado, de graça para ler; escolher uma e colocá-la para rodar diz qual tipo você quer escrever mais rápido do que terminar esta página.