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

명시

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.

응답함

1
개발자 1
등급
(2423)
프로젝트
3045
66%
중재
77
48% / 14%
기한 초과
340
11%
무료
2
개발자 2
등급
(11)
프로젝트
17
59%
중재
2
0% / 100%
기한 초과
2
12%
무료
3
개발자 3
등급
(253)
프로젝트
408
38%
중재
86
43% / 19%
기한 초과
70
17%
로드됨
4
개발자 4
등급
프로젝트
0
0%
중재
0
기한 초과
0
무료
5
개발자 5
등급
(475)
프로젝트
504
53%
중재
10
60% / 20%
기한 초과
3
1%
무료
6
개발자 6
등급
(563)
프로젝트
932
47%
중재
301
59% / 25%
기한 초과
124
13%
작업중
비슷한 주문
Desejo criar um site, onde, extraia informações da B³, passe-as pelo algoritmo que eu desenvolvi e, apresente o resultado ao usuário. Ele deve possuir uma página de demonstração para não assinantes e uma página de análise para assinantes. Deve apresentar os 5 melhores e os 5 piores investimentos do mês corrente
//+------------------------------------------------------------------+ //| SimpleEA.mq5| //| Copyright 2023, MetaQuotes Software Corp. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "2023, MetaQuotes Software Corp." #property link " https://www.mql5.com " #property version "1.00" #property strict input int FastMAPeriod = 12; // Período da média

프로젝트 정보

예산
30 - 200 USD
개발자에게
27 - 180 USD
기한
 90 일