[Arquivo!] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por ela. Não poderia ir a lugar algum sem você - 2. - página 313

 
trader_john:

Você pode me dizer o que poderia estar causando esta falha?

Funciona, funciona, tudo está bem, e de repente, de repente, de repente :-(

E, não apenas os pontos são desenhados onde não deveriam estar, mas a janela de dados também mostra dados incorretos (pertinentes à localização dos pontos)

(O indicador mostra extrema, eu mesmo o escrevi )

Após "rebobinar" um período de tempo, tudo se torna normal

Talvez você possa aconselhar qual a forma de "cavar". Ou talvez exista tal tópico no fórum.

Obrigado de antemão!


Escreva um indicador adequado e os problemas desaparecerão
 
Vinin:

Escreva um indicador adequado e os problemas desaparecerão


O que você quer dizer com normal? Se eu soubesse disso, não estaria fazendo perguntas aqui.

A propósito, o indicador Fractals que eu baixei na MQL "faz a mesma coisa".

https://www.mql5.com/ru/code/7982

Então também não está escrito corretamente?

 
trader_john:

Você pode me dizer o que poderia estar causando esta falha?

Funciona, funciona, tudo está bem, e de repente, de repente, de repente :-(

E, não apenas os pontos são desenhados onde não deveriam estar, mas a janela de dados também mostra dados incorretos (pertinentes à localização dos pontos)

(O indicador mostra extrema, eu mesmo o escrevi )

Após "rebobinar" um período de tempo, tudo se torna normal

Talvez você saiba onde "cavar". Ou talvez já exista um tópico no fórum.

Obrigado de antemão!

Escreveu um semelhante, aconteceu da mesma forma que o seu. Notei que se o indicador for calculado por mais de um tick, não haverá duplicação. Talvez seja necessário acrescentar condições mais pesadas ou dormir. Mas eu não sou um programador, apenas uma observação.
 
Operr:
Eu estava escrevendo um semelhante, aconteceu o mesmo que o seu. Notei que, se o indicador for calculado por mais de um tick, não haverá duplicação. Acrescente uma condição mais pesada ou sono. Mas eu não sou um programador, apenas uma observação.


Não entendeu bem. talvez "calcula em mais de 1 barra"?

Lembrei-me de Fractals (MQL4) / retrabalhei para começar a contar a partir da barra 3. Isto é, 2 barras devem terminar depois disso,

No indicador original, ele costumava desenhar um "ponto"...acho que estava na barra nº 2...(i.e. barra zero também foi considerada)

Mas se este ponto foi quebrado antes de 2 barras, ele ficou lá.

e verificou-se que não havia duas barras na parte inferior direita, enquanto o fractal superior era traçado.

Construído em fractal remove a propósito...

Ok... Vou pensar sobre isso.

 
Operr:
Acrescente uma condição mais pesada ou sono.
Para informação - Dormir não funciona em indicadores.
 

Como faço para que o MA conte um para o alto e outro para o baixo?


// Critérios comerciais
MA_1_t=iMA(NULL,0,Período_MA_1,0,MODE_LWMA,PRICE_TYPICAL,0); // MA_1
MA_2_t=iMA(NULL,0,Período_MA_2,0,MODE_LWMA,PRICE_TYPICAL,0); // MA_2
MA_3_t=iMA(NULL,0,Period_MA_3,0,MODE_LWMA,PRICE_TYPICAL,0); // MA_3

if (MA_2_t > MA_3_t + Rastvor*Point) // Se diferença entre
{ // .MA_2_t + Rastvor*Point { .MA 2 e 3 grande
Opn_B=verdadeiro; // Abrir Critério de Compra
Cls_S=verdadeiro; // Fechar Critério de Venda } (MA_2_t + Rastvor*Point) if (MA_2_t > MA_3PICAL) Vender
}
if (MA_1_t < MA_3_t - Rastvor*Point) // Se a diferença entre
{ // ..MA 1 e 3 for grande
Opn_S=true; // Critério aberto Vender
Cls_B=true; // Critério fechado Comprar Cls_B=true; // Critério fechado Vender } } Vender somente // MA 1 e 3 for grande. Compre

}



Eu quero que MA_1 seja ajustado para Alto e MA2 para Baixo.

MA_2 ser ajustado para Baixo

MA_3 deve ser definido como Close

E como fazer todos os movimentos iguais ao SMA

 
NROST:

Como faço para que o MA conte um para o alto e outro para o baixo?


// Critérios comerciais
MA_1_t=iMA(NULL,0,Period_MA_1,0,MODE_LWMA,PRICE_TYPICAL,0); // MA_1
MA_2_t=iMA(NULL,0,Period_MA_2,0,MODE_LWMA,PRICE_TYPICAL,0); // MA_2
MA_3_t=iMA(NULL,0,Period_MA_3,0,MODE_LWMA,PRICE_TYPICAL,0); // MA_3

se (MA_2_t > MA_3_t + Rastvor*Point) // se a diferença entre
{ // ...MA_2 e 3 é grande
Opn_B=true; // Critério de compra aberta
Cls_S=verdadeiro; // Critério de fechamento Venda
}
if (MA_1_t < MA_3_t - Rastvor*Point) // Se a diferença entre
{ // ...MA_1 e 3 é grande
Opn_S=verdadeiro; //critério de Venda Aberta
Cls_B=true; //Click criteria Compre

}



Eu quero que MA_1 seja ajustado para Alto e MA2 para Baixo.

MA_2 ser ajustado para Baixo

MA_3 deve ser definido como Close

E como fazer todas as zonas para ser SMA



Todas as respostas estão lá dentro
 
Vinin:

Todas as respostas estão lá dentro.
obrigado
 

Pessoal, sua ajuda é necessária.

Há condições comerciais, definidas como: Compre se a linha %D de estocásticos cruzar 30, a barra anterior deve ser inferior a 29 (portanto, a barra cruza de baixo para cima). No testador, estabeleci um período de tempo curto em um período de hora para contar o número de sinais manualmente e compará-lo com as leituras da EA. Eu deveria receber 6 sinais, mas a EA apenas exibe uma parede de texto com sinais de compra, e idealmente deveria haver apenas 6.


Aqui está o código do Expert Advisor, talvez alguém possa me dizer o que estou fazendo de errado?


// Значения торговли
extern double TP = 100;
extern double Lots = 0.1;
extern double SL = 50;
// Значения стохастика
extern int Dperiod = 24;
extern int Kperiod = 3;
extern int Slowing = 6;
extern int St_buy = 30;
extern int St_sell = 70;
int signal;
int ticket;



int Stoch(int st_bars = 0, int st_type = 0){  // 1 параметр - бары, 2 параметр - тип линии.

   int st_result;
   
   if (st_type == 0 || st_type == 1 && st_bars >= 0){
      st_result = iStochastic(NULL,0,Dperiod,Kperiod,Slowing,MODE_SMA,0,st_type,st_bars);
      if (st_result > -1) return(st_result);
   }
   else return(-1);
   
   return(0);
}

int Criterion() // 10 - open buy, 11 - close buy, 20 - open sell, 21 - close sell.
{
   int St_M, St_S;
   St_M = Stoch();
   St_S = Stoch(0,1);
  
   if (St_M >= St_buy && Stoch(1,0) < (St_buy-1)) return(10);
   
   return(0);
}

int start()
{
   if (Criterion() == 10 && AccountFreeMargin() > Lots*5000){
      
    ticket = OrderSend(Symbol(), OP_BUY, Lots, Ask, 3, Bid - SL * Point, Ask + TP * Point, "My order #", 16384, 0, Green);
   }
   return(0);
}
 
trader_john:

Você pode me dizer o que poderia estar causando esta falha?

Funciona, funciona, tudo está bem, e de repente, de repente, de repente :-(

E, não apenas os pontos são desenhados onde não deveriam estar, mas a janela de dados também mostra dados incorretos (pertinentes à localização dos pontos)

(O indicador mostra extrema, eu mesmo o escrevi )

Após "rebobinar" um período de tempo, tudo se torna normal

Talvez você saiba onde "cavar". Ou talvez exista tal tópico no fórum.

Obrigado de antemão!


Tudo antes de você já foi roubado - é como MasterForex versão 5... Há também a versão 4, mas ainda não consigo encontrá-la, se você precisar dela eu a encontrarei.