Como codificar? - página 247

 

precisa de ajuda para o hide_breakeven

Olá a todos, eu encontrei este código para uma parada de esconde-esconde e quero fazer um hide breakeaven, ele funciona, mas não fecha o pedido. Quero fechar a ordem se o BID vier do alto e cruzar o BE HLINE, e não fechar se o BID estiver cruzando o BE HLINE do baixo. Já fiz muitos exemplos, mas não funciona como eu quero... por favor, me ajude, aqui está o código para "comprar":

void HideBreakEvenBuy(){

int totalorder = OrderTotal();

for(int i=totalordens-1;i>=0;i--){

se (OrderSymbol()==OrderSymbol()){

se (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)){

se (OrderType()==OP_BUY){

if (MarketInfo(OrderSymbol(),MODE_ASK)-OrderOpenPrice() >= breakeven*Point && ObjectGet("sl "+OrderTicket()+"b", OBJPROP_PRICE1) < OrderOpenPrice()){

ObjectCreate("BE "+OrderTicket()+"b", OBJ_HLINE, 0, 0, 0, 0);

ObjectSet("BE "+OrderTicket()+"b", OBJPROP_PRICE1, OrderOpenPrice()+BE*Point);

ObjectSet("BE "+OrderTicket()+"b", OBJPROP_COLOR, Vermelho);

ObjectSet("BE "+OrderTicket()+"b", OBJPROP_STYLE, 3);

}

if (MarketInfo(OrderSymbol(),MODE_ASK) -ObjectGet("BE "+OrderTicket()+"b", OBJPROP_PRICE1)

>= breakeven*Point && ObjectGet("BE "+OrderTicket()+"b", OBJPROP_PRICE1)

>= OrderOpenPrice() && ObjectGet("BE "+OrderTicket()+"b", OBJPROP_PRICE1) <MarketInfo(OrderSymbol(),MODE_ASK)){

//ObjectSet("BE "+OrderTicket()+"b", OBJPROP_PRICE1, MarketInfo(OrderSymbol(),MODE_ASK) -TrailingStop*Point);

if (OrderType() == OP_BUY && MarketInfo(OrderSymbol(),MODE_ASK) >= ObjectGet("BE "+OrderTicket()+"b", OBJPROP_PRICE1)) OrderClose(OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(),MODE_BID), SlippageClose, Silver);

}

}

}

}

}

}

Saudações go_rich

 

Como adicionar uma parada de rastreamento ao Expert Advisor existente

Como posso acrescentar uma parada de rastreamento a um especialista que já está feita? Este especialista pode estar editando. Obrigado por qualquer ajuda.

 

2 indicadores em um

Olá a todos, de poucos meses eu uso uma estratégia que é baseada em 2 indicadores e me traz bom lucro (eu uso e fundamental com ela), estou procurando alguém que possa conectar esses indicadores em Um para maior comodidade! Se alguém estiver interessado, por favor escreva em privado, obrigado

 
vladokvr:
Olá a todos, de poucos meses eu uso uma estratégia que é baseada em 2 indicadores e me traz bom lucro (eu uso e fundamental com ele), estou procurando alguém que possa conectar esses indicadores em Um para maior comodidade! Se alguém estiver interessado, por favor escreva em privado, obrigado

alguém me ajudará, ou tome um exemplo de como fazer Um indicador de Dois, eu acho que será interessante para muitos comerciantes!

 

Cálculo anterior de barras/congelamento de teste

Olá, eu estava pensando se alguém poderia me ajudar com uma rápida correção do código EA.

Preciso que meu EA tome o preço mais baixo dentro dos últimos 60 dias e o subtraia do preço mais alto dentro desse mesmo período. Uma vez feita a diferença, eu gostaria que o resultado fosse multiplicado por 1000 para obter o intervalo desejado para meus cálculos.

Por exemplo, se o preço mais alto para EURUSD nos últimos 60 dias fosse 1.30000, e o preço mais baixo fosse 1.20000, a diferença seria de 0,1 (ou 1000 pips). Eu multiplicaria então esse 0,1 por 1000 para obter minha faixa desejada de 100. (Basicamente, para cada 1000 pips de troca, preciso de um valor de 100 para meus cálculos).

Se a diferença fosse de 1250 pips, o valor que eu precisaria seria 125.

De qualquer forma, este é o código que eu usei:

double highval = High;

double lowval = Low;

int DesiredRange = NormalizeDouble(highval - lowval,3)*1000;

Por alguma razão, no testador de estratégia, ele funciona bem por um curto período. Entretanto, em certas datas, o testador apenas faz uma pausa e não continua a negociar. Ele simplesmente congela sem parar; e você tem que parar o programa manualmente e mudar a data de início para o dia seguinte a fim de continuar.

Há algo errado com meu código? Se eu retirar o código acima, ele funciona bem com um intervalo de variação constante Desejado. No início pensei que poderia ser por causa de arredondamento, mas parece arredondar corretamente.

POR FAVOR AJUDA! Obrigado de antemão!

 

Por que você não usa o cronograma mensal e obtém o mais alto e o mais baixo dos 2 meses anteriores? 2 meses equivale aos 60 dias.

Obter o valor mais alto neste caso é comparar apenas o mais alto da vela atual e o mais alto da vela anterior. O mesmo para a mais baixa.

jamesmean:
Olá, eu estava pensando se alguém poderia me ajudar com uma rápida correção do código EA.

Eu preciso que minha EA pegue o menor preço dentro dos últimos 60 dias e o subtraia do maior preço dentro desse mesmo período. Uma vez feita a diferença, gostaria que o resultado fosse multiplicado por 1000 a fim de obter a faixa desejada para meus cálculos.

Por exemplo, se o preço mais alto para EURUSD nos últimos 60 dias fosse 1.30000, e o preço mais baixo fosse 1.20000, a diferença seria de 0,1 (ou 1000 pips). Eu multiplicaria então esse 0,1 por 1000 para obter minha faixa desejada de 100. (Basicamente, para cada 1000 pips de troca, preciso de um valor de 100 para meus cálculos).

Se a diferença fosse de 1250 pips, o valor que eu precisaria seria 125.

De qualquer forma, este é o código que eu usei:

double highval = High;

double lowval = Low;

int DesiredRange = NormalizeDouble(highval - lowval,3)*1000;

Por alguma razão, no testador de estratégia, ele funciona bem por um curto período. Entretanto, em certas datas, o testador apenas faz uma pausa e não continua a negociar. Ele simplesmente congela sem parar; e você tem que parar o programa manualmente e mudar a data de início para o dia seguinte a fim de continuar.

Há algo errado com meu código? Se eu retirar o código acima, ele funciona bem com um intervalo de variação constante Desejado. No início pensei que poderia ser por causa de arredondamento, mas parece arredondar corretamente.

POR FAVOR AJUDA! Obrigado de antemão!
 

Esta não é uma tarefa fácil.

vladokvr:
Alguém me ajudará, ou tome um exemplo de como fazer Um indicador de Dois, acho que será interessante para muitos comerciantes!
 

Verifique seus bares

jamesmean:
Olá, eu estava pensando se alguém poderia me ajudar com uma rápida correção do código EA.

Preciso que minha EA tome o preço mais baixo dentro dos últimos 60 dias e o subtraia do preço mais alto dentro desse mesmo período.

......

De qualquer forma, este é o código que eu utilizei:

double highval = High;

double lowval = Low;

int DesiredRange = NormalizeDouble(highval - lowval,3)*1000;

Há algo errado com meu código? Se eu retirar o código acima, ele funciona bem com uma variação constante do DesiredRange. No início pensei que poderia ser por causa de arredondamento, mas parece arredondar corretamente.

POR FAVOR AJUDA! Obrigado de antemão!

Oi, James,

Editar - Eu apaguei minha sugestão. Não o código correto (era para o iCustom, não iHighest, iLowest). Ainda estou aprendendo.

---

Você pode considerar a sugestão da Codersguru também usando o período de um mês, pois ela pode lhe dar uma média mais precisa.

Espero que isto ajude,

Robert

 

Indicador, quebras de preço último fractal

Como determinar (por código) se o preço quebrou o último fractal para cima ou para baixo.

Tentei algo com ifratais em mql, mas sem sucesso. Eu gostaria de identificar o último fractal para baixo em meu código.

Quero selecionar a barra com a seta em cima na tabela anexa por código, mas não tenho idéia de como conseguir isso. Qualquer ajuda é bem-vinda.

TIA !

Arquivos anexados:
chrt1.gif  23 kb
 

Esqueça a pergunta sobre o fractal, eu encontrei uma solução. O problema é determinar o fractal que você tem que voltar no tempo com um "for loop" que a IMO resulta em muita sobrecarga. Mas eu não sou um programador, então provavelmente existem soluções melhores.

THNX

Razão: