Precisa de ajuda para criar um MUITO simples EA

 
eu nunca criei uma EA antes, mas tenho uma troca que acontece a cada 30 minutos. eu a troco no gbpusd. quando a vela atual de 30min quebra a vela anterior por um pip, eu entro por 5 pips. pode ser uma compra ou uma venda, não importa. eu tenho algumas outras regras muito simples para esta troca, então eu preciso de uma EA que faça esta troca para mim. qualquer um pode me ajudar por favor!????
 
crazfoto:
eu nunca criei uma EA antes, mas tenho uma troca que acontece a cada 30 minutos. eu a troco no gbpusd. quando a vela atual de 30min quebra a vela anterior por um pip, eu entro por 5 pips. pode ser uma compra ou uma venda, não importa. eu tenho algumas outras regras muito simples para esta troca, então eu preciso de uma EA que faça esta troca para mim. qualquer um pode me ajudar por favor!????

talvez eu possa ajudar nisso se não for tão complicado.

pls me forneçam mais informações

 
doshur:

talvez eu possa ajudar nisso se não for tão complicado.

pls me fornecem mais informações

ótimo. as únicas regras são:


entrar quando a vela atual quebra o alto ou o baixo da vela de 30m anterior por 1 pip (alto para comprar, baixo para vender)

somente trocar uma vela que seja de 20 pips ou maior.

a parada é a parte baixa (ou alta) da vela de 30min anterior, uma vez que uma ordem é ativada

se não houver quebra de vela ou pedido feito, então espere que a próxima vela de 30min se for de 20 pips ou maior


Vou tentar uma parada nesta semana para ver se consigo pegar mais alguns pips. mas 5 pips a cada meia hora não é ruim.


Me avise. obrigado novamente

 

entrar quando a vela atual quebra o alto ou o baixo da vela de 30m anterior por 1 pip (alto para comprar, baixo para vender)

Entendido este ponto


somente trocar uma vela que seja de 20 pips ou maior.

Você quer dizer que a vela anterior é alta - baixa dá 20 ou mais graxas?


a parada é a baixa (ou alta) da vela anterior de 30min, uma vez que uma ordem é ativada

Por favor, explique mais


se não houver quebra de vela ou pedido feito, então espere que a próxima vela de 30min se for de 20 pips ou maior

Favor esclarecer o ponto 2


:)


Cumprimentos

Doshur

 
doshur:

entrar quando a vela atual quebra o alto ou o baixo da vela de 30m anterior por 1 pip (alto para comprar, baixo para vender)

Entendido este ponto


somente trocar uma vela que seja de 20 pips ou maior.

Você quer dizer que a vela anterior é alta - baixa dá 20 ou mais pips?


a parada é a parte baixa (ou alta) da vela de 30min anterior, uma vez que uma ordem é ativada

Por favor, explique mais


se não houver quebra de vela ou pedido feito, então espere que a próxima vela de 30min se for de 20 pips ou maior

Favor esclarecer o ponto 2


:)


Cumprimentos

Doshur

sim. a vela anterior tem que ser 20 pips ou maior para comercializar. dessa forma temos um canel de tamanho decente.


a parada

exemplo:

a alta anterior é de 1.7500

o mínimo anterior é 1.7480

ordem de compra seria 1.7001 tp 1.7506 st é 1.7480

ou a venda seria de 1,7479 tp 1,7474 st é 1,7500



agora, se tivermos nosso alcance e uma ordem nunca for colocada, ou seja, o mercado nunca quebra alto ou baixo para ativar uma ordem. então a faixa anterior de 30min é desconsiderada e a nova vela de 30min (que agora se tornaria nossa faixa anterior) se tornará os novos números a serem negociados.


exemplo:


a alta anterior é de 1,7550

o mínimo anterior é 1,7500

a nova vela de 30m permanece entre nosso alcance e um pedido nunca é ativado.


recebemos uma vela nova de 30m e a gama anterior é:

alta de 1,7540

baixo 1,7520


portanto, esta se torna nossa nova linha para comercialização e a linha 1.7550 1.7500 é desconsiderada.


isso faz sentido? eu negocio isso com ordens pendentes quando a nova vela de 30min começa. quando uma das ordens é ativada eu apago a outra ordem. então se a compra é ativada eu apago a venda pendente e vise versa. se figura com um robô você não tem que ter uma ordem pendente.

 

Agora estou claro.

Começaremos a codificar nestes poucos dias. Deixe-me digerir.

:)

 
doshur:

Agora estou claro.

Começaremos a codificar nestes poucos dias. Deixe-me digerir.

:)

fantástico. muito obrigado. é um comércio pouco lucrativo e divertido. não muitas perdas. pergunto-me se você poderia acrescentar algo que dobrará os lotes entrados após uma troca falhada apenas para a próxima entrada após uma troca falhada. ajuda a manter as perdas muito baixas.


Esta semana estarei negociando esta semana experimentando uma parada de trilha. nunca o fiz antes apenas por 5 pips.

 
crazfoto wrote >>

fantástico. muito obrigado. é um comércio pouco rentável. não muitas perdas. pergunto-me se você poderia acrescentar algo que dobraria os lotes entrados após uma troca falhada apenas para a próxima entrada após uma troca falhada. ajuda a manter as perdas muito baixas.

Esta semana estarei negociando esta semana experimentando uma parada de trilha. nunca o fiz antes apenas por 5 pips.

Estratégia interessante. Eu escrevi o seguinte código a ser implementado. O código é muito comentado, portanto você deve ser capaz de compreendê-lo e modificá-lo. Staregy não recuou muito.

//+------------------------------------------------------------------+
//| 30Min Strategy.mq4 |
//| Copyright © 2008, Brendan Kelly |
//| |
//+------------------------------------------------------------------+
#direitos autorais "Copyright © 2008, Brendan Kelly"
#ligação de propriedade ""
string externa Order_Comment = "30Min Strategy";
Lotes duplos externos = 0,1;
externamente int TakeProfit = 5;

bool estático ReadyToTradeThisBar = falso;
int MagicNumber = 9999;

int start()
{

se (NewBar()) // Isto é feito no início de cada novo bar
{
FechamentoAllOpenOrders(); //fechamento prévio de qualquer comércio existente remanescente da barra anterior
if(High[1] - Low[1]>= 20*Point) // se a barra anterior tiver pelo menos 20
ReadyToTradeThisBar = true; //então podemos negociar esta barra
senão //else
ReadyToTradeThisBar = falso; // não podemos negociar esta barra
}

// Isso é feito a cada tique
se (ReadyToTradeThisBar == true) // se pudermos negociar esta barra
{
se (OrderTotal() < 1) // e se não houver comércio atualmente em curso
{
if(Ask > High[1] + 1*Point) // e se o preço atual é maior do que o preço da barra anterior mais 1
{ // depois fazer um pedido de compra
OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Low[1],Ask+ TakeProfit*Point,Order_Comment,MagicNumber,0,Blue);
ReadyToTradeThisBar = falso; //prevenir novas operações até que a operação atual seja fechada
}
if(Bid < Low[1] - 1*Point) // e se o preço atual é menor do que o baixo da barra anterior menos 1
{ // depois fazer um pedido de venda
OrderSend(Symbol(),OP_SELL,Lots,Bid,3,High[1],Bid- TakeProfit*Point,Order_Comment,MagicNumber,0,Red);
ReadyToTradeThisBar = falso; //prevenir novas operações até que a operação atual seja fechada
}
}
}

retorno(0);
}//fim


//##########################Funções de apoio ##########################################

// Esta função retorna o valor verdadeiro se a barra/candelabro atual acabou de ser formada
bool NewBar()
{
data/hora estática Barra anterior;
if(PreviousBar<Time[0])
{
Barra Anterior = Tempo[0];
return(true);
}
senão
{
retorno(falso);
}
retorno(falso); // no caso de - caso contrário a declaração não seja executada
}

//fechar todas as ordens abertas e pendentes
em CloseAllOpenOrders()
{
int OrderCount = OrderTotal();
índice int = 0;
int TicketNumber = 0;
for(index=OrderCount-1;index>-1;index--)
{
OrderSelect(index,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber()==MagicNumber)
{

TicketNumber = OrderTicket();
if(OrderType() == OP_BUY || OrderType() == OP_SELL )
{
OrderClose(TicketNumber,Lots,Bid,3,Red);
}
}
}
retorno(0);
}

Cumprimentos

Brendan

 
agradável. eu seria capaz de modificá-la para trabalhar em uma vela de 2 horas também? <br / translate="no">
 
vejo porque isso não está funcionando. está cancelando cada pedido automaticamente a cada meia hora em vez de deixar o mercado pará-lo ou tirar lucro. vejo muitas ordens que teriam pago, mas o robô fechou o pedido. se isso puder ser mudado, acho que os resultados serão melhores
 

Obrigado brendan pelo código.

Ainda tenho que testar o código, mas parece que se você ativar a EA, ela executará uma ordem imediatamente se todas as regras forem cumpridas, mesmo que o preço atual já esteja como 10pip acima da barra anterior.