Плотность числового ряда - страница 21

 
Vyacheslav Kornev:
У нас есть 50 ячеек и 11 кубиков с номерами
1, 3, 6, 8, 10, 11, 15, 16, 30, 40,50
V1. Самые плотные скопления это: 10,11 и 15,16. 

V2. Менее плотные это - 1,3 и 6,8,10,11 и 15,16

V3. Еще менее плотное это - 1,3,6,8,10,11 и 15,6

V4. Затем- 1,3,6,8,10,11,15,16. 

Итог таков. Мы подобрали дельту. То есть рассчитываем v2 потому что в этом варианте получилось больше всего скоплений

Скопление 1,3 занимает 3 ячейки из 50, то есть 1,5 ячейки на кубик. 

Скопление 6,8,10,11 занимает 6 ячеек. И здесь 1,5 ячейки на кубик.  Дальше продолжать не буду. 

Вы, не захотели выделять 10 и 11 в отдельное скопление. 




А вообще вы все таки знайте, что мы уде рассчитали центры масс в числовом ряду. Это и есть наибольшая плотность. 

А числа вокруг них в пределах СРЕДНЕЙ дельты всех чисел и образуют скопления. 
Такой вариант вам не подходит?
 
Vyacheslav Kornev:
Такой вариант вам не подходит?

 

Я же сказал, что такой вариант не ясно как применять так как деление на группы зависит от количества дельт либо минимального шага дельты.

Вы скрипт мой запускали последний?

Он обрабатывает числа и находит плотности - ниже визуализация - числа - цена закрытия недельных баров на GBPUSD с 01.02.2015 по 25.12.2016 - 100 цифр

 

 Можете сделать такой же расчет для своего алгоритма?

 
-Aleks-:

Так Вы мне и задаете те же вопросы, на которые я ищу ответы :)

Поэтому я и думаю, по какому критерию отсеивать скопления - и верным будет ли их отсеивание.

Отсеить я могу и больше  - регулируется % оставшихся дельт относительно всех чисел - сейчас 50%, но могу и 10% - просто Ваш алгоритм не позволяет сейчас автоматизировать этот процесс.

Сейчас по Вашему алгоритму 132 разные дельты получилось - как из них отобрать нужные - вопрос - понятно что от меньшей, но не ясно до какой большей. 

алг. на вскидку :

1. считаются дельты (расстояния между смежными точками)

2. разбиваются по группам последовательно возрастающие-убывающие (фактически найдены локальные экстремумы, получается а-ля зигзаг у которого впадины показывают на плотные группочки, вершины - на разряжения между ними)

3. по аналогии с пп.1, 2  проводятся 2 отдельные процедуры с вершинами и впадинами. То есть из одного зигзага получили 2. В том который делался по набору вершин, впадины указывают в области максимальной разряженности. А в другом впадины попадают в максимальную плотность. В теории дав зигзага должны быть более-менее в противофазе.
 
Maxim Kuznetsov:
алг. на вскидку :

1. считаются дельты (расстояния между смежными точками)

2. разбиваются по группам последовательно возрастающие-убывающие (фактически найдены локальные экстремумы, получается а-ля зигзаг у которого впадины показывают на плотные группочки, вершины - на разряжения между ними)

3. по аналогии с пп.1, 2  проводятся 2 отдельные процедуры с вершинами и впадинами. То есть из одного зигзага получили 2. В том который делался по набору вершин, впадины указывают в области максимальной разряженности. А в другом впадины попадают в максимальную плотность. В теории дав зигзага должны быть более-менее в противофазе.

Глубокая мысль, но сделать на её основании пример сможете точно только Вы! Может, покажете, ход своей мысли на ранее приведенных 20 числах  - что б было понятней?

 

На графике дабавил результат с фильтром 30%

 

Дорабавил в скрипт возможность выбора % чисел отсеивания по дельте.

Файлы:
 
-Aleks-:

Глубокая мысль, но сделать на её основании пример сможете точно только Вы! Может, покажете, ход своей мысли на ранее приведенных 20 числах  - что б было понятней?

