Discusión sobre el artículo "Distribuciones Estadísticas en MQL5: tomando lo mejor de R" - página 17

 
Quantum:

Gracias por el mensaje, tienes razón, hay un error en la normalización de la densidad empírica. Adjunto la versión corregida de Math.mqh.


Gracias
 
Otro artículo dice lo siguiente
построим распределение Correlación LR para 10.000 ejemplos independientes, cada uno compuesto por 1.000 medidas

¿Cómo puedo obtener dicha distribución para datos arbitrarios mediante Include\Math? Es decir, introduzco una matriz de datos originales, y en la salida obtengo una matriz de distribución de los datos originales.

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

¿Cómo obtener dicha distribución para datos arbitrarios mediante Include\Math? Es decir, introduzco un array de datos iniciales, y en la salida obtengo un array de distribución de datos iniciales.

Un ejemplo se da en la ayuda - Distribución normal

 
Rashid Umarov:

En la ayuda se ofrece un ejemplo - Distribución normal

Gracias ¿Por qué no se incluye en la SB esta función tan necesaria del ejemplo?

//+------------------------------------------------------------------+ 
//| Calcular frecuencias para el conjunto de datos| 
//+------------------------------------------------------------------+ 
bool CalculateHistogramArray(const double &data[],double &intervals[],double &frequency[], 
                             double &maxv,double &minv,const int cells=10);
 
fxsaber:

Gracias. ¿Por qué no se incluye en la SB esta característica tan necesaria del ejemplo?

Está ahí. Los que la necesiten la encontrarán inmediatamente, y los que no la necesiten la pasarán por alto.

 
Rashid Umarov:

Está ahí mismo. Los que lo necesiten lo encontrarán enseguida, y los que no lo necesiten pasarán de largo

Incluso en el ejemplo, no se llama desde el SB, sino que se escribe desde cero. ¿Dónde está en la SB? Lo busqué específicamente (en ME CTRL+SHIFT+F "Histograma"), no lo encontré.

 
fxsaber:

Incluso en el ejemplo no se llama desde la SB, sino que se escribe desde cero. ¿Dónde está en la SB? Busqué específicamente (en ME CTRL+SHIFT+F "Histograma"), no pude encontrarlo.

Ah, sí. Se escribió como ejemplo en la ayuda y no se incluyó en las fuentes de la biblioteca.

Y puede haber problemas en algunos casos, si no me equivoco.

 

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

bool MathCumulativeDistributionLognormal(
  const double   &x[],        // [in] Matriz con los valores de la variable aleatoria
  const double   mu,          // [en]  Логарифм математического ожидания (log mean)
  const double   sigma,       // [Logaritmo de la desviación típica (desviación estándar logarítmica)
  const bool     tail,        // [in]. Indicador de cálculo, si es verdadero, calcula la probabilidad de que la variable aleatoria no supere x
  const bool     log_mode,    // [in]. Indicador para calcular el logaritmo del valor, si log_mode=true, se calcula el logaritmo natural de la probabilidad
  double         &result[]    // [out] Matriz para los valores de la función de probabilidad
);

¿Cuál es ese valor x?

 
fxsaber:

Incluso en el ejemplo no se llama desde la SB, sino que se escribe desde cero. ¿Dónde está en la SB? Lo busqué específicamente (en ME CTRL+SHIFT+F "Histograma"), no lo encontré enseguida.

Existen MathProbabilityDensityEmpirical y MathCumulativeDistributionEmpirical (versión corregida de Math.mqh en #155) para calcular la densidad empírica (a partir de los datos) y la función de distribución.

fxsaber:

¿Qué es este valor x?

Dado que la función está basada en vectores y trabaja con la matriz x[i], aquí se refiere al valor específico de x[i] (el primer parámetro).

La bandera tail tiene un sentido similar a lower.tail en R, si tail=true, se devuelve el valor de cdf(x), en caso contrario 1-cdf(x).
Обсуждение статьи "Статистические распределения в MQL5 - берем лучшее из R и делаем быстрее"
Обсуждение статьи "Статистические распределения в MQL5 - берем лучшее из R и делаем быстрее"
  • 2017.10.19
  • www.mql5.com
Опубликована статья Статистические распределения в MQL5 - берем лучшее из R и делаем быстрее: Автор: MetaQuotes Software Corp...
 
Quantum:

Existen MathProbabilityDensityEmpirical y MathCumulativeDistributionEmpirical (versión corregida de Math.mqh en #155) para calcular la densidad empírica (a partir de los datos) y la función de distribución.

¿Cómo puedo utilizar estas funciones para reemplazar CalculateHistogramArray en esta fuente?