Preciso de um expert advisor que utiliza preço de fechamento do dia anterior e preço de abertura do dia atual para a tomada de posição

Termos de Referência

Versão: MT5

Mercado: B3 

IMPORTANTE: O Código fonte do EA deve ser fornecido junto com o EA.

Boa noite,

Preciso de um robô que execute ordens assim que o mercado sai do leilão. O funcionamento é muito simples, se o papel abrir com uma variação de x,xx % positiva tenho um sinal de venda, o robô vende a mercado na abertura e meu alvo é y,yy% do tamanho do gap, ou seja y,yy % de x,xx %. Vice-versa, se temos uma abertura em um preço mais baixo que o de fechamento do dia anterior, então iremos entrar comprados. Vamos a um exemplo que acredito que ficará mais compreensível:

Suponhamos que o robô iria operar no dia de hoje (29/10/2019):

Capital disponível: R$ 100.000,00


TICKER: PETR4

Preço de fechamento do dia anterior (28/10/2019): R$ 29.60

Preço de abertura do dia de operação (29/10/2019): R$ 29.40

GAP Abertura = 29.40/29.60 = -0.676%


Configuração do robô: 

1- Tamanho do gap: >= R$ 0,10 (quero que seja possível colocar também valor %, no caso seria >= 0.10/29,60 = 0.338%)

2- Alvo da operação: 1,00 * GAP (sempre em relação ao tamanho do gap, neste exemplo seria buscar R$ 0.20 ou seja, 0.676%)

3- Tamanho da mão: 20% do capital (20.000,00)


Operação esperada:

Já que o GAP é de baixa, ou seja, o preço de abertura do dia de hoje é menor que o preço de fechamento do dia de ontem o robô deverá entrar comprado.
Portanto o robô abre uma posição a mercado no momento em que a ação PETR4 sair do leilão. Comprando R$ 20000,00/R$29,60 = 675, arredondando para baixo, o robô entraria comprado em 600 açoes de PETR4 a um preço de R$29,40.

Imediatamente o robô já enviaria a ordem Take Profit, ou seja, mirando 1,00*GAP = 1,00*R$ 0,20 = 0,20. Sendo assim, colocaria uma ordem de venda de 600 ações a um preço de R$ 29,60.

Se a ordem não for executada até 16:40, sair da posição a mercado. Se a ordem for executada, porém apenas paricalmente (exemplo: vendeu 500 ações apenas) o robô deverá executar uma ordem a mercado saindo do restante da posição daquele papel.

O robô deve ser capaz de fazer isto em até 5 papéis diferentes sem que influenciem os comportamentos mutuamente. Ou seja, cada papel opera independentemente. 
O robô deve ser capaz de não ser influenciado caso uma posição seja aberta em outro terminal do MT5 na mesma conta, por exemplo, se eu abrir uma posição em PETR4 pelo celular enquanto o terminal do meu computador executa o robô, a minha posição pelo celular e pelo computador deverão ser independentes.

Além disso necessito de um botão de pânico, que quando pressionado, verifica as posições em cada um dos papéis escolhidos para se operar e executa uma ordem de saída das posições (zeragem de pânico).

Listo agora o conteúdo do painel de controle:

Botão Pânico -> Verifica as posições abertas e zera todas elas.

Botão de seleção de papéis -> Até 5 TICKERS digitando o código de negociação e adicionando numa lista que é mostrada no menu ao lado, exemplo: PETR3, GGBR4, VALE3, ABEV3, EMBR3, etc...

Tela de STATUS: Mostra todas as posições abertas pelo robô, seu atual GAIN ou LOSS e a distância para o alvo.

Tela de configurações contendo:

O tamanho mínimo da diferença entre o preço de abertura do dia atual e o preço de fechamento do dia anterior para que o robô opere naquele TICKER. (Sendo possível escolher entre diferença % ou diferença absoluta em R$ e sendo possível escolher o valor 0,00, ou seja, entrar em qualquer tamanho de gap e no caso de não haver diferença entre os preços o robô deverá entrar comprado, buscando um alvo determinado para cada papel)

Alvo da operação: qual será o preço que o papel enviará a ordem take profit (sempre em relação à diferença de preço observada no dia em relação ao preço de fechamento do dia anterior)

Tamanho da mão para cada um dos papéis: sempre em relação ao capital disponível.


Se possível desejo que seja possível fazer um backtest desta estratégia selecionando um papel específico e configurando o robô.


Acredito que dá para mensurar o tamanho do trabalho com esta explicação. Qualquer dúvida estou à disposição.

Respondido

1
Desenvolvedor 1
Classificação
(2375)
Projetos
2983
65%
Arbitragem
76
47% / 14%
Expirado
340
11%
Trabalhando
2
Desenvolvedor 2
Classificação
(11)
Projetos
17
59%
Arbitragem
2
0% / 100%
Expirado
2
12%
Livre
3
Desenvolvedor 3
Classificação
(250)
Projetos
400
38%
Arbitragem
82
41% / 20%
Expirado
69
17%
Carregado
4
Desenvolvedor 4
Classificação
Projetos
0
0%
Arbitragem
0
Expirado
0
Livre
5
Desenvolvedor 5
Classificação
(466)
Projetos
494
52%
Arbitragem
10
60% / 20%
Expirado
3
1%
Livre
6
Desenvolvedor 6
Classificação
(555)
Projetos
922
48%
Arbitragem
300
59% / 25%
Expirado
123
13%
Carregado
Pedidos semelhantes
VMP Painel 45+ USD
Construction of trading panel Trading panel with vertical and horizontal stop take profit lines and multiplication grid 1 horizontal and vertical purchase and sales lines and placement of orders in a grid with order number multiplier 2 that all lines must be visible with stop and take profits pre orders, all lines must be visible on the chart I'll post a picture to give you an idea of what it could be

Informações sobre o projeto

Orçamento
30 - 200 USD
Desenvolvedor
27 - 180 USD
Prazo
para 90 dias