алгоритм для довольно больших массивов (на 1-2 шаге даже случайный набор разряжает примерно в 3 раза, потом ещё вдвое, и повторить..контрольный набор получается порядка 300 точек)
Принцип очень простой - идём вдоль числового ряда и чем чаще встречаем точки, тем выше их плотность (просто из определения плотности). Находим экстремумы которые укажут группы-"уплотнения".
Повторяем уже для "групп" и находим групповую плотность и разряженность.

1. Если иллюстрировать на ваших 20-ти числах :



то есть стрелками просто отмечаем - дельты убывают (стрелка вправо) или возрастают (стрелка влево).  Слева получились кружочки - локальные группы. Справа кружочки - локальный промежуток. ( Фигура в точности зигзаг и если понадобится с ней можно работать точно так-же)

дальше считаем дельты между кружочками слева и повторяем аналогичную процедуру, получаем плотность/разряженность промежутков.

и для кружочков справа аналогично - получаем плотность/разряженность групп.
 
кстати прикольно - так можно безразмерно измерить "неизмеримое" - нервенность рынка,ускорение/замедление и даже по тикам :-)
 
Maxim Kuznetsov:
кстати прикольно - так можно безразмерно измерить "неизмеримое" - нервенность рынка,ускорение/замедление и даже по тикам :-)

 Давайте пока разберемся на простом - ниже таблица - два варианта какие дельты надо считать

 

№ П./П.ЧислоДельта++ V1-- V1++ V2-- V2
1 10          
2 13 3 3   3  
3 15 2   2   2
4 21 6 6      
5 31 10 10   10  
6 40 9   9    
7 42 2   2   2
8 46 4 4      
9 51 5 5      
10 56 5 5      
11 65 9 9   9  
12 71 6   6   6
13 78 7 7   7  
14 81 3   3   3
15 190 109 109   109  
16 223 33   33    
17 232 9   9   9
18 250 18 18   18  
19 260 10   10   10
20 545 285 285   285  
    Итого: 461 74 441 32

 Или надо дельты из V2 между ++ и -- ?


 
-Aleks-:

 Давайте пока разберемся на простом - ниже таблица - два варианта какие дельты надо считать

 

№ П./П.ЧислоДельта++ V1-- V1++ V2-- V2
1 10          
2 13 3 3   3  
3 15 2   2   2
4 21 6 6      
5 31 10 10   10  
6 40 9   9    
7 42 2   2   2
8 46 4 4      
9 51 5 5      
10 56 5 5      
11 65 9 9   9  
12 71 6   6   6
13 78 7 7   7  
14 81 3   3   3
15 190 109 109   109  
16 223 33   33    
17 232 9   9   9
18 250 18 18   18  
19 260 10   10   10
20 545 285 285   285  
    Итого: 461 74 441 32

 Или надо дельты из V2 между ++ и -- ?


что за случайные числа у вас в V1,V2 с ++ и с -- ?? :-)
в вашей табличке специально выделил фиолетовым - локальные максимумы дельт и зелёным локальные минимумы (кое где ошибся - неудобно на сайте с таблицами, не то закрасил). Группы точек определены.
Далее такую-же процедуру провести с фиолетовым (посчитать дельты=31-13,46-13, 65-46...) и выявить их экстремумы.
 
Maxim Kuznetsov:
что за случайные числа у вас в V1,V2 с ++ и с -- ?? :-)
в вашей табличке специально выделил фиолетовым - локальные максимумы дельт и зелёным локальные минимумы (кое где ошибся - неудобно на сайте с таблицами, не то закрасил). Группы точек определены.
Далее такую-же процедуру провести с фиолетовым (посчитать дельты=31-13,46-13, 65-46...) и выявить их экстремумы.

Числа не случайные, а как раз те, что Вы выделяли ++ - максимум при росте , а -- минимум при снижении. Так что пока не понял - что менять - большинство ваших цветовых пометок совпало с V2, остальные, могу допустить, ошибки - о которых Вы сообщили. Прошу уточнения.

Причина обращения: