quantbrasil screening run
Executa screening de indicadores a partir de um ScreenerRequest JSON
Sintaxe
quantbrasil screening run --query-file <path>Esta é uma operação de leitura. Modos de saída: json, human.
Argumentos e opções
| Nome | Tipo | Obrigatório | Descrição | Padrão |
|---|---|---|---|---|
--system <slug> | Opção | Não | Slug da carteira do sistema | — |
--watchlist <id> | Opção | Não | ID da watchlist | — |
--holding <id> | Opção | Não | ID da carteira | — |
--query-file <path> | Opção | Sim | Caminho para um ScreenerRequest JSON completo, ou - para stdin | — |
--limit <limit> | Opção | Não | Sobrescreve o limit de topo do ScreenerRequest | — |
--sort <sort> | Opção | Não | Sobrescreve o sort de topo do ScreenerRequest | — |
--timeframe <timeframe> | Opção | Não | Sobrescreve o timeframe de todos os indicadores da consulta | — |
--offset-shift <candles> | Opção | Não | Soma um deslocamento ao offset de todos os indicadores | — |
--json | Opção | Não | Exibe saída JSON | — |
--compact | Opção | Não | Saída JSON compacta para agentes | — |
Exemplos
quantbrasil screening run --system acoes-mais-liquidas --query-file ./screening.json
quantbrasil screening run --watchlist 93 --query-file ./screening.json --limit 25
quantbrasil screening run --system acoes-mais-liquidas --query-file ./setup-123.json --timeframe H2
quantbrasil screening run --system acoes-mais-liquidas --query-file ./setup-123.json --timeframe H2 --offset-shift 1
cat screening.json | quantbrasil screening run --holding 182 --query-file - --sort tickerSaída (--json)
Estrutura da resposta retornada com --json:
export interface ScreeningRunResponse {
ok: boolean;
summary_markdown: string;
universe: ScreeningUniverseOut;
result: ScreenerResponse;
}
export interface ScreeningUniverseOut {
id: number;
name: string;
kind: "SYSTEM" | "WATCHLIST" | "HOLDING";
slug: string | null;
symbol_count: number;
}
export interface ScreenerResponse {
count: number;
evaluated_count: number | null;
skipped_count: number | null;
skipped: JsonValue[] | null;
results: ScreenerResultItem[];
}
export interface ScreenerResultItem {
ticker: string;
price: number;
indicators: Record<string, IndicatorResult>;
}
export interface IndicatorResult {
value: number;
display_name: string;
unit: string | null;
context: { [key: string]: JsonValue } | null;
}Exemplo de resposta
{
"ok": true,
"summary_markdown": "1 ativo atende aos critérios do screening.",
"universe": {
"id": 1,
"name": "Ações Mais Líquidas",
"kind": "SYSTEM",
"slug": "acoes-mais-liquidas",
"symbol_count": 250
},
"result": {
"count": 1,
"evaluated_count": 250,
"skipped_count": 0,
"skipped": [],
"results": [
{
"ticker": "PETR4",
"price": 37.61,
"indicators": {
"rsi": {
"value": 28.4,
"display_name": "IFR",
"unit": null,
"context": null
}
}
}
]
}
}Saída (--compact)
Estrutura da resposta retornada com --compact:
export interface ScreeningRunCompactOutput {
ok: boolean;
universe: ScreeningRunCompactUniverse;
result: ScreeningRunCompactResult;
}
export interface ScreeningRunCompactUniverse {
slug?: string;
id?: number;
name: string;
symbol_count: number;
}
export interface ScreeningRunCompactResult {
count: number;
evaluated_count?: number;
skipped_count?: number;
skipped?: JsonValue[];
results: ScreeningRunCompactResultRow[];
}
export interface ScreeningRunCompactResultRow {
ticker: string;
price: number;
indicators: Record<string, number>;
}Exemplo de resposta
{
"ok": true,
"universe": {
"slug": "acoes-mais-liquidas",
"name": "Ações Mais Líquidas",
"symbol_count": 250
},
"result": {
"count": 1,
"evaluated_count": 250,
"skipped_count": 0,
"skipped": [],
"results": [
{
"ticker": "PETR4",
"price": 37.61,
"indicators": {
"rsi": 28.4
}
}
]
}
}