Mas por que não funciona em uma combinação como esta?
Embora na figura abaixo tudo se encaixe
Nada ali converge. Muitas vezes acontece que o preço é mais alto do que MA no carrapato anterior, e o preço já é menor do que MA neste carrapato, mas a igualdade exata não acontece, ou acontece tão raramente que ninguém jamais o viu. Especialmente, não pode ser visto em carrapatos de teste. Não pode ser visto na tabela. E para subtrair uma unidade inteira do preço duplo e depois compará-la com MA, como"PC--> MA" - não servirá em nada, tal comparação nunca obterá a verdade.
Estou escrevendo um indicador. Preciso de um indicador separado na janela superior - dados novos (valores de tick) a serem desenhados à direita - como o preço - com uma seta verde.
Eu edito indicador do tutorial - meus novos dados (novos valores de tick) são desenhados à esquerda - seta vermelha...
Ajude-me a mudar o desenho deles. Estar à direita, como no preço e como no indicador superior em uma janela separada do terminal. Obrigado.
//--------------------------------------------------------------------// separatewindow.mq4 // Предназначен для использования в качестве примера в учебнике MQL4.//--------------------------------------------------------------------#property indicator_separate_window// Отображение в отдельном окне#property indicator_buffers1// Количество буферов#property indicator_color1 Blue // Цвет первой линии#property indicator_color2 Red // Цвет второй линииexternint History =100; // Колич.баров в расчётной истории//extern int Aver_Bars=5; // Количество баров для расчётаdouble Buf_0[]; // Объявление индикаторного массиваint Count=0; // Глобальная перемен.//--------------------------------------------------------------------int init() // Специальная функция init()
{
SetIndexBuffer(0,Buf_0); // Назначение массива буферу
SetIndexStyle (0,DRAW_LINE,STYLE_SOLID,2);// Стиль линии//--- установим индексацию для буфера как в таймсерииArraySetAsSeries(Buf_0,true);
return(0); // Выход из спец. ф-ии init()
}
//--------------------------------------------------------------------int start() // Специальная функция start()
{
int i, // Индекс бара
n, // Формальный параметр
Counted_bars; // Количество просчитанных баров double
Sum_H, // Сумма значений High за период
Sum_L; // Сумма значений Low за период//--------------------------------------------------------------------/* Counted_bars=IndicatorCounted(); // Количество просчитанных баров
i=Bars-Counted_bars-1; // Индекс первого непосчитанного
if (i>History-1) // Если много баров то ..
i=History-1; // ..рассчитывать заданное колич.
while(i>=0) // Цикл по непосчитанным барам
{
Sum_H=0; // Обнуление в начале цикла
Sum_L=0; // Обнуление в начале цикла
for(n=i;n<=i+Aver_Bars-1;n++) // Цикл суммирования значений
{
Sum_H=Sum_H + High[n]; // Накопление суммы макс.значений
Sum_L=Sum_L + Low[n]; // Накопление суммы мин. значений
}
Buf_0[i]=(Sum_H-Sum_L)/Aver_Bars;// Знач. 0 буфера на i-ом баре
i--; // Расчёт индекса следующего бара
*/double Price = NormalizeDouble(MarketInfo(_Symbol,MODE_BID),Digits);
Buf_0[Count] = Price;
Count++; // Счётчик тиковComment ("Новый тик ",Count," Цена = ",Price);// Сообщение//--------------------------------------------------------------------return(0); // Выход из спец. ф-ии start()
}
Nada aí cabe. Acontece frequentemente que no tick anterior o preço está acima do MA, e neste tick o preço já está abaixo do MA, mas a igualdade exata não acontece, ou acontece tão raramente que ninguém jamais viu. Especialmente, não pode ser visto em carrapatos de teste. Não pode ser visto na tabela. Bem, subtrair uma unidade inteira do preço e depois compará-la com MA, como"PC-- > MA" - não funciona de forma alguma, tal comparação nunca retornará a verdade.
Eu peguei, obrigado! Basta me dizer algo para o futuro: por exemplo, se eu tiver uma linha (pode ser um muving), como devo escrever, que quando o preço Ask chegar a essa linha, uma ordem de compra será aberta? ))
inuboh: Eu peguei, obrigado! Você pode me dizer algo para o futuro: por exemplo, se eu tiver uma linha (pode ser um muving), como posso escrever, que quando o preço Ask atingir essa linha, uma ordem de compra será aberta? ))
Se Ask(1) for menor que MA e Ask(0) for maior ou igual a MA, ou seja, um touch-down abaixo, você pode comprar. Mas no próximo período o preço pode "mudar de idéia" e ir ainda mais baixo, é normal, tal é o mercado.
Para login e uso do site MQL5.com, você deve ativar o uso de cookies.
Ative esta opção no seu navegador, caso contrário você não poderá fazer login.
Você entrou na conta. A autenticação de dois fatores foi desativada. Configure-a novamente e escaneie um novo código QR ou continue com a autenticação de dois fatores desativada.
Meu entendimento é que PC-- > MA é o mesmo que PC-1 > MA
Mas por que não funciona em uma combinação como esta?
Embora, na figura abaixo, tudo isso se soma.
Funciona! Mas por que não funciona nesta combinação?
Embora na figura abaixo, tudo se encaixe.
Mas por que não funciona em uma combinação como esta?
Embora na figura abaixo tudo se encaixe
Nada ali converge. Muitas vezes acontece que o preço é mais alto do que MA no carrapato anterior, e o preço já é menor do que MA neste carrapato, mas a igualdade exata não acontece, ou acontece tão raramente que ninguém jamais o viu. Especialmente, não pode ser visto em carrapatos de teste. Não pode ser visto na tabela. E para subtrair uma unidade inteira do preço duplo e depois compará-la com MA, como"PC--> MA" - não servirá em nada, tal comparação nunca obterá a verdade.
Bom dia a todos vocês. Uma palavra de conselho...
Estou escrevendo um indicador. Preciso de um indicador separado na janela superior - dados novos (valores de tick) a serem desenhados à direita - como o preço - com uma seta verde.
Eu edito indicador do tutorial - meus novos dados (novos valores de tick) são desenhados à esquerda - seta vermelha...
Ajude-me a mudar o desenho deles. Estar à direita, como no preço e como no indicador superior em uma janela separada do terminal. Obrigado.
Olá a todos!
Pergunta:
bilhete = OrderSend(blah, blah, blah, blah, ......................)
Depois de rever o tutorial, documentação, artigos e fórum, vi essa variável doticket - alguns a colocam dentro da função OnTick()
- Outros a colocam do lado de fora (tornando-a externa).ou seja, na frente de (tornando-o externo, eles fizeram um estatuto)
- alguns simplesmente o declaram ( int ticket; )
- outros o atribuem a 0 (que é o mesmo que uma simples declaração)
- outros atribuem -1
Se isso for significativo (exceto em casos individuais), poderia levar a erros, se for o caso, como é correto? ? ?
Obrigado!
Nada aí cabe. Acontece frequentemente que no tick anterior o preço está acima do MA, e neste tick o preço já está abaixo do MA, mas a igualdade exata não acontece, ou acontece tão raramente que ninguém jamais viu. Especialmente, não pode ser visto em carrapatos de teste. Não pode ser visto na tabela. Bem, subtrair uma unidade inteira do preço e depois compará-la com MA, como"PC-- > MA" - não funciona de forma alguma, tal comparação nunca retornará a verdade.
Olá, sou novo aqui. Alguém pode por favor me dizer ou me dar um link onde eu possa aprender a usar a funcionalidade completa do mt4
Eu peguei, obrigado! Você pode me dizer algo para o futuro: por exemplo, se eu tiver uma linha (pode ser um muving), como posso escrever, que quando o preço Ask atingir essa linha, uma ordem de compra será aberta? ))