Discussão do artigo "Distribuições estatísticas no MQL5 - tirando o melhor de R" - página 17

 
Quantum:

Obrigado pela mensagem, você está certo, há um erro na normalização da densidade empírica. Em anexo está a versão corrigida do Math.mqh.


Muito obrigado
 
Outro artigo apresenta o seguinte
построим распределение Correlação LR para 10.000 exemplos independentes, cada um consistindo de 1.000 medições

Como posso obter essa distribuição para dados arbitrários por meio do Include\Math? Ou seja, eu insiro uma matriz de dados originais e, na saída, obtenho uma matriz de distribuição dos dados originais.

R-квадрат как оценка качества кривой баланса стратегии
R-квадрат как оценка качества кривой баланса стратегии
  • 2017.10.24
  • Vasiliy Sokolov
  • www.mql5.com
Каждая торговая стратегия нуждается в объективной оценке ее эффективности. Для этого используется обширный ряд статистических параметров. Многие из них просты в расчете и показывают интуитивно понятные метрики. Другие сложнее в построении и в интерпретации значений. Несмотря на все это многообразие, есть очень мало качественных метрик для...
 
fxsaber:
Outro artigo apresenta o seguinte

Como obter essa distribuição para dados arbitrários por meio do Include\Math? Ou seja, eu insiro uma matriz de dados iniciais e, na saída, obtenho uma matriz de distribuição de dados iniciais.

Um exemplo é fornecido na ajuda - Distribuição normal

 
Rashid Umarov:

Um exemplo é fornecido na ajuda - Distribuição normal

Obrigado! Por que essa função frequentemente necessária do exemplo não está incluída no SB?

//+------------------------------------------------------------------+ 
//| Calcular frequências para o conjunto de dados| 
//+------------------------------------------------------------------+ 
bool CalculateHistogramArray(const double &data[],double &intervals[],double &frequency[], 
                             double &maxv,double &minv,const int cells=10);
 
fxsaber:

Obrigado! Por que esse recurso frequentemente necessário do exemplo não está incluído no SB?

Ele está lá. Aqueles que precisam dele o encontrarão imediatamente, e aqueles que não precisam dele o deixarão de lado

 
Rashid Umarov:

Está bem ali. Aqueles que precisam dela a encontrarão imediatamente, e aqueles que não precisam dela a deixarão de lado

Mesmo no exemplo, ele não é chamado do SB, mas escrito do zero. Onde está no SB? Procurei especificamente por ele (em ME CTRL+SHIFT+F "Histograma") e não consegui encontrá-lo.

 
fxsaber:

Mesmo no exemplo, ele não é chamado do SB, mas escrito do zero. Onde ele está no SB? Procurei especificamente (em ME CTRL+SHIFT+F "Histograma") e não consegui encontrar.

Ah, sim, ele foi escrito como um exemplo na ajuda e não foi incluído nos códigos-fonte da biblioteca.

E pode haver problemas em alguns casos, se não me engano.

 

Функция рассчитывает значение функции логнормального распределения вероятностей с параметрами mu и sigma для массива случайных величин x[]. В случае ошибки возвращает false. Аналогplnorm() в R.

bool MathCumulativeDistributionLognormal(
  const double   &x[],        // [in] Matriz com valores da variável aleatória
  const double   mu,          // [em]  Логарифм математического ожидания (log mean)
  const double   sigma,       // [Logaritmo do desvio padrão (desvio padrão do logaritmo)
  const bool     tail,        // [in]. O sinalizador de cálculo, se verdadeiro, calcula a probabilidade de a variável aleatória não exceder x
  const bool     log_mode,    // [in]. Sinalizador para calcular o logaritmo do valor; se log_mode=true, o logaritmo natural da probabilidade é calculado
  double         &result[]    // [out] Matriz para valores de função de probabilidade
);

Qual é esse valor x?

 
fxsaber:

Mesmo no exemplo, ele não é chamado do SB, mas escrito do zero. Onde ele está no SB? Eu o procurei especificamente (em ME CTRL+SHIFT+F "Histograma"), mas não consegui encontrá-lo imediatamente.

MathProbabilityDensityEmpirical e MathCumulativeDistributionEmpirical (versão corrigida de Math.mqh no número 155) para calcular a densidade empírica (a partir dos dados) e a função de distribuição.

fxsaber:

O que é esse valor x?

Como a função é baseada em vetor e funciona com a matriz x[i], aqui você quer dizer o valor específico de x[i] (o primeiro parâmetro).

O sinalizador tail tem sentido semelhante a lower.tail no R, se tail=true, o valor de cdf(x) é retornado, caso contrário, 1-cdf(x).
Обсуждение статьи "Статистические распределения в MQL5 - берем лучшее из R и делаем быстрее"
Обсуждение статьи "Статистические распределения в MQL5 - берем лучшее из R и делаем быстрее"
  • 2017.10.19
  • www.mql5.com
Опубликована статья Статистические распределения в MQL5 - берем лучшее из R и делаем быстрее: Автор: MetaQuotes Software Corp...
 
Quantum:

MathProbabilityDensityEmpirical e MathCumulativeDistributionEmpirical (versão corrigida de Math.mqh no número 155) para calcular a densidade empírica (a partir dos dados) e a função de distribuição

Como posso usar essas funções para substituir CalculateHistogramArray nesse código-fonte?