你是如何对MA饲料集群的检测进行算法的? - 页 6 12345678910111213...18 新评论 Mikhail Toptunov 2020.09.08 05:55 #51 计算给定区间上的中位价,并有一定数量的近似值。 你好,有一个数组的值。 任务是写一个函数。 输入参数。 - 该数组包含计算中位数所需元素的数量 - bufInBar[] - 阵列大小 -bufInBar[]- count - 中位数近似值的数量 - fokus void medianaL0(const int &bufInBar[], int count, int fokus) 就是说,有一个类 bufInBar[i] - используется для загрузки нужного элемента при расчете медианы BP[bufInBar[i]].CenaPerioda; - по этому значению рассчитывается медиана BP[bufInBar[i]].Period; 在输出方面: BP[bufInBar[i]].Mediana; 按升序填写,例如从0到10。 也就是说,如果条件中fokus=10,那么 在区间i<计数的10个值中 BP[bufInBar[i]].Mediana; 将是1到10。 比如说 BP[3256].Mediana=0; BP[6256].Mediana=1; BP[9256].Mediana=2; ... Dmitry Fedoseev 2020.09.08 11:43 #52 不清楚什么是重点 Aleksei Stepanenko 2020.09.08 21:27 #53 从理论上讲,中位数是一个有序数组中间的元素的值。在你的情况下,它是什么? Mikhail Toptunov 2020.09.09 03:14 #54 Dmitry Fedoseev: 不清楚什么是fokus Aleksei Stepanenko: 在理论上,中位数是一个有序数组中间的元素的值。在你的情况下,它是什么? 例子。 30个MA价格值的数组,寻找有序数组的中间。 我们在数组的中间得到15(L0) 的值,然后我们从L0向下和L0向上得到两个数组,并找到这些数组的中间,以此类推,直到我们得到fokus 数(例如七个值)。 --------------|-------------- -------|--------------|------ ---|-------|------|-------|-- fokus=7 | - значение цены Dmitry Fedoseev 2020.09.09 05:21 #55 Mikhail Toptunov:例子。30个MA价格值的数组,寻找有序数组的中间。我们得到15(L0) 作为数组中间的值,然后我们从L0向下和L0向上得到两个数组,并找到这些数组的中间,以此类推,直到我们得到fokus 数(例如七个值)。 如果有偶数个数组元素,哪个元素将是中位数,还是应该按两个的平均数或其他方式计算? Aleksei Stepanenko 2020.09.09 07:48 #56 Mikhail Toptunov:例子。 我认为我们需要找到七个百分位数:12.5、25、37.5、50、62.5、75、87.5,这样的假设正确吗? 如果是这样,用有序数组中的元素数除以8(7+1),再乘以你想要的百分位数。我们得到以下元素指数。3, 7, 11, 15, 18, 22, 26. int index=ArraySize(bufInBar)*percentile/(fokus+1); //где percentile - номер нужного перцентиля от 1 до fokus double value=bufInBar[index]; 对,还是我走错了路?如果是这样,这里最重要的是建立一个维护有序数组的简明机制。 Aleksey Nikolayev 2020.09.09 09:03 #57 为什么不能使用MathQuantile()? Mikhail Toptunov 2020.09.09 09:05 #58 Dmitry Fedoseev:如果数组有偶数个元素,哪个元素是中位数,还是应该计算成两个元素的平均数或其他? 我认为取一个偶数的整数值比较容易。 如果有15个元素,那么中位数就是8。 Mikhail Toptunov 2020.09.09 09:48 #59 Aleksei Stepanenko:我的理解是否正确,我们需要找到七个百分位数:12.5,25,37.5,50,62.5,75,87.5?如果是这样,用有序数组中的元素数除以8(7+1),再乘以所需百分数的数量。我们得到以下元素指数。3, 7, 11, 15, 18, 22, 26. 对,还是我走错了路?如果是这样,这里最重要的是建立一个维护有序数组的简明机制。 从MA值的阵列中,你需要找到整个阵列的中位数,然后是在第一个中位数之上/之下得到的阵列的中位数,等等。 Aleksei Stepanenko 2020.09.09 09:54 #60 那么看来是对的,数组第一部分的中位数是总数组的四分之一,它是25分位数。而第二部分的中位数是75百分位。 这一点。 --------------|--------------- -------|--------------|------- ---|-------|------|-------|--- 等于这个。 ---|---|---|---|---|---|---|--- 12345678910111213...18 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
计算给定区间上的中位价,并有一定数量的近似值。
你好,有一个数组的值。
任务是写一个函数。
输入参数。
- 该数组包含计算中位数所需元素的数量 - bufInBar[]
- 阵列大小 -bufInBar[]- count
- 中位数近似值的数量 - fokus
就是说,有一个类
bufInBar[i] - используется для загрузки нужного элемента при расчете медианы BP[bufInBar[i]].CenaPerioda; - по этому значению рассчитывается медиана BP[bufInBar[i]].Period;
在输出方面:
按升序填写,例如从0到10。
也就是说,如果条件中fokus=10,那么 在区间i<计数的10个值中
将是1到10。
比如说
不清楚什么是fokus
在理论上,中位数是一个有序数组中间的元素的值。在你的情况下,它是什么?
例子。
30个MA价格值的数组,寻找有序数组的中间。
我们在数组的中间得到15(L0) 的值,然后我们从L0向下和L0向上得到两个数组,并找到这些数组的中间,以此类推,直到我们得到fokus 数(例如七个值)。
--------------|-------------- -------|--------------|------ ---|-------|------|-------|-- fokus=7 | - значение цены
例子。
30个MA价格值的数组,寻找有序数组的中间。
我们得到15(L0) 作为数组中间的值,然后我们从L0向下和L0向上得到两个数组,并找到这些数组的中间,以此类推,直到我们得到fokus 数(例如七个值)。
如果有偶数个数组元素,哪个元素将是中位数,还是应该按两个的平均数或其他方式计算?
例子。
我认为我们需要找到七个百分位数:12.5、25、37.5、50、62.5、75、87.5,这样的假设正确吗?
如果是这样,用有序数组中的元素数除以8(7+1),再乘以你想要的百分位数。我们得到以下元素指数。3, 7, 11, 15, 18, 22, 26.
对,还是我走错了路?如果是这样,这里最重要的是建立一个维护有序数组的简明机制。
如果数组有偶数个元素,哪个元素是中位数,还是应该计算成两个元素的平均数或其他?
我认为取一个偶数的整数值比较容易。
如果有15个元素,那么中位数就是8。
我的理解是否正确,我们需要找到七个百分位数:12.5,25,37.5,50,62.5,75,87.5?
如果是这样,用有序数组中的元素数除以8(7+1),再乘以所需百分数的数量。我们得到以下元素指数。3, 7, 11, 15, 18, 22, 26.
对,还是我走错了路?如果是这样,这里最重要的是建立一个维护有序数组的简明机制。
从MA值的阵列中,你需要找到整个阵列的中位数,然后是在第一个中位数之上/之下得到的阵列的中位数,等等。
那么看来是对的,数组第一部分的中位数是总数组的四分之一,它是25分位数。而第二部分的中位数是75百分位。
这一点。
等于这个。