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
Só não está claro para nós chukchi porque você diz que estamos tentando subtrair arrays, fazemos como mostrado no dicionário MKL4:
double macurrent=iMAOnArray(ExtBuffer,0,5,0,MODE_LWMA,0); double macurrentslow=iMAOnArray(ExtBuffer,0,10,0,MODE_LWMA,0); double maprev=iMAOnArray(ExtBuffer,0,5,0,MODE_LWMA,1); double maprevslow=iMAOnArray(ExtBuffer,0,10,0,MODE_LWMA,1); //---- if(maprev<maprevslow && macurrent>=macurrentslow) Alert("crossing up");Por favor, avise!
Aqui está o código com o erro
E aqui está um trabalhador
ArrayCopySeries(ma_C, MODE_CLOSE, "EURUSD", PERIOD_H1); ma_6C=ma_C[1]; for(i=2; i<(3*MA_period); i++) { ma_6O+=ma_O[i]; ma_6C+=ma_C[i]; } ma_6C/=(3*MA_period);Existe algum comando padrão que permita ao especialista
para ver a interseção das médias. Por exemplo, uma média de período 5 cruza uma média
do período 20. O Conselheiro Especialista pode ver como pessoa o momento da travessia,
existe uma função ou comando padrão para este tipo de coisa?
A figura abaixo mostra a interseção das médias vermelha e verde como
É um exemplo do que o Expert Advisor deve ver e trabalhar neste sinal.
O M2 é o segundo deslizamento.
Precisamos comparar os sinais das diferenças (M1 - M2)
sobre as barras atuais e anteriores.
Se forem diferentes, isso significa que há um cruzamento.
O caso especial é quando uma das diferenças = 0.
Você pode fazer isso assim
if ((M1[0] - M2[0]) != 0) { double R = 0; for (int i = 1; i < Bars && R == 0; i++) R = (M1[i] - M2[i]); if ((M1[0] - M2[0]) * R < 0) { // Знаки разные, есть пересечение .......... } }(eu mesmo não verifiquei)
não há um padrão.
existe uma função ou comando padrão para tais coisas?
Facilmente
veja o dicionário iMAOnArray, há até um exemplo com interseção
só para o caso de
double macurrent=iMAOnArray(ExtBuffer,0,5,0,MODE_LWMA,0); double macurrentslow=iMAOnArray(ExtBuffer,0,10,0,MODE_LWMA,0); double maprev=iMAOnArray(ExtBuffer,0,5,0,MODE_LWMA,1); double maprevslow=iMAOnArray(ExtBuffer,0,10,0,MODE_LWMA,1); //---- if(maprev<maprevslow && macurrent>=macurrentslow) Alert("crossing up");2Sysadmin, o botão "enter" está escondido novamente. Além disso, até onde eu entendi [pré] foi substituído por [código]?