Algos
Spread 3 Pontas
Variante de três pernas da estratégia Spread: trabalha três instrumentos como uma única estrutura, executando apenas quando as três pernas podem ser preenchidas no preço combinado-alvo.
Quando usar
- Você está operando uma combinação de três pernas (ex.: butterflies, estruturas em termo, arbitragem de cestas).
- Quer execução tudo-ou-nada na estrutura.
- Precisa de cotação e execução coordenadas em três instrumentos.
Uso no SDK
No SDK existe uma única classe Spread para 2..6 pernas. O
StrategyCode no fio é definido automaticamente como spread3p
quando você passa exatamente três pernas.
from investflex.models.algos import Spread
from investflex.models.common import ExecutionType, Side, Trigger
sp = Spread(
name="3p-demo",
init_time="09:00:00",
end_time="17:00:00",
execution_type=ExecutionType.ENTRY,
trigger=Trigger.SPREAD,
trigger_value=30,
legs=[
dict(symbol="A", side=Side.BUY, quantity=100,
alloc_account="ACC", resting="Y", max_clip_size=100),
dict(symbol="B", side=Side.SELL, quantity=100,
alloc_account="ACC", resting="N", max_clip_size=100),
dict(symbol="C", side=Side.BUY, quantity=100,
alloc_account="ACC", resting="N", max_clip_size=100),
],
)
import { Spread, ExecutionType, Side, Trigger } from "@investflex/sdk";
const sp = new Spread({
name: "3p-demo",
initTime: "09:00:00",
endTime: "17:00:00",
executionType: ExecutionType.ENTRY,
trigger: Trigger.SPREAD,
triggerValue: 30,
legs: [
{
symbol: "A",
side: Side.BUY,
quantity: 100,
allocAccount: "ACC",
resting: "Y",
maxClipSize: 100,
},
{
symbol: "B",
side: Side.SELL,
quantity: 100,
allocAccount: "ACC",
resting: "N",
maxClipSize: 100,
},
{
symbol: "C",
side: Side.BUY,
quantity: 100,
allocAccount: "ACC",
resting: "N",
maxClipSize: 100,
},
],
});
Veja spread.md para a referência completa de parâmetros, comandos de ciclo de vida e notas de comportamento — tudo se aplica de forma idêntica aqui.