Documentação1.0 (latest)
PáginasPredefinições de execução (.qcs) · 17 / 29

Predefinições de execução (.qcs)

Salve e recarregue as configurações das caixas de execução como arquivos JSON com a extensão .qcs na sua pasta de espaço de trabalho do QuantCraft. Use isso para reaproveitar símbolos, intervalos de tempo, parâmetros de entrada e outras opções entre sessões sem redigitá-los.


Onde fica na interface

Cada caixa mostra Load e Save na parte superior do corpo da caixa (logo abaixo do título e da descrição):

CaixaComo abrir
Run backtestIDE do QuantCraft → Test → Run backtest
Bulk forward new runAutoTrading ou QuantCloud → iniciar um novo trabalho bulk forward
Chart forward testTrade → anexar um algoritmo .qcraft.json → abrir os parâmetros do algoritmo

Pré-requisitos

  1. Aplicativo para desktop — Salvar/carregar usa caixas de diálogo de arquivo nativas (não disponíveis na pré-visualização somente no navegador).
  2. Pasta de espaço de trabalho — Definida em Files sidebar → Workspace Folder do QuantCraft. As caixas de diálogo usam esse diretório por padrão.

Se nenhum espaço de trabalho estiver definido, o aplicativo pede que você escolha um primeiro.


Formato do arquivo

Os arquivos são JSON em UTF-8. Estrutura de nível superior:

{ "format": "quantcraft-run-config-v1", "savedFrom": "backtest", "savedAt": "2026-06-09T12:00:00.000Z", "settings": { } }
CampoSignificado
formatDeve ser quantcraft-run-config-v1.
savedFromMetadado: backtest, bulk_forward ou chart_forward (qual caixa salvou o arquivo).
savedAtCarimbo de data e hora ISO de quando o arquivo foi gravado.
settingsObjeto plano com as opções de execução (veja a tabela abaixo). Todas as chaves são opcionais.

O Save grava apenas os campos que se aplicam à caixa atual. O Load sempre usa as regras da caixa de destino e ignora as chaves que não se aplicam.

Nomes de arquivo sugeridos por padrão

CaixaNome padrão
Run backtestbacktest-config.qcs
Bulk forwardbulk-forward-config.qcs
Chart forward testchart-forward-config.qcs

Ao salvar, você pode escolher qualquer nome que termine em .qcs.


Campos de configuração por caixa

ChaveBacktestBulk forwardChart forward
symbols, assetType, symbolPastesim——
symbolSource ("manual" / "screener")sim——
screenerSource, screenerPresetId, screenerScriptId, screenerSortColumn, screenerSortDirection, screenerRankDirection, screenerLimit, screenerIntervalDays, screenerIncludeOpenPositionssimsim—
screenerRefreshTime—sim—
symbolPaste (bulk: tickers colados)—sim—
startingBalance, startDate, endDate, warmupBarssim——
ohlcvSourcesim——
timeframeAlpaca, timeframeB2, minBarssim——
secondaryTimeframessimsimsim
includeFundamentals, fundamentalsPickerValues, fundamentalsExtraPathssimsim*sim
includeFactorssimsimsim
includeCalendar, applySplits, applyDividends, dividendDatePolicysim——
inputParamssimsimsim
optimize, optimizeMode, geneticPopulationSize, geneticGenerations, geneticElitism, geneticCrossoverRate, geneticMutationRate, geneticFitnessMetric, geneticSeedsim——
slPct, slDollars, tpPct, tpDollars, riskPctPerTrade, riskFixedPerTradesim†——
commissionModel, commissionCost, commissionMinTradeCostsim——
slippageModel, slippageVolumeLimit, slippagePriceImpact, slippageSpreadsim——
algoId—sim—
targetScope, selectedStocks, selectedCrypto—sim—
periodMinutes, timeframeUi—sim—
tickMode—sim—
timerIntervalMs—simsim

* O bulk salva/aplica os valores do seletor de dados fundamentalistas quando presentes; fundamentalsExtraPaths é principalmente um campo de backtest.
† Salvo/aplicado quando presente nos auxiliares de formulário/carga; a caixa Run backtest pode não expor as entradas de SL/TP/risco na interface.

ohlcvSource: "alpaca" ou "b2" (feed de preços do QuantCraft) para backtest.

tickMode: Somente bulk — "timer" (ciclo do temporizador) ou "tick" (fluxo de ticks ao vivo). A caixa o rotula como Execution trigger.

includeFactors: Quando true, as execuções anexam dados globais de fatores de Fama-French. Carregá-lo na caixa de backtest ou bulk forward o desativa (junto com includeFundamentals) se você não tiver acesso Premium / a dados gratuitos; a caixa chart forward o aplica como foi salvo. As estratégias leem fama_french.qc; as rows mensais são um dicionário YYYYMM — veja Fatores de Fama-French.

includeCalendar (backtest): mesma restrição Premium ao carregar. dividendDatePolicy é "best_available" (padrão — as datas ex-dividendo estimadas são creditadas), "exact_only" ou "off". Não há controle na caixa para isso, então um arquivo .qcs é a única forma de alterá-lo. Veja Dados de calendário.

timeframeB2 (backtest): os valores carregados são limitados a diário / semanal / mensal quando você não está no Premium.

secondaryTimeframes: Lista de tamanhos de barra extras para rt.get_bar(Timeframe.X, shift) (por exemplo, ["1Hour", "1D"]). Omitida dos arquivos salvos quando vazia. Ao carregar no bulk forward, uma entrada igual ao intervalo de tempo principal restaurado é descartada; as caixas backtest e chart-forward mantêm a lista como foi salva. Veja Dados OHLCV e de barras.

Chaves de comissão / slippage (commissionModel, commissionCost, commissionMinTradeCost, slippageModel, slippageVolumeLimit, slippagePriceImpact, slippageSpread): salvas somente a partir do backtest. Veja Modelo de conta para o significado dos modelos.

Estrutura de inputParams

Objeto indexado pelo nome do parâmetro do script. Cada entrada:

"LOOKBACK": { "type": "int", "value": "20", "optStep": "5", "optMax": "40" }
  • optStep e optMax são salvos somente a partir do backtest (grade de otimização). As caixas forward os removem ao carregar.
  • Somente os nomes que existem no script atualmente carregado são aplicados; os demais nomes do arquivo são ignorados.

Veja Parâmetros de entrada para saber como params.NAME é descoberto no código da estratégia.


Carregamento entre caixas

Você pode carregar em uma caixa um arquivo .qcs salvo a partir de outra. O aplicativo aplica apenas os campos compatíveis e ignora silenciosamente o restante.

De → ParaO que é transferido
Backtest → bulk forwardsymbols + assetType → escopo de destino e seleções de ações/cripto; timeframeAlpaca ou B2 d/w → timeframeUi; secondaryTimeframes; tickMode se presente; campos de fundamentalistas/fatores; inputParams; timerIntervalMs se presente
Backtest → chart forwardinputParams, campos de fundamentalistas, includeFactors, secondaryTimeframes, timerIntervalMs; datas, saldo e campos de otimização são ignorados
Bulk forward → backtestselectedStocks / selectedCrypto → symbols; timeframeUi → timeframeAlpaca, ou B2 timeframeB2 quando o ohlcvSource salvo (ou, senão, o feed de preços atual da caixa) é B2; campos de fundamentalistas / fatores; secondaryTimeframes; campos de screener; inputParams
Qualquer → qualquerChaves desconhecidas ou não aplicáveis são ignoradas sem erro

Mapeamento de intervalos de tempo

OrigemMapeia para
timeframeUi 1D / 1WeekBacktest timeframeAlpaca, ou B2 timeframeB2 d / w quando a fonte de dados é B2
Backtest timeframeB2 d / wBulk timeframeUi 1D / 1Week
Qualquer outro timeframeB2 de backtest (m mensal, m5, h1, 4h, …)Sem equivalente no bulk — ignorado no carregamento cruzado

Símbolos e alvos do bulk

  • Backtest → bulk: os symbols são classificados em selectedStocks ou selectedCrypto quando possível; o escopo de destino passa a ser Selected.
  • Bulk → backtest: as ações e criptomoedas selecionadas são mescladas no array symbols; assetType é inferido da seleção.

Modo de edição do bulk forward

Ao editar uma execução bulk existente, o Load ainda aplica alvos, período, intervalo de tempo, temporizador, modo de tick e params do script. algoId não é alterado (o algoritmo é fixo para aquela execução).


Artefatos de espaço de trabalho relacionados

ExtensãoFinalidade
.pyArquivos-fonte de estratégia (espelho do espaço de trabalho)
.qcraft.jsonPacote executável compilado para Trade / execuções forward
.qcsPredefinições salvas das caixas de execução (esta página)
7 min de leituraSugerir uma edição ↗
Predefinições de execução (.qcs) — Documentação (1.0 (latest)) | QuantCraft