Erros, bugs, perguntas - página 774

 
Karlson:

Não sabia que linha escrever em ))))

Depo inicial 10000.Isto é antes da actualização de ontem.

Como é que funcionou? Pode dar o código e a descrição das condições de teste no servicedesk?
 
Urain:

A OnTradeTransaction desencadeia o evento comercial, ou tem o seu próprio evento?

Se ambas as funções são desencadeadas pelo mesmo evento, qual é a ordem? O que é desencadeado primeiro pela OnTrade() ou OnTradeTransaction()?

Não se pode continuar assim.

Coloque uma impressão e veja - demorará um minuto.

 

Está tudo aí. Além do meu perito...#419548

Foi assim que comecei a testar a prata...

Há um consumo de memória incompreensível de três barris de um barril.

 
Renat:

Eles complementam-se mutuamente, com a OnTradeTransaction a cobrir totalmente a funcionalidade OnTrade.

A OnTradeTransaction dá-lhe acesso ao fluxo de transacções em bruto e permite-lhe monitorizar o processo de execução da transacção em detalhe.

As funções funcionam independentemente e o fluxo de transacções na OnTradeTransaction é muito maior e mais detalhado. A OnTradeTransaction tem a sua própria fila a partir da qual os comandos são emitidos.

ps: basta definir uma imagem abaixo destas funções e ver por si mesmo

Isto é, a OnTrade é agora uma versão cortada da OnTradeTransaction ?

ou é possível obter algo na OnTrade que não possa estar na OnTradeTransaction?

 
Urain:

Então a OnTrade é agora uma versão descascada da OnTradeTransaction ?

Ou é possível obter algo da OnTrade que não possa ser da OnTradeTransaction?

OnTrade é o mesmo que era - apenas uma notificação "algumas mudanças ocorreram na base de dados de operações comerciais " sem quaisquer detalhes. O próprio comerciante tem de ir à base de dados e ver o que realmente mudou.

A OnTradeTransaction fornece, passo a passo, transacções individuais absolutamente precisas e detalhadas. Aqui cada transacção é dada numa bandeja, sem necessidade de procurar alterações na base de dados.

Fizeram exactamente o que pediram - deram um controlo total e detalhado de todas as transacções relacionadas com operações comerciais. E é fácil apanhar quaisquer alterações feitas no lado do servidor: desencadeamento de paragens, encomendas, capotamentos e assim por diante.

 
Renat:

OnTrade é o mesmo que era - apenas uma notificação dizendo "algumas mudanças foram feitas na base de operações comerciais " sem quaisquer detalhes. O próprio comerciante tem de ir à base de dados e ver o que realmente mudou.

A OnTradeTransaction fornece, passo a passo, transacções individuais absolutamente precisas e detalhadas. Cada transacção é apresentada numa bandeja, não há necessidade de procurar alterações na base de dados.

Fizeram exactamente o que pediram - deram um acompanhamento completo e detalhado de todas as transacções relacionadas com operações comerciais. E todas as alterações feitas no lado do servidor são fáceis de apanhar: desencadeamento de paragens, encomendas, capotamentos, etc.

Obrigado, é muito inteligente. Agora estou a testá-lo, é muito conveniente e funcional.
 

Pode por favor dizer-me se a função CopyBuffer pode ser utilizada numa função de inicialização?

input int      n_analyzed_bars=50;

input int      shift_offset=0; 

input string   symb1="GBPUSD";

input ENUM_MA_METHOD   ma_method=MODE_SMA;

input ENUM_APPLIED_PRICE   applied_price=PRICE_CLOSE;  

//--- indicator buffers 

double                   MainMaBuffer[];

double                   MaBuffer1[]; 

//--- MA handles

int                      MainMaHandle;

int                      MaHandle1; 

int OnInit()

  { 

SetIndexBuffer(0,instsymBuffer,INDICATOR_DATA);

SetIndexBuffer(13,MainMaBuffer,INDICATOR_CALCULATIONS);

ArraySetAsSeries(MainMaBuffer,true);

ArraySetAsSeries(MaBuffer1,true);

 

MaHandle1 = iMA(symb1,0,1,0,ma_method,applied_price);

MainMaHandle = iMA(_Symbol,0,1,0,ma_method,applied_price); 

if(CopyBuffer(MaHandle1,0,0,n_analyzed_bars+shift_offset+2,MaBuffer1)<=0) 

    {

      Print("Getting MA is failed! Error",GetLastError());      

      return(0);

    }

erro 4806 e 4007

ERR_INDICATOR_DATA_NOT_FOUND

4806

Dados solicitados não encontrados

ERR_ARRAY_RESIZE_RESIZE_ERROR

4007

Memória insuficiente para relocalizar uma matriz ou para tentar redimensionar uma matriz estática

 
Neofit:

Pode por favor dizer-me se a função CopyBuffer pode ser utilizada numa função de inicialização?

erro 4806

ERR_INDICATOR_DATA_NOT_FOUND

4806

Os dados solicitados não foram encontrados

Se criar um indicador no inite, é melhor mover a leitura dos seus dados para OnTick ou OnCalculate, porque é necessário tempo após a criação do indicador para que este seja calculado.

Por outras palavras, criou o indicador no inite e à esquerda. No ponto de operação OnTick/OnCalculate verificar a disponibilidade dos dados através do CopyBuffer e também deixar o cálculo até os dados aparecerem.

É assim que se inicializa e se trabalha com indicadores escravos/dependentes complexos.

 
Renat:

Se criar um indicador no inite, é melhor mover a leitura dos seus dados para OnTick ou OnCalculate, porque é necessário tempo após a criação do indicador para que este seja calculado.

Ou seja, criou o indicador no inite e à esquerda. No ponto de operação OnTick/OnCalculate verificar a disponibilidade dos dados através do CopyBuffer e também deixar o cálculo até os dados aparecerem.

Desta forma, é necessário inicializar e trabalhar com indicadores escravos/dependentes complexos.

Obrigado pelo seu feedback.

Estou a escrever um indicador...infelizmente, o conceito de indicador assume - que quando chegarmos à OnCalculate o par óptimo será seleccionado, suspeito que soa pouco claro.

Em geral, na função OnCalculate já devemos utilizar os resultados dos cálculos e análises que foram efectuados no On Init.

Não podemos transferir estes cálculos para a OnCalculate porque não temos tempo para realizar todos os cálculos entre dois tiques consecutivos...

 
antt:
Sim. Infelizmente, há um erro na entrega deste objecto na construção. Será fixado na próxima construção. Pedimos desculpa por isso.

Estou a ver, obrigado. E que tal...

Silencioso:

...

Os outros objectos(ventilador de Gann, arcos) serão acabados?

Sobre a questão de "desviar" ao mudar a janela?