Regra para operar dois robôs com a mesma margem

 
Olá comunidade,

Eu estive pensando em uma forma de operar dois robôs em ativos diferente utilizando uma mesma margem de garantia pequena.

A ideia é colocar um limitador para que um robô só abra ordem se o outro não estiver em operação.

Cada robô necessitaria - normalmente - uma margem de (por exemplo) R$ 1.000,00. Então os dois robôs juntos precisariam de R$ 2.000,00 de margem para operar simulantaneamente para não tomar stop precocemente.

O que sugiro aqui é que caso um robô já esteja operando, mesmo que o outro tenha oportunidades de entrada, ele não irá abrir ordem a não ser que outro saia da operação. Assim, seria possível rodar os dois robôs simultaneamente utilizando 1.000 de margem, ao invés de 2.000

Deu pra entender? Faz sentido pra vocês.

Se sim, alguém tem alguma ideia de como poderíamos criar esse "limitador"?

 
Thiago Duarte:
Olá comunidade,

Eu estive pensando em uma forma de operar dois robôs em ativos diferente utilizando uma mesma margem de garantia pequena.

A ideia é colocar um limitador para que um robô só abra ordem se o outro não estiver em operação.

Cada robô necessitaria - normalmente - uma margem de (por exemplo) R$ 1.000,00. Então os dois robôs juntos precisariam de R$ 2.000,00 de margem para operar simulantaneamente para não tomar stop precocemente.

O que sugiro aqui é que caso um robô já esteja operando, mesmo que o outro tenha oportunidades de entrada, ele não irá abrir ordem a não ser que outro saia da operação. Assim, seria possível rodar os dois robôs simultaneamente utilizando 1.000 de margem, ao invés de 2.000

Deu pra entender? Faz sentido pra vocês.

Se sim, alguém tem alguma ideia de como poderíamos criar esse "limitador"?

Sim, deu para entender. Entretanto, você está pensando que a margem é a mesma para todos os ativos e isso não é verdade. Tirando isso, esse limitador tu poderia fazer pelo mesmo número mágico, pelo mesmo comentário ou pelo ativo (indicaria todos na configuração que seriam pra ser observadora e se houver posição não faz nada).

 

Thiago, dá uma olhada em "variável global". Acredito que dê para fazer o que você quer e muito mais.

Grande abraço!

 

Acho que um jeito mais simples é verificar o Magic Number do outro robô. Assim o robô só vai operar se não houver nenhuma operação aberta no Magic Number do outro robô.

EDIT: Isso considerando que ambos robôs estão operando no mesmo ativo, senão você também tem q filtrar por ativo.

Razão: