Referência da API
Esta página lista os enums e modelos compartilhados expostos pelo pacote
Python investflex. Campos de estratégia com valores discretos têm enums
tipados para que as constantes apareçam no autocomplete da IDE. O SDK
serializa cada enum no formato esperado pela API: string para membros
(str, Enum) e inteiro para IntEnum.
from investflex.models.common import (
Side, TimeInForce, OrdType, SecurityExchange,
AgressionLevel, ExecStrategy, ExecutionType, ExecutionLimit,
Trigger, CompensateExec, BookDepth, DeltaType, ExecutionMode,
TriggerType, TriggerEntryType, StopTypeOCO, SniperType,
RetroalimentType, SelectStopByPrice, ReversionType, CustomOrdType,
ExitWhen, CandleTimeFrame, CandleUpdate, EntranceMoment,
PriceUnit, TargetPriceMode, RelativeType, RelativeDirection,
AlgoStatus,
)
Enums
Side
Lado da ordem. Tipo do membro: str.
| Membro | Valor | Significado |
|---|---|---|
BUY |
"1" |
Compra |
SELL |
"2" |
Venda |
TimeInForce
Validade no nível da estratégia (TimeInForce) e da perna (LegTimeInForce).
Tipo do membro: str.
| Membro | Valor | Significado |
|---|---|---|
DAY |
"0" |
Ordem do dia |
GTC |
"1" |
Válida até cancelar |
IOC |
"3" |
Executa imediatamente ou cancela |
FOK |
"4" |
Executa tudo ou cancela |
GTD |
"6" |
Válida até a data |
AT_CLOSE |
"7" |
No fechamento |
GFA |
"A" |
Válida para leilão |
OrdType
Tipo de ordem. O campo enviado é LegOrdType, mantido como alias compatível
deste enum. Tipo do membro: str.
| Membro | Valor | Significado |
|---|---|---|
MARKET |
"1" |
Mercado |
LIMIT |
"2" |
Limitada; exige price_limit |
STOP |
"3" |
Stop |
STOP_LIMIT |
"4" |
Stop limitada |
MARKET_WITH_LEFTOVER |
"K" |
Mercado com saldo remanescente postado como limite |
SecurityExchange
Enum de conveniência para LegSecurityExchange. O campo aceita
SecurityExchange | str, então também é possível passar uma string direta.
| Membro | Valor | Significado |
|---|---|---|
XBSP |
"XBSP" |
Segmento Bovespa (ações, ETFs, opções) |
XBMF |
"XBMF" |
Segmento BM&F (futuros, câmbio, derivativos) |
BVMF |
"BVMF" |
Código combinado da B3 |
Enums de execução e gatilho
| Enum | Uso principal |
|---|---|
AgressionLevel |
Agressividade de TWAP / POV (COUNTER_PARTY, OWN_SIDE) |
ExecStrategy |
Forma de execução (AGGRESSIVE, RESTING, MIT) |
ExecutionType |
Se o gatilho representa entrada ou gain/loss |
ExecutionLimit |
Tipo de execução quando o gatilho dispara em estratégias da família Skew |
Trigger |
Modo de cálculo de gatilho; cada estratégia aceita um subconjunto |
CompensateExec |
Compensação de execuções parciais entre pernas |
BookDepth |
Profundidade do book usada no cálculo do gatilho (L1 a L5) |
DeltaType / ExecutionMode |
Configuração de delta e modo de execução em estratégias de volatilidade |
TriggerType / TriggerEntryType |
Referência e unidade do gatilho de entrada |
StopTypeOCO |
Tipo de stop para OCO / OCO2 / FlexOrder |
SniperType |
Modo passivo, ativo ou ambos para ArbIntFrac |
RetroalimentType |
Fonte de realimentação do gradiente dinâmico (grddin) |
SelectStopByPrice |
Seleção de stop por preço no gradiente |
ReversionType |
Comportamento de reversão do FlexOrder |
CustomOrdType |
Tipo de entrada do FlexOrder: mercado, start, stop, limite ou leilão |
ExitWhen |
Condição de saída do VWAP-TC |
CandleTimeFrame / CandleUpdate |
Janela e atualização de candles em estratégias de gap |
EntranceMoment |
Momento permitido para entrada em gap |
PriceUnit, TargetPriceMode, RelativeType, RelativeDirection |
Unidades e referências de preço relativo |
AlgoStatus
Status do ciclo de vida da estratégia. A propriedade is_terminal retorna
True para FILLED, CANCELED, EXPIRED, DONE e REJECTED.
| Membro | Valor |
|---|---|
NEW |
0 |
PARTIALLY_FILLED |
1 |
FILLED |
2 |
RUNNING |
3 |
CANCELED |
4 |
SUSPENDED |
5 |
EXPIRED |
6 |
DONE |
7 |
REJECTED |
8 |
REPLACED |
9 |
PENDING_NEW |
10 |
Flags Y/N
Alguns campos são booleanos representados como strings na API
("Y" / "N"). O SDK mantém esses campos como literais:
"Y"— verdadeiro / habilitado"N"— falso / desabilitado
Exemplos: init_suspended, bypass_firewall, using_financial_volume,
limit_by_volume, consider_cross_orders, simulate_sniper_on_resting,
allow_partial_exit, use_auction_open_price, use_level3,
use_preservation, use_retroaliment, use_start_when_cross,
send_stop_loss_on_end, zerar_stop_loss, to_market_trigger_value_enabled
e use_stop_gain_global_finance.
Modelos
Os tipos abaixo são objetos Python tipados que o SDK retorna nos serviços
REST e de streaming. Todos são modelos Pydantic v2: os campos podem ser
acessados como atributos e .model_dump() produz um dicionário seguro para
JSON.
AlgoHandle
Retornado por client.algos.create(...). É uma referência leve para uma
estratégia enviada.
| Campo | Tipo | Significado |
|---|---|---|
clord_id |
str |
ID cliente da ordem/estratégia; use para editar, consultar ou cancelar |
strategy_code |
str |
Código da estratégia, por exemplo "twap" |
status |
AlgoStatus |
Status inicial, normalmente PENDING_NEW |
raw |
dict | None |
Resposta bruta do servidor |
StrategySnapshot
Retornado por client.algos.get(...) e emitido por client.algos.stream().
Representa o estado atual de uma estratégia.
| Campo | Tipo | Significado |
|---|---|---|
clord_id |
str |
ID cliente |
strategy_code |
str |
Código da estratégia |
status |
AlgoStatus |
Estado atual do ciclo de vida |
output |
OutputParameters |
Quantidade executada, preço médio, P/L etc. |
params |
dict |
Eco dos CustomParameters |
legs |
list[dict] |
Eco das StrategyLegs |
Veja Snapshots e Streaming para detalhes do payload completo.
Modelos de market data (investflex.models.marketdata)
| Tipo | Usado por | Campos principais |
|---|---|---|
Trade |
marketdata.last_trade(), marketdata.trades(), stream de negócios |
symbol, price, qty, side, trade_id, timestamp |
Book |
marketdata.last_book(), stream de book |
symbol, bids, asks, timestamp |
BookLevel |
dentro de Book |
price, qty, orders |
Definition |
marketdata.definitions(), marketdata.security_list() |
symbol, security_id, exchange, currency, tick_size, lot_size, description |
Position
Retornado por client.positions.list(), .get(account) e
.consolidated(...).
| Campo | Tipo | Significado |
|---|---|---|
symbol |
str |
Símbolo do instrumento |
account |
str |
Conta de corretagem |
asset |
str |
Ativo raiz |
security_type |
str |
EQUITY, OPT, FUT, ... |
buy_qtty / sell_qtty |
int |
Quantidades comprada e vendida |
net_qtty |
int |
Quantidade líquida; positiva = comprado |
avg_buy_px / avg_sell_px |
float |
Preços médios |
market_price |
float | None |
Última cotação, quando calculada |
mark_to_market |
float | None |
MtM calculado pelo servidor, quando disponível |
Position.pnl(market_price) calcula o resultado a mercado no cliente usando
um preço de referência informado pelo chamador.
Helpers
new_clord_id() -> str
Gera um ID cliente seguro para reenvio (uuid4 hexadecimal, 32 caracteres).
O SDK chama esse helper automaticamente em client.algos.create(...) quando
você não informa clord_id= explicitamente.