Algos
VWAP — Preço Médio Ponderado por Volume
Fatia uma ordem ao longo da curva esperada de volume do dia, de forma que o preço médio de execução acompanhe o preço médio ponderado por volume na janela.
Quando usar
- Você quer que a execução espelhe como o mercado de fato negociou na janela, em vez de ser uniforme no tempo.
- Você tem (ou confia em) um perfil de volume para o ativo.
- Está sendo avaliado contra o VWAP do dia.
Status no SDK. VWAP está no roadmap; o SDK ainda não traz um modelo tipado
VWAP. O envelope abaixo é o canônicoVwapStrategyaceito pelo engine.
Parâmetros
Strategy (comuns — ver 01-common-fields.md)
| Campo wire | Tipo | Obrigatório | Notas |
|---|---|---|---|
Name |
str | sim | Nome de exibição. |
InitTime / EndTime |
HH:MM:SS |
sim | Janela. |
ExpireDate |
YYYYMMDD |
não | Padrão 20380101. |
BasketID |
str | não | Chave de cesta opcional. |
TimeInForce |
0/1/3/4/6/7/A |
não | Padrão 0 (DAY). |
CustomParameters
| Campo wire | Tipo | Obrigatório | Editável | Notas |
|---|---|---|---|---|
LimitByVolume |
Y / N |
sim | sim | Limita clips por % do volume de mercado. |
TargetPercent |
double | não | sim | Obrigatório se LimitByVolume="Y" (% do volume). |
AgressionLevel |
int | não | sim | 0 counter-party, 2 own-side. Ver 02-enums.md. |
PriceLimit |
double | não | sim | Limite duro (teto BUY / piso SELL). |
ConsiderCrossOrders |
Y / N |
não | sim | Conta cruzamentos contra o schedule. |
CurveAverageTime |
int | não | sim | Número de pregões históricos usados na média da curva de volume. |
CurveInterval |
str | não | sim | Granularidade do sub-intervalo da curva (ex.: minutos). |
ExecutionInterval |
str | não | sim | Granularidade do disparo dos filhos. |
ClipSize |
int | não | sim | Override do tamanho máximo do filho. |
BypassFirewall |
Y / N |
não | não | Padrão N. |
InitSuspended |
Y / N |
não | não | Padrão N. |
Perna (única)
LegSymbol, LegSide, LegQuantity, ILegAllocAccount, LegSecurityExchange, LegOrdType, LegMaxClipSize — ver 01-common-fields.md.
Editando um VWAP em execução
Editáveis: LimitByVolume, TargetPercent, AgressionLevel,
PriceLimit, ConsiderCrossOrders, CurveAverageTime,
CurveInterval, ExecutionInterval, ClipSize.
Comandos de lifecycle
cancel, suspend, resume. Ver
04-edit-and-commands.md.
Notas de comportamento
- A curva de volume é construída a partir das últimas
CurveAverageTimesessões; valores menores acompanham mudanças recentes de regime mais de perto, mas são mais ruidosos. - Com
LimitByVolume="Y"o algo prefere sub-executar em vez de ultrapassar o cap de participação quando há pouca liquidez. - Veja vwaptc.md para o mesmo algo com garantia de hora de término.