- Discussão
- Ajuda na codificação
- Pergunte!
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
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
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.
:)
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.
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
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.
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso