6.1. Spread Maker
Além dos parâmetros obrigatórios e comuns para todas as estratégias (Tabela 2), descritos na seção “Estratégias Disponíveis”, a SpreadMaker poderá ter ou não, de acordo com a sua obrigatoriedade, os seguintes parâmetros:
Nome do campo | Obrigatoriedade | Editável | Tipo | Observação |
Method |
Y |
N |
string | Aceita valores: 0 - Diferença Ponderada, 1 - Razão, 3 - Diferença |
Target |
Y |
Y |
float | Coeficiente spread alvo, calculado a partir do preço das pernas: Compra – Venda (Diferença), Compra / Venda (Razão) |
SellOrderMaxProclaimedQty | Y | Y | int | Quantidade apregoada venda |
SellOrderMinProclaimedQty | Y | Y | int | Quantidade mínima para venda |
NumSecsToSolveMismatchedLeg |
N |
Y |
int | Tempo em segundos para a resolução automática de despernamento |
RevertTol |
N |
Y |
float | Permite a entrada de uma diferença ou razão para a ordem de reversão/saída/ganho da operação. |
TolStop |
N |
Y |
float | Define um coeficiente de parada. Se o coeficiente do mercado alcançar um valor igual ou pior que este valor, o robô automaticamente substituíra o ‘Coeficiente Selecionado’ pelo valor configurado no campo ‘TolLoss’ |
TolLoss |
Condicionado ao TolStop |
Y |
float | Novo coeficiente atribuído se a condição do TolStop for cumprida |
StrategyLegs | Y | Ver tabela | object | Duas, 1 perna de compra e outra de venda |
EndDate |
N |
Y |
date | Define a data final até quando a ordem deverá ficar ativa (VAC) |
SpreadCloseIncrement |
Condicionado ao NumSecsToSolveMismatchedLeg |
Y |
double | Quando definido o NumSecsToSolveMismatchedLeg deverá ser enviado o valor que será incrementado ao target para enviar uma nova ordem |
IgnoreTunnel | N | Y | bool | Se ativo, permitirá que o robô tente apregoar fora do túnel de leilão da bolsa |
RespectBookDepth | N | Y | bool | Define se o robô deve ser estrito quanto à profundidade do book |
UseLargerLotMargin |
N |
Y |
bool | Em operações com tamanhos diferentes de lotes, é recomendado apregoar sempre na perna com lote menor. Caso se deseje apregoar nas outras pernas, o ideal é deixar uma margem de segurança para que, caso apenas parte desse lote seja tomada, seja possível pegar o resto do lote a mercado. Com esta opção ligada, esta margem é mantida (está é a opção padrão). |
CompensateSigma |
N |
Y |
bool | Indica que o Robo deve compensar nas próximas operações o coeficiente considerado para o Spread sempre que uma operação falhar e executar pior do que pedido. Já que o coeficiente de Spread é alterado, este pode deixar de executar no valor pedido. (Opcional) |
Propriedades das StrategyLegs | ||||
Symbol | Y | N | string | Papel negociado |
Side | Y | N | string | Compra ou venda |
OrderQty | Y | Y | int | Quantidade negociada |
IsFinancialQty |
N |
Y |
bool | Especifica se a quantidade é financeira ou não, valor defaul = false |
BookDepth |
N |
Y |
int | Profundidade máxima a apregoar no book (apregoado por preços). Aceita valores: -1 : Pedra/espera, Só lançará a perna em questão quando a confirmação da execução das outras pernas for recebida. 0 : Pedra, Desliga a apregoação naquela perna. 1 : Apregoa até a profundidade 1 do book |
IgnoreQty |
Y |
Y |
int | Quantidade a ser ignorada no book no momento de pegar o preço que está na pedra, no caso de uma apregoação. |
JSON de envio:
{
"TargetStrategy": "1002",
"Method": "1",
"Target":"1.06",
"StrategyLegs":
[
{
"Symbol": "PETR4",
"Side": "V",
"OrderQty": "1000",
"IsFinancialQty": false,
"BookDepth": "1",
"IgnoreQty": "300"
},
{
"Symbol": "PETR3",
"Side": "C",
"OrderQty": "1000",
"IsFinancialQty": false,
"BookDepth": "1",
"IgnoreQty": "200"
}
],
"SellOrderMaxProclaimedQty":"100",
"SellOrderMinProclaimedQty":"100",
"NumSecsToSolveMismatchedLeg":"6",
"SpreadCloseIncrement":"0.1",
"IgnoreTradesOutOfPriceLimit":false,
"ConsiderCrossTrades":false,
"BVSPAccount":"506",
"BMFAccount":"506",
"AccountNumber":"506",
"StartTime":"2025-06-05T16:30:00",
"EndTime":"2025-06-05T17:10:00"
}
Plug and Trade Sistemas