Pon "Me gusta" y sigue las noticias
Deje un enlace a él, ¡qué los demás también lo valoren!
Evalúe su trabajo en el terminal MetaTrader 5
Funciones Statistics.mqh - librería para MetaTrader 5
- Visualizaciones:
- 1839
- Ranking:
- Publicado:
- 2014.01.14 12:47
- Actualizado:
- 2016.11.22 07:33
- ¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa
Esta biblioteca contiene un conjunto de funciones estadísticas básicas necesarias para el procesamiento de datos de usuario.
Esta biblioteca fue publicada por primera vez en CodeBase de MQL4 - biblioteca de funciones Statistica.mqh. Algunos errores se han detectado y corregido durante la transferencia de las funciones a MQL5. El código se ha vuelto más intuitivamente claro. La mayoría de las funciones se han escrito utilizando los algoritmos del libro "Estadísticas para los traders" de S.Bulashov.
Las funciones de la biblioteca son los siguientes:
Función | Descripción |
---|---|
Mediana | Cálculo de la Mediana |
Mediana50 | Cálculo de la Mediana en el rango intercuartílico del 50% |
Average | Cálculo de la media aritmética de la muestra |
Average50 | Cálculo de la media aritmética de la muestra en el rango intercuartílico del 50% |
SweepCenter | Cálculo del centro Sweep |
AverageOfEvaluations | Cálculo de la mediana de las cinco evaluaciones anteriores |
Variance | Cálculo de la varianza de la muestra |
ThirdCentralMoment | Cálculo del tercer momento centrado |
FourthCentralMoment | Cálculo del cuarto momento centrado |
Asymmetry | Cálculo de la asimetría de la muestra |
Excess | Cálculo de la curtosis de la muestra |
Excess2 | Otro método para el cálculo de la curtosis de la muestra |
Gamma | Cálculo de la función gamma de Euler, x>0. |
GammaStirling | Cálculo del valor de la función gamma de Euler, para x>33 (aproximación de Stirling). |
VarianceOfSampleVariance | Cálculo de la varianza de la varianza de una muestra |
VarianceOfStandartDeviation | Cálculo de la varianza de una desviación típica |
VarianceOfAsymmetry | Cálculo de la varianza de la asimetría de la muestra |
VarianceOfExcess | Cálculo de la varianza de la curtosis de la muestra |
VarianceOfAverage | Cálculo de la varianza de la media de la muestra |
Log | Cálculo del Logaritmo |
CensorCoeff | Cálculo del ratio de censura |
HistogramLength | Cálculo del número óptimo de columnas del histograma |
Resize | Cálculo del número óptimo de elementos de la matriz para el histograma |
Histogram | Creación del histograma para el fichero *.csv |
Cov | Cálculo de la covarianza de la muestra |
Corr | Cálculo de la correlación de la muestra |
VarianceOfCorr | Cálculo de la varianza de la correlación de la muestra |
AutoCorr | Cálculo de la autocorrelación |
AutoCorrFunc | Función de cálculo de autocorrelación |
aCoeff | Cálculo de la constante a en la ecuación de regresión lineal (y=a*x+b) |
bCoeff | Cálculo de la constante b en la ecuación de regresión lineal (y=a*x+b) |
LineRegresErrors | Cálculo de los errores de regresión lineal |
eVariance | Cálculo de la varianza de los errores de regresión lineal |
aVariance | Cálculo de la varianza de la constante a de la regresión lineal |
bVariance | Cálculo de la varianza de la constante b de la regresión lineal |
DeterminationCoeff | Cálculo del coeficiente de determinación |
ArraySeparate | Divide la matriz arr[n][2] en dos matrices |
ArrayUnion | Une dos matrices en la matriz de tipo arr[n][2] |
WriteArray | Escribe la matriz de una dimensión en el fichero *.csv |
WriteArray2 | Escribe la matriz bidimensional en el fichero *.csv |
El fichero puede ser incluido en los proyectos que requieren el procesamiento de parámetros de muestras al azar, sus parámetros de evaluación, histogramas, etc.
Vamos a examinar las llamadas a algunas funciones:
//+------------------------------------------------------------------+ //| test.mq5 | //| Copyright 2012, MetaQuotes Software Corp. | //| http://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2012, MetaQuotes Software Corp." #property link "http://www.mql5.com" #property version "1.00" #include <Statistics.mqh> //+------------------------------------------------------------------+ //| Función de inicio del programa Script | //+------------------------------------------------------------------+ void OnStart() { //--- especificando dos muestras de valores. double arrX[10]={3,4,5,2,3,4,5,6,4,7}; double arrY[10]={7,4,1,2,1,6,9,2,1,5}; //--- calculando la media double mx=Average(arrX); double my=Average(arrY); //--- usando la media para calcular la varianza double dx = Variance(arrX,mx); double dy = Variance(arrY,my); //--- Valor asimetría y curtosis double as=Asymmetry(arrX,mx,dx); double exc=Excess(arrX,mx,dx); //--- Valores de covarianza y correlación double cov=Cov(arrX,arrY,mx,my); double corr=Corr(cov,dx,dy); //--- escribe los resultados en el fichero de registro PrintFormat("mx=%.6e",mx); PrintFormat("my=%.6e",my); PrintFormat("dx=%.6e",dx); PrintFormat("dy=%.6e",dy); PrintFormat("As=%.6e",as); PrintFormat("exc=%.6e",exc); PrintFormat("cov=%.6e",cov); PrintFormat("corr=%.6e",corr); }
Como puede observar, la mayoría de las funciones requieren valores (como parámetros de entrada) que pueden calcularse utilizando otras funciones.
Por ejemplo:
double dx = Variance(arrX,mx);
Para calcular la varianza, tenemos que calcular primero la media. Eso le da una cierta ventaja en cuanto a la optimización de los cálculos. En caso de que sea necesario calcular la varianza por varias veces, será mejor calcular la media una vez en lugar de hacerlo en diversas ocasiones dentro de la función. Eso reducirá el tiempo.
Esta característica se aplica a la mayoría de las funciones de la biblioteca.
Traducción del ruso realizada por MetaQuotes Ltd
Artículo original: https://www.mql5.com/ru/code/866
Este indicador se utiliza para el cálculo de la tendencia.
ColorChartSencillo script para modificar aleatoriamente los colores de su gráfico. ¡Basta con hacer clic y ver los resultados!
Activa la "Descripción de Objetos del gráfico" para los no programadores. Para cualquier ventana de gráfico abierta.
Precio en Canal de BollingerEl indicador traza (en una ventana separada) las Bandas de Bollinger en relación a la media móvil y la proyección de las barras de precios.