Calcularel preciomedio en un intervalo dado con un número determinado de aproximaciones.
Hola Hay una matriz de valores.
La tarea consiste en escribir una función.
Parámetros de entrada:
- la matriz contiene los números de elementos necesarios para calcular la mediana - bufInBar[]
- tamaño del array -bufInBar[]- count
- número de aproximaciones a la mediana - fokus
void medianaL0(constint &bufInBar[], int count, int fokus)
Es decir, hay una clase
bufInBar[i] - используется для загрузки нужного элемента при расчете медианы
BP[bufInBar[i]].CenaPerioda; - по этому значению рассчитывается медиана
BP[bufInBar[i]].Period;
En la salida :
BP[bufInBar[i]].Mediana;
Rellenado en orden ascendente, por ejemplo, de 0 a 10.
Es decir, sifokus=10 en la condición, entonces en el intervalo i<cuenta los diez valores
Aleksei Stepanenko: En teoría, la mediana es el valor del elemento que se encuentra en el centro de un conjunto ordenado. ¿Qué es en su caso?
Ejemplo:
Matriz de 30 valores de precios MA, busca el centro de la matriz ordenada.
Obtenemos el valor 15(L0) en el centro de la matriz, luego obtenemos dos matrices de L0 hacia abajo y L0 hacia arriba y encontramos el centro de estas matrices y así sucesivamente hasta obtener el númerofokus (siete valores por ejemplo)
--------------|--------------
-------|--------------|------
---|-------|------|-------|--
fokus=7
| - значение цены
Matriz de 30 valores de precios MA, busca el centro de la matriz ordenada.
Obtenemos 15(L0) como valor en el medio de la matriz, luego obtenemos dos matrices de L0 hacia abajo y L0 hacia arriba y encontramos el medio de estas matrices y así sucesivamente hasta obtener el númerofokus (siete valores por ejemplo)
Y si hay un número par de elementos de la matriz, ¿qué elemento será la mediana, o debe calcularse como la media de dos o algo más?
¿Estoy en lo cierto al suponer que tenemos que encontrar siete percentiles: 12,5, 25, 37,5, 50, 62,5, 75, 87,5?
Si es así, divide el número de elementos de la matriz ordenada por 8 (7+1), y multiplícalo por el número de percentiles que quieras. Obtenemos los siguientes índices de elementos: 3, 7, 11, 15, 18, 22, 26.
int index=ArraySize(bufInBar)*percentile/(fokus+1);
//где percentile - номер нужного перцентиля от 1 до fokus double value=bufInBar[index];
¿Verdad, o voy por el camino equivocado? Si es así, lo más importante es crear un mecanismo parsimonioso para mantener una matriz ordenada.
¿He entendido bien que hay que encontrar siete percentiles: 12,5, 25, 37,5, 50, 62,5, 75, 87,5?
Si es así, divide el número de elementos de la matriz ordenada por 8 (7+1), y multiplícalo por el número del percentil requerido. Obtenemos los siguientes índices de elementos: 3, 7, 11, 15, 18, 22, 26.
¿Verdad, o voy por el camino equivocado? Si es así, lo más importante es crear un mecanismo parsimonioso para mantener una matriz ordenada.
A partir de la matriz de valores MA hay que encontrar la mediana de toda la matriz, luego las medianas de las matrices obtenidas por encima/por debajo de la primera mediana, etc.
Parece correcto entonces, la mediana de la primera parte de la matriz es un cuarto de la matriz total, y es el percentil 25. Y la mediana de la segunda parte es el percentil 75.
Para iniciar sesión y usar el sitio web MQL5.com es necesario permitir el uso de Сookies.
Por favor, active este ajuste en su navegador, de lo contrario, no podrá iniciar sesión.
Ha iniciado sesión. La autenticación de dos factores se ha desactivado. Vuelva a configurarla y escanee un nuevo código QR, o continúe con la autenticación de dos factores desactivada.
Calcularel preciomedio en un intervalo dado con un número determinado de aproximaciones.
Hola Hay una matriz de valores.
La tarea consiste en escribir una función.
Parámetros de entrada:
- la matriz contiene los números de elementos necesarios para calcular la mediana - bufInBar[]
- tamaño del array -bufInBar[]- count
- número de aproximaciones a la mediana - fokus
Es decir, hay una clase
bufInBar[i] - используется для загрузки нужного элемента при расчете медианы BP[bufInBar[i]].CenaPerioda; - по этому значению рассчитывается медиана BP[bufInBar[i]].Period;En la salida :
Rellenado en orden ascendente, por ejemplo, de 0 a 10.
Es decir, sifokus=10 en la condición, entonces en el intervalo i<cuenta los diez valores
será de 1 a 10.
Por ejemplo
No está claro qué es fokus
En teoría, la mediana es el valor del elemento que se encuentra en el centro de un conjunto ordenado. ¿Qué es en su caso?
Ejemplo:
Matriz de 30 valores de precios MA, busca el centro de la matriz ordenada.
Obtenemos el valor 15(L0) en el centro de la matriz, luego obtenemos dos matrices de L0 hacia abajo y L0 hacia arriba y encontramos el centro de estas matrices y así sucesivamente hasta obtener el númerofokus (siete valores por ejemplo)
--------------|-------------- -------|--------------|------ ---|-------|------|-------|-- fokus=7 | - значение ценыEjemplo:
Matriz de 30 valores de precios MA, busca el centro de la matriz ordenada.
Obtenemos 15(L0) como valor en el medio de la matriz, luego obtenemos dos matrices de L0 hacia abajo y L0 hacia arriba y encontramos el medio de estas matrices y así sucesivamente hasta obtener el númerofokus (siete valores por ejemplo)
Y si hay un número par de elementos de la matriz, ¿qué elemento será la mediana, o debe calcularse como la media de dos o algo más?
Ejemplo:
¿Estoy en lo cierto al suponer que tenemos que encontrar siete percentiles: 12,5, 25, 37,5, 50, 62,5, 75, 87,5?
Si es así, divide el número de elementos de la matriz ordenada por 8 (7+1), y multiplícalo por el número de percentiles que quieras. Obtenemos los siguientes índices de elementos: 3, 7, 11, 15, 18, 22, 26.
¿Verdad, o voy por el camino equivocado? Si es así, lo más importante es crear un mecanismo parsimonioso para mantener una matriz ordenada.
Y si la matriz tiene un número par de elementos, ¿qué elemento es la mediana, o debe calcularse como la media de dos o algo así?
Creo que es más fácil tomar un valor entero par.
Si hay 15 elementos, la mediana es 8.
¿He entendido bien que hay que encontrar siete percentiles: 12,5, 25, 37,5, 50, 62,5, 75, 87,5?
Si es así, divide el número de elementos de la matriz ordenada por 8 (7+1), y multiplícalo por el número del percentil requerido. Obtenemos los siguientes índices de elementos: 3, 7, 11, 15, 18, 22, 26.
¿Verdad, o voy por el camino equivocado? Si es así, lo más importante es crear un mecanismo parsimonioso para mantener una matriz ordenada.
A partir de la matriz de valores MA hay que encontrar la mediana de toda la matriz, luego las medianas de las matrices obtenidas por encima/por debajo de la primera mediana, etc.
Parece correcto entonces, la mediana de la primera parte de la matriz es un cuarto de la matriz total, y es el percentil 25. Y la mediana de la segunda parte es el percentil 75.
Esto:
es igual a esto: