Versão 2.20 – 03/01/2020

Principais melhorias

– Nova funcionalidade para atualizar automaticamente o ativo para negociação com a série vigente do mercado futuro. Para que seja feita a atualização automática, o robô precisa ser colocado em um gráfico com a série contínua (com $ ou @ no nome) e o parâmetro “A.12 Ativo para negociacao” deve ficar em branco. No caso de backtests a série contínua é usada normalmente. Esta verificação é feita durante a inicialização dos robôs (contribuição Georges Baladi).

 

Atualização de contratos
Atualização automática de contratos

 

Na inicialização, o robô informará qual ativo será usado para enviar as ordens, com isso pode-se confirmar que o contrato está correto:

 

Mensagem inicialização
Mensagem na inicialização

 

– Incluído alerta de ativo inexistente caso o parâmetro “A.12 Ativo para negociacao” seja preechido com um ativo que não for encontrado na base da corretora.

 

– Incluídos novos parâmetros para definir o número mínimo de filtros suficiente para autorizar a entrada nas operações e também para condições de saída. Para as entradas, o parâmetro “H.02.2 Numero de filtros para condicao de entrada”, se configurado com valor maior que zero, vai definir quantos filtros com condição satisfeita serão necessários simultaneamente para liberar o trade. Por exemplo, supondo que três filtros estejam habilitados para entrada, e o parâmetro H.02.2 esteja com o valor 1, basta um deles dar condições que o trade será liberado (funcionaria como um OU entre os filtros). Caso este parâmetro fique com valor zero, todos os três filtros terão que dar condições simultaneamente (lógica E). O mesmo funcionamento pode ser adotado para a seleção de filtros para condições de saída, onde o número mínimo será controlado pelo parâmetro “H.05.2 Numero de filtros para condicao de saida” (contribuição Leandro Manrokis).

 

Número de filtros para entradas e saídas

 

– Novo filtro baseado no indicador RVI – Relative Vigor Index (contribuição Leandro Manrokis).

 

Filtro RVI
Filtro RVI

 

– Melhorias no RC-EquityControl: Criada opção para monitorar um grupo de robôs, por meio de uma lista de números mágicos. Com isso, EquityControl pode ser configurado para controlar tanto o saldo total da conta como também apenas um grupo de EAs. Neste último caso deve ser nomeado um grupo e os robôs também podem ser configurados para respeitar este limite específico (O limite global da conta sempre estará ativo nos robôs, quando configurados para observar os sinais do EquityControl). Foi incluída também no painel a informação de máxima excursão positiva (MFE) e máxima excursão negativa (MAE) durante o dia para a conta ou grupo de EAs.

 

Configuração de grupo no EquityControl
Configuração de grupo no EquityControl

 

Configuração nos robôs para respeitar limites de grupo
Configuração nos robôs para respeitar limites de grupo

 

– Novo indicador LinhasAgressao, que plota medias calculadas sobre os volumes de agressão de compra e venda e possibilita a comparação entre os mesmos por um período maior de barras.

 

LinhasAgressao
Indicador LinhasAgressao

 

– Novo filtro baseado no indicador LinhasAgressao:

 

Filtro Medias de Agressão
Filtro Medias de Agressão

 

 

Outras melhorias

 

– Novos modos de operação para o filtro OBV para observar a inversão de direção do indicador e cruzamento com a sua média móvel.

 

– Incluída condição para usar preço atual como referência no RC-Bollinger quando a entrada estiver como bandas virando e usar o melhor preço de mercado como referência para entrada.

 

– Adicionada proteção para carregar os dados do ativo para negociação apenas se já estiver conectado ao servidor, caso contrário posterga essa leitura para evitar o uso de dados inválidos para o ativo.

 

– Implementada verificação dos limtes máximos e mínimos dos stops também antes de preparar os triggers para novos trades. Com isso, os stops calculados pela lógica específica do robô (fora da lib padrão) passaram também a ser limitados pelos parâmetros gerais. O mesmo vale para cálculos de stops proporcionais entre si (ex. TP = 3xSL).

 

Solução de problemas

 

– Correção do offset para posicionamento do TP no robô RC-MeanReversal, que estava funcionando de forma invertida para operações de venda.

 

– Correção da condição de saída pelo filtro MA2 que usava indevidamente a seleção para o filtro MA1.

 

– Corrigida função de trailing das ordens de Gradiente Linear, que estavam com comportamento errado nas operações de venda.

 

– Correção de erro na função de ajuste dos preços de entrada pelo spread para ordens a mercado com valor além do preço atual. O valor de entrada passou a ser corrigido apenas se estiver entre os preços bid e ask.

 

– Corrigida a função de recuperação das informações referentes a posições abertas pelo EA encontradas na inicialização, que estava falhando na atualização de variáveis importantes para acompanhamento do trade.

 

– Correção na função de cálculo dos stops do robô RC-PriceAction.

 

– Corrigido erro na função de limitação de stops que causava posicionamento errado dos stops quando usadas ordens a mercado com o ponto de referência sendo o melhor preço de mercado.

 

– Corrigida vinculação de posições resultantes do acréscimo com a função execPositionAdd() com as posições originais para replicação dos valores referência para take profit, e demais controles internos das posições.

 

– Alterada comparação de volume mínimo do ativo com o volume da posição para considerar em contas hedge a soma de todos os volumes de posições abertas, para permitir a execução de realizações parciais.

 

– Corrigido cálculo de TP baseado na máx/mínima das ultimas n barras.