Como codificar? - página 157

 

obrigado wolfe!

obrigado por sua resposta e pelo livro! é novo para mim, por isso, vou me dedicar a ele e aprender um pouco mais. depois postarei a próxima versão da minha ea ou outra pergunta se eu chegar a um bloqueio na estrada.

Eric

 

Fixação de tempo de um objeto

Eu me perguntava se alguém poderia me dizer como fixar o tempo de um objeto (como uma flecha) para que quando eu mudasse o gráfico TF a flecha permanecesse no tempo original. Semelhante a desenhar uma linha vertical e depois mudar a TF do gráfico. Obrigado.

 

como mudar ou remover.00

doubleHiPrice2 = iHigh(NULL,NULL,1);

double LoPrice2 = iLow (NULL,NULL,1);

Rangehilo duplo= (HiPrice2-LoPrice2);

se (Dígitos < 4) Rangehilo = Rangehilo * 100; caso contrário Rangehilo = Rangehilo * 10000;

Comentário ("\n", "Gama: ",DoubleToStr(Rangehilo,2)+" pip","\n");

Tento criar um Rangehilo PIP entre alto e baixo, mas ele aparece assim

->> Gama: 37,00 pip

Minha pergunta é, como remover .00?então ele mostrará apenas 37pip?

obrigado

 

NormalizeDuplo(var1,0);

Lux

PS: Acabei de notar seu código: DoubleToStr(Rangehilo,0) - mude o 2 para 0

 
luxinterior:
NormalizeDuplo(var1,0);

Lux

PS: Acabei de notar seu código: DoubleToStr(Rangehilo,0) - mude o 2 para 0

Ohohhh,apenas um pequeno erro...obrigado luxinterior!

 

adicionando faixas stdev

Olá, desculpe pela pergunta estúpida, mas as pls me ajudam aqui:

Se você tem algum indicador que consiste em 1 linha na janela do gráfico, e deseja adicionar faixas de desvio padrão a essa linha, como as faixas Bollinger. Como você faz isso?

digamos que seu buffer que traça seu indicador original é chamado abc

portanto, primeiro você os declara:

bandas internas externasPeriodo=20;

Int. exterior FaixasShift=0;

Faixas duplas externasDeviações=2,0;

1) você muda

#property indicator_buffers 1 (1 torna-se 3)

2)

SetIndexBuffer(0,abc);

SetIndexStyle(0,DRAW_LINE);

e adicionar

SetIndexBuffer(1,UpperBuffer);

SetIndexStyle(1,DRAW_LINE);

SetIndexBuffer(2,LowerBuffer);

SetIndexStyle(2,DRAW_LINE);

SetIndexDrawBegin(0,BandsPeriod+BandsShift);

SetIndexDrawBegin(1,BandsPeriod+BandsShift);

3) você adiciona o código do resto das bandas de bollinger ao laço de inicialização

int start()

{

int i,k,counted_bars=IndicatorCounted();

duplo desvio,soma,oldval,newres;

//----

if(Bars<=BandsPeriod) return(0);

//---- zero inicial

if(counted_bars<1)

e assim por diante....

4) mas como você substitui o buffer chamado MovingBuffer nas bandas originais.mq4 pelo novo buffer de seu indicador, chamado "abc"?

Qual é a melhor maneira de fazer isso?

Devo tentar colocar meu código indicador no código bands.mq4 ou o contrário?

Eu anexei um código bem conhecido chamado bands.mq4 para que você possa ver com o que estou trabalhando.

novamente, desculpe pelo meu código-ignorante

Talvez alguém saiba de um "tutorial de adição de bandas stdev" ? Isso seria o que eu preciso neste momento. Thx

Arquivos anexados:
bands.mq4  3 kb
 
 

Codificação para uma EA

Olá a todos,

Eu gostaria de criar alguns códigos que impedirão uma EA de negociar se ela já tiver tido uma negociação lucrativa para o atual pregão.

Tenho vários EA's que construí que me permitem escolher o horário de abertura e de fechamento para a negociação de cada dia. O EA também faz qualquer coisa apenas na abertura de cada novo bar. Portanto, se eu tiver uma negociação em andamento e ela estiver fechada porque ou ela atingiu meu stop loss ou meu take profit, a EA esperará até a abertura do próximo bar antes de abrir uma nova negociação.

Por exemplo, eu tenho o EA definido para negociar entre 6:00 e 14:00 horas em um gráfico de uma hora. Às 6:00 da manhã é aberta uma negociação. Às 9h23, meu take profit é atingido e o comércio é fechado. Às 10h00 uma nova negociação será aberta e permanecerá aberta até que a nova parada ou lucro seja atingido, ou até que a hora chegue às 14h00, horário em que a negociação é fechada e a negociação é feita para o resto do dia.

O que eu gostaria que a EA não só reconhecesse a hora do dia, mas também reconhecesse se eu já tive uma negociação vencedora durante a sessão de negociação. Assim, no exemplo acima, mesmo que ainda seja durante o período de negociação do dia, a EA não abriria uma nova negociação às 10:00 da manhã porque já houve lucro. Por outro lado, se no exemplo acima fosse minha parada de prejuízo, a EA abriria uma nova negociação às 10:00 porque ainda não houve lucro.

Estou pensando que eu precisaria usar a função "OrderSelect" junto com o parâmetro "Mode_History" para olhar as negociações previamente fechadas e depois comparar o preço de abertura com o preço de fechamento da ordem para determinar se um lucro ou prejuízo foi realizado. Isso soa bem? Sendo um novato em programação, não tenho certeza se esta é a melhor maneira de abordar o problema e se é, demorarei muito, muito tempo para obtê-lo no formato correto para que funcione corretamente.

Se alguém pudesse me ajudar ou pelo menos me dar algumas idéias ou idéias sobre como lidar com este problema, eu ficaria grato. Se meu exemplo não fizer sentido, me informe e eu tentarei explicar melhor.

Agradecemos antecipadamente por qualquer ajuda que seja oferecida.

Ron

 

Verificação de perdas de pedidos...

Neste site, neste link https://www.mql5.com/en/forum/176053/page25 está uma cópia do DIN_Kukus_EA_V2.6. Se você visualizar o conteúdo da EA, encontrará uma função que verifica a perda de pedidos em seu histórico de pedidos, da mesma forma como você mesmo já descreveu fazendo. Você pode usar este exemplo de trabalho de como extrair o número de negócios bem-sucedidos de seu histórico de pedidos. Você pode modificá-lo para extrair o histórico também por um determinado período de tempo, mas espero que isto o ajude a ver como realizar o que você se propõe a fazer por si mesmo...

 

querer usar resultados indicadores em EA

Olá a todos,

O indicador Gliding_Channels coloca os dados atuais do canal na área de comentários da Janela de Dados. Ele informa a profundidade vertical do canal na barra de corrente, o ângulo do canal (tanto positivo quanto negativo), o limite alto e o limite baixo. Quero ver esses dados, no entanto, eles entram em conflito com os dados que minha EA mostra na área de comentários, fazendo com que meus comentários cintilem.

Eu tentei adicionar um SetIndexBuffer para cada um dos quatro dados no indicador para que eu pudesse referenciá-los em minha EA usando iCustom. Só consegui trazer um dos quatro valores em meus comentários da EA dessa forma. (Eu também continuei tendo o problema de cintilação).

Alguém poderia me mostrar a maneira correta de acessar esses quatro resultados do indicador em minha EA?

Em minha EA, chamarei esses quatro valores de "profundidade, ângulo, limitHI, e limitLO".

Arquivos anexados: