[ARQUIVO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 4. - página 409
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
sss2019:
Mostre-me um exemplo, por favor, eu fiz. Não funcionou.
Eu fiz o roteiro desta maneira
Como resultado, a impressão produz o seguinte
0 4
1 4
Isso é tudo, por alguma razão o laço não imprime
2 4
3 4
Adicionei ao loop OrderSelect(i, SELECT_BY_POS, MODE_TRADES em vez de I 0, ou seja, a primeira ordem é sempre selecionada e o script funciona corretamente. Acontece que quando o loop apaga duas ordens, ele tenta selecionar a terceira ordem quando há apenas duas ordens na lista.
Fez o roteiro desta maneira
No final...
Por favor, me mostre um exemplo, eu fiz
Não ajudou.
porque você ainda tem que pensar.
Ajude-me a resolver este dilema
O roteiro procura a distância máxima entre as linhas. Ela emite todos os valores em todas as barras, o intervalo máximo é 1,6235 em uma barra e 1,6208 na outra.
Tento imprimir Print(maxrange); imprime 0,086, não entendo porque, estou dividindo por Point
Ajude-me a resolver este dilema
O roteiro procura a distância máxima entre as linhas. Ela emite todos os valores em todas as barras, o intervalo máximo é 1,6235 em uma barra e 1,6208 na outra.
Eu tento imprimir (maxrange); ele retorna 0,086, não entendo porque, estou dividindo por ponto
Isto não é um dilema. Um dilema é quando não se sabe qual das duas soluções é a melhor.
Bem, primeiro, a função iMA() tem sete parâmetros, não seis. Em segundo lugar, você declarou uma variável pela corda int i. E, mais adiante, a variável i não é inicializada em nenhum lugar com um valor. Como resultado, ou é zero ou contém lixo de memória que sobrou da atividade anterior. E, em terceiro lugar, o ciclo de tempo está arranjado incorretamente. Bem, digamos que a variável i é igual a zero após a inicialização. Vamos supor também que a expressão Ma1 > Ma2 também é verdadeira. Como resultado, a linha while(Ma1 > Ma2) iniciará o loop. Na próxima iteração do loop, descobriremos que a expressão (Ma1 > Ma2) não é mais verdadeira e que o loop será terminado. As variáveis Ma1 e Ma2 não conterão a distância que é máxima - a distância máxima foi uma vez. Esta condição só mostrará que Ma1 agora se tornou menor ou igual a Ma2.
Além disso, a variável maxrange será inicializada com um valor apenas na faixa de linha = (Ma1 - Ma2)/Ponto; Bem, e se a condição if(range > maxrange) nunca ocorrerá, porque você não inicializa a variável maxrange com um valor em qualquer outro lugar no código? Assim, acontece que você está comparando o resultado dos cálculos com o lixo das células de memória. Aqui você tem impressões incompreensíveis como resultado da execução do código.
if(range > maxrange) maxrange = range;
Este é o ponto, eu estava emitindo todos os valores de MA no loop e todos os valores estão corretos, ou seja, todos os valores de MA para este período foram pesquisados. Mas o cálculo está errado neste lugar - intervalo = (Ma1 - Ma2)/Ponto;
if(range > maxrange) maxrange = range;
*Ponto
intervalo = (Ma1 - Ma2)*Ponto
*Ponto
intervalo = (Ma1 - Ma2)*Ponto
O problema é que eu estava emitindo todos os valores de MA no loop, e todos os valores estão corretos, ou seja, todos os valores de MA para este período foram numerados. Mas o cálculo está errado neste lugar - intervalo = (Ma1 - Ma2)/Ponto;
if(range > maxrange) maxrange = range;
Bem, você precisa verificar o que está sendo introduzido. Quais valores variáveis estão envolvidos nos cálculos?
No tutorial MQL no capítulo Funções Padrão na seção Operações Gráficas há uma função WindowHandle com a seguinte descrição: "...retorna o descritor do sistema da janela (alça da janela) contendo o gráfico especificado".
Pergunta: o que significa "puxador de janela" (o que é) e para que serve?
P.S. A fim de não desorganizar o fórum, obrigado antecipadamente por sua resposta