Realizado

Expert Advisor (Robo) Para Ctrader = Cbot (Calgo) - Forex

Publicado em 13 de Abril de 2022 dias na TI e Programação

Sobre este projeto

Aberto

Desenvolver um cBot (cAlgo) para operar automatizado na plataforma ctrader.

Programação em C#.

O EA (cbot) deverá estar habilitado para ser possível realizar testes de estratégia (otimização);


*Estratégias* a serem utilizadas:

Deverá ser calculado a média do tamanho *do corpo* (preço de abertura e fechamento/desconsiderando as máximas e mínimas) das últimas X barras/velas (será a força dos candles) *de M5*,
- Este campo (X) deverá ser configurável na janela de parâmetros e habilitado para otimização;


Opção 01:
olhar as *velas de final xx:45 e xx:50* (m5) se foram acima da média estipulada no parâmetro acima e as duas na mesma direção, entrada na próxima vela na *direção contrária*
olhar as *velas de final xx:50 e xx:55* (m5) se foram acima da média estipulada no parâmetro acima e as duas na mesma direção, entrada na próxima vela na *direção contrária*

exemplo: as 02 barras/velas acima da média calculada e da cor verde/positivas/call, entrar para put/abaixo na próxima vela de m5 + as informações de abertura de ordem, no final desse documento..


Opção 02:
olhar as *velas xx:40, xx:45 e xx:50* (m5) se foram acima da média estipulada no parâmetro acima e as três na mesma direção, entrada na próxima vela na *direção contrária*
olhar as *velas xx:45, xx:50 e xx:55* (m5) seguindo a mesma estratégia

exemplo: as 03 barras/velas acima da média calculada e da cor vermelha/negativas/put, entrar para call/acima na próxima vela de m5 + as informações de abertura de ordem, no final desse documento..


*Premissas*, deverá verificar antes de tudo:

1. *Spread máximo* aceitável para abrir a ordem
a. Este campo deverá estar habilitado para otimização;
b. Campo configurável na janela de parâmetros


2. Opção de selecionar *dias da semana* para operar;
a. Campo configurável na janela de parâmetros


3. Deverá ter opções de *selecionar até 10 horários/intervalos* aceitáveis para abrir as ordens.. Sendo uma lista com opções de hora em hora.. Opções no horário de Brasília (GMT-3)
a. Este campo deverá estar habilitado para otimização;
b. Campo configurável na janela de parâmetros

Exemplos das horas selecionadas (sempre XX:30):

00:30 – 01:30
01:30 – 02:30
04:30 – 05:30
10:30 – 11:30
20:30 – 21:30
Etc
Etc

4. Considerar *dois turnos de operação* ou seja, DIA E NOITE... Ao selecionar os horários do item anterior (03), considerar:

dia: a partir das 01:30 da manhã até as 17:30
noite: a partir das 18:30 da noite até as 00:30

5. Ter a opção de *qual estratégia utilizar nos turnos*, ou seja:
a. Este campo deverá estar habilitado para otimização;
b. Campo configurável na janela de parâmetros

turno dia: poderá selecionar a estratégia de opção 01 ou 02
turno noite: poderá selecionar a estratégia de opção 01 ou 02

6. Ter opção de filtro de notícias do mercado:
a. Campo configurável na janela de parâmetros

- optar por filtro de notícias ou não;
- se optar pelo filtro de notícias, deverá ter também uma seleção de tempo em minutos (5,10,15,30) de acordo com cada IMPACTO (baixo, médio, alto) das notícias..
- Estipular o tempo antes e depois das notícias, deverão ser parâmetros separados
- durante esse intervalo (antes e depois da notícia) não abrir ordens

*Stops* da ordem/operação:

7. stop loss:
a. Este campo deverá estar habilitado para otimização;
b. Campo configurável na janela de parâmetros

Opção por *tempo ou por PIPS*:
- se selecionar tempo, será no encerramento da vela de M5 que abriu a ordem, encerrar a ordem no final do minuto de M5;
- se for pip, será pelo valor dos pips inseridos no campo parâmetros *+* o valor do spread atual ao posicionar o stop;
- opção de deixar desabilitado o stop loss (será manualmente)

8. Take profit:
a. Este campo deverá estar habilitado para otimização;
b. Campo configurável na janela de parâmetros

Opção por *tempo ou por PIPS*:
- se selecionar tempo, será no encerramento da vela de M5 que abriu a ordem, encerrar a ordem no final do minuto de M5;
- se for pip, será pelo valor dos pips inseridos no campo parâmetros *-* o valor do spread atual;
- opção de deixar desabilitado o take profit (manualmente)

*abertura de ordem*

9. LOTE:
a. Campo configurável na janela de parâmetros

Opção de inserir o tamanho do lote forex manualmente ou calculado:
- se for manual, deixar campo para digitar;
- se for calculado, será:
Na plataforma já tem um campo que fica calculando quanto que valerá cada pip (do preço) de acordo com o tamanho do lote que eu insiro, ou seja, deverá ter um campo para que eu selecione quantos (%) do meu capital atual deverá valer cada pip de preço, o calculo da % será matematico mesmo, agora o quanto valerá cada pip pode tentar pegar a informação que a plataforma já disponibiliza;

10. Deverá ser criado uma região (retângulo) de topos e fundos de M30 (Velas/barras de M30 já finalizadas, não pegar a do próprio M30 que está acontecendo) que ainda não foram tocados/ultrapassados, ou seja, em todo topo e fundo de M30 deverá ser realizado uma região um pouco acima e um pouco abaixo para que as operações de M5 possam ser realizadas somente se estiverem dentro dessa margem/região quando as estratégias de opção 01 ou 02 forem ativadas.
a. Somente poderá abrir a ordem/posição se após o cálculo da força dos candles (opções de estratégia) essa nova barra/vela de M5 atinja ou estiver na região dos topos e fundos de M30;
b. Todas as ordens/posições só poderão ser abertas até o minuto 03:30 da nova vela de M5 que iniciou após as estratégias (01 e 02), independente se foi selecionado os STOPS em tempo ou PIPs.
c. Se ocorrer a abertura da ordem/posição, o preço continuar contra minha operação e atingir uma nova região de M30, abrir mais uma ordem no mesmo sentido da inicial.

11. Definir um *limite de perda ou ganho máximo diário*, ter opção de valor ($) ou porcentagem (%)
a. Campo configurável na janela de parâmetros

Toda virada de dia (00:01) deverá verificar o saldo da conta inicial do dia, e após as operações, ir calculando a diferença do saldo atual – o saldo inicial, e se ultrapassar os valores estipulados nesse parâmetro, não abrir mais operações naquele dia. A cada dia renovar essa conta, de acordo com o saldo da conta inicial.

Categoria TI e Programação
Subcategoria Outros
Tamanho do projeto Médio
Isso é um projeto ou uma posição de trabalho? Um projeto
Tenho, atualmente Eu tenho especificações
Disponibilidade requerida Conforme necessário

Prazo de Entrega: Não estabelecido

Habilidades necessárias

Outro projetos publicados por G. H. D. D. A.