Como codificar? - página 243

 

Ajude a melhorar o indiciamento ATR!!!

Estou tentando codificar uma versão melhorada do indicador ATR. Quero poder ter o indicador ATR mas com base apenas na vela das 2:00 às 11:00 da manhã por um período P.

Por exemplo: em uma tabela horária eu quero encontrar o ATR durante 120 períodos (+/- 120 horas = 5 dias), mas somente com as barras entre 2:00h e 11:00h durante essas 120 horas.

Se alguém tiver uma idéia de como modificar o código ATR padrão para fazer o que estou tentando fazer... por favor, responda a este post com seu código...

Obrigado...

 

Ea

Pls, qual expressão pode ser usada para obter o preço aberto ou alto de um candelabro que é X barras do candelabro fractal mais recente? (pls escreva a expressão completa... Só estou pedindo uma ou duas linhas)

Obrigado

 
ak_marshal:
Pls, qual expressão pode ser usada para obter o preço aberto ou alto de um candelabro que é X barras do candelabro fractal mais recente? (pls escreva a expressão completa... Só estou pedindo uma ou duas linhas) Obrigado

Primeiro de tudo, você precisa verificar qual é o índice de barra fractal. Para isto você deve usar o laço que você pode usar "enquanto" ou "para". Eu usarei para.

for(int i = 0;i<Bars;i++)

{

duplo isfracto = código de leitura dos fractais;

if(isfractal != 0)

{

duplo myOpen = Aberto;// este será seu X onde XBarsDepoisFractal é o número inteiro - x barras da barra fractal.

quebra;//saída do laço

}

}

 

Ajuda com um roteiro muito simples, por favor

Oi, pessoal,

Alguém pode ajudar com o roteiro da CoderGurus abaixo.

Ele funciona muito bem como está, mas eu queria modificá-lo para que ele pare o stop loss e o profit take com base no preço de abertura do comércio, não no preço atual de compra e venda.

Como eu disse, funciona bem como está, eu pensei que teria apenas que mudar OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*StopLoss,Bid+Point*TakeProfit,0,Green); para

OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice()-Point*StopLoss,OrderOpenPrice()+Point*TakeProfit,0,Green);

mas quando tento executar, nada acontece.

Alguém pode por favor me indicar a direção correta.

Obrigado

Steve

//+------------------------------------------------------------------+

//| My_First_Script.mq4 |

//| Copyright Coders Guru |

//| https://www.mql5.com/en/forum |

//+------------------------------------------------------------------+

#propriedade copyright "Copyright Coders Guru"

#link da propriedade "https://www.forex-tsd.com"

#property show_inputs

#incluir

duplo TakeProfit externo=250;

StopLoss duplo externo=35;

//+------------------------------------------------------------------+

//| função de início do programa de script |

//+------------------------------------------------------------------+

int start()

{

int total,cnt,err;

valor_de_prejuízo_duplo;

valor_de_prejuízo_duplo;

total = Total = OrdensTotal();

for(cnt=0;cnt<total;cnt++)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderType()==OP_BUY) // posição longa é aberta

{

OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*StopLoss,Bid+Point*TakeProfit,0,Green);

err=GetLastError();

Imprimir ("Alto - ");

Imprimir("erro(",err,"): Descrição do Erro(",err,");

Sleep(1000);

}

if(OrderType()==OP_SELL) // posição curta é aberta

{

OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*StopLoss,Ask-Point*TakeProfit,0,Red);

err=GetLastError();

Imprimir("erro(",err,"): Descrição do Erro(",err,");

Sleep(1000);

}

}

retorno(0);

}

 

Como posso fazer funcionar como loop

Eu quero usar a função EA que funciona como loop como este :

(por enquanto eu uso varible

Tendência INT)

A >> B >> C >> D >> E

uso A = nova alta + SMA30 > 80

i "comprar" tendência = 1

então B = sma30 < 80

i " vender" tendência = 2

então C = sma30>80

i "comprar" tendência = 3

em C é o ponto que quero que seja verificado

se ele fizer nova alta em qualquer lugar eu quero que a tendência de retorno seja 1 e a looping

se não fizer nova elevação, irá para sma30 < 80

e ir para a tendência = 4

////////////

este é um loop que eu quero que qualquer um possa me dizer para usar (do meu jeito que usa variável não funciona e não sei por quê)

esperança de um sábio conselho, que o faça

 

Eu não poderia seguir sua lógica, mas talvez este exemplo possa ser usado para ajudá-lo:

MA30=iMA(NULL,0,30,0,0,0,0);

MA80=iMA(NULL,0,80,0,0,0,0);

if(Alto[0]>Alto[1] && MA30>MA80) A=1;

if(MA30<MA80) B=2;

if(MA30>MA80) C=3;

Talvez você possa trabalhar com isto para expandi-lo para o resultado desejado do loop.

 

definir a data atual como variável externa ?

Oi, tudo o que eu procurava era alguma ajuda para modificar algum código. O problema é que toda vez que abro esta EA em particular, tenho que alterar manualmente a hora e a data, O que eu queria saber é se era possível fazer esta atualização automática toda vez que a EA é aberta?

Para ser mais específico, a EA abre uma compra e venda pendente na hora e data pré-determinadas, mudar a hora não é tão ruim, mas ao anexar a EA a 5 ou 6 gráficos pode ficar um pouco irritante, e copiar/colar não vai cortá-la a longo prazo.

data externa NewsTime = D'05.08.2010 10:15'; é o código

Qualquer ajuda apreciada

 

Pode ser escrito um script, que define uma variável global com uma nova data (GlobalVariableSet), e adicionar à leitura EA desta variável (GlobalVariableGet)?

 

CAn someone chnage the Trade comment parameter

Hi,

Tenho uma copiadora de sinais EA , que copia exatamente o comentário comercial da Master. Preciso acrescentar um paramédico externo a esta EA, que pode configurar para qualquer comentário comercial que eu queira. Eu realmente apreciaria se alguém ajudasse.

Obrigado

Arquivos anexados:
s-mtfx_s.mq4  27 kb
 
Ale:
Pode ser escrito um script, que define uma variável global com uma nova data (GlobalVariableSet), e adicionar à leitura EA desta variável (GlobalVariableGet)?

obrigado, mas eu pensei que o problema fossem variáveis externas como "NewsTime" não aceitaria nada além de uma variável estática

você poderia configurá-lo usando o roteiro, mas depois não poderia mudá-lo?

isso é correto?

Razão: