Erros, bugs, perguntas - página 30

 
fvdtrejder:

O mesmo que acima não há necessidade de anexar imagem de ecrã porque imediatamente após lançar mt5setup.e[e] o programa voa imediatamente e diz erro de configuração

Descarreguei o programa para o meu netbook, o programa está a correr e não compreendo o que está errado.

Tem um antivírus ou firewall (qualquer rede e protecção antivírus)? Se assim for, qual deles...
 

Coloco um indicador personalizado no gráfico -->

desenha -->

removê-lo do gráfico -->

desaparece -->

voltar a colocá-lo na tabela -->

e silêncio sem redesenhar quando eu voltar a chamar o indicador ?????????????

Embora por vezes não carregue (em geral, falha flutuante), o indicador é anexado

#property indicator_separate_window
#property indicator_buffers 1
#property indicator_plots   1
//--- plot LRma
#property indicator_label1  "LRma"
#property indicator_type1   DRAW_LINE
#property indicator_color1  Red
#property indicator_style1  STYLE_SOLID
#property indicator_width1  1
input string             symbol      ="EURUSD";
input int                MA_Period   =25;          // период MA
input int                MA_shift    =0;           // сдвиг индикатора
input ENUM_APPLIED_PRICE price       =PRICE_OPEN;  // тип цены 
//--- indicator buffers
double  LRma[],L[],S[],iPoint,iiMA;

int Lwma,Sma;// Хендлы машек
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- indicator buffers mapping
   SetIndexBuffer(0,LRma,INDICATOR_DATA);
   SetIndexBuffer(1,L,INDICATOR_DATA);
   SetIndexBuffer(2,S,INDICATOR_DATA);
   Lwma=iMA(symbol,0,MA_Period+1,MA_shift,MODE_LWMA,price);
   Sma=iMA(symbol,0,MA_Period+1,MA_shift,MODE_SMA,price);
   iPoint=1.0/SymbolInfoDouble(symbol,SYMBOL_POINT);
   iiMA=1.0/MA_Period;
   IndicatorSetString(INDICATOR_SHORTNAME,"LRma_symbol_"+symbol);
//---
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
//---
   int count=rates_total-prev_calculated;
   if(count==0)count=1;
   if(CopyBuffer(Lwma,0,0,count,L)!=-1)
     {
      if(CopyBuffer(Sma,0,0,count,S)!=-1)
        {
         for(int i=0;i<count;i++)
            LRma[i]=(L[i]-S[i])*6*iPoint*iiMA;
        }
     }
//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+
Arquivos anexados:
 
Interesting:
Tem antivírus ou firewall (qualquer rede e protecção antivírus)? Se assim for, qual deles...
 
fvdtrejder:
Há o Dr. Web, eu desliguei-o e é o mesmo
 

E há também esta porcaria em vez do botão [Peritos] na barra de ferramentas Cntl+T


 
Urain:

Coloco um indicador personalizado no gráfico -->

desenha -->

retirá-la do gráfico

desaparece -->

voltar a colocá-lo na tabela -->

e silêncio sem renderização no indicador de recall ?????????????

SZS embora por vezes não carregue (em geral, falha flutuante), o indicador é anexado


Mais uma vez, tudo mais uma vez. Qual é a ideia de escrever um símbolo nos parâmetros (e esquecer de o processar NORMALMENTE no corpo do indicador).

No bloco de inicialização com uma chatice processou este parâmetro, e depois o que fazer com ele é uma questão ...


Em primeiro lugar, aconselho-vos a mudar as linhas do bloco de inicialização para as linhas

//--- indicator buffers mapping
   SetIndexBuffer(0,LRma,INDICATOR_DATA);
   SetIndexBuffer(1,L,INDICATOR_DATA);
   SetIndexBuffer(2,S,INDICATOR_DATA);

   Lwma=iMA(symbol,Period(),MA_Period+1,MA_shift,MODE_LWMA,price);
   Sma=iMA(symbol,Period(),MA_Period+1,MA_shift,MODE_SMA,price);

   iPoint=1.0/SymbolInfoDouble(symbol,SYMBOL_POINT);
   iiMA=1.0/MA_Period;
   IndicatorSetString(INDICATOR_SHORTNAME,"LRma_symbol_"+symbol);
//---

E depois pense novamente no que se passa na sua calculadora...


PS

Em qualquer caso, se quiser indicar o prazo actual, utilize melhor PERÍODO_CURSO ou Período()

 
Urain:

Coloco um indicador personalizado no gráfico -->

desenha -->

removê-lo do gráfico -->

desaparece -->

voltar a colocá-lo na tabela -->

e não silenciar nenhum desenho quando voltar a chamar o indicador ?????????????

COMO, por vezes não consegue carregar (em geral, falhas flutuantes), o indicador é anexado


O meu indicador personalizado funciona de forma estável e sem falhas.

Tenho apenas um tampão para o cálculo do indicador, mas tenho três ligações. Pergunto-me se esta será a razão.

#property indicator_buffers 1
#property indicator_plots   1
   SetIndexBuffer(0,LRma,INDICATOR_DATA);
   SetIndexBuffer(1,L,INDICATOR_DATA);
   SetIndexBuffer(2,S,INDICATOR_DATA);
 
Interesting:

Aqui vamos nós outra vez. Qual é o excesso nos seus parâmetros para escrever que símbolo utilizamos (e esquecer de o processar NORMALMENTE no corpo do indicador).

No bloco de inicialização com uma chatice processou este parâmetro, e depois o que fazer com ele é uma questão ...


Para começar, aconselho a mudar as linhas do bloco de inicialização para estas

E depois pense novamente no que está a acontecer na calculadora do indicador.
Estou um pouco confuso, não encontrei qualquer diferença entre o meu código e o que está a sugerir.
 
DC2008:

Tenho um funcionamento estável e sem falhas do vosso indicador.

Porque é declarado um buffer para o cálculo do indicador, mas três buffers estão ligados? Talvez seja essa a razão?

Talvez, mas por vezes funciona, embora quando estabeleço 3, obtenho 3 valores em nome curto e só preciso de um dos amortecedores principais.
 
Urain:
Estou um pouco confuso, não consegui encontrar qualquer diferença entre o meu código e aquele que sugere.

Aí não se trata de inicialização. E não é sequer sobre essas duas linhas que causam o Mashkeh.

Mesmo que assumamos que o parâmetro SIMON é realmente necessário lá (pessoalmente duvido), o trabalho com amortecedores é coxo, e sobre o bloco da calculadora nem sequer estou a falar...