A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||||||||||||||||
2 | Что показывает эта таблица | |||||||||||||||||||||||||
3 | ||||||||||||||||||||||||||
4 | 1. | В этой таблице мы показали результат бэктеста созданного алгоритма, а также точность прогнозов отдельных сделок. Исторические данные для бэктеста начинаются с 1997 года. | ||||||||||||||||||||||||
5 | ||||||||||||||||||||||||||
6 | 2. | Общий результат бэктеста показан после кросс-валидации. Что такое кросс-валидация мы описали ниже. Если коротко - это способ очистить бэктест от случайности и оставить чистое математическое ожидание. | ||||||||||||||||||||||||
7 | ||||||||||||||||||||||||||
8 | ||||||||||||||||||||||||||
9 | Как и зачем мы делали кросс-валидацию | |||||||||||||||||||||||||
10 | ||||||||||||||||||||||||||
11 | 1. | Мы брали общий датает IPO сделок (~2000 компаний). | ||||||||||||||||||||||||
12 | ||||||||||||||||||||||||||
13 | 2. | Использовали 1500 случайных компаний, чтобы обучить алгоритм. | ||||||||||||||||||||||||
14 | ||||||||||||||||||||||||||
15 | 3. | Использовали 500 оставшихся компаний, чтобы протестировать алгоритм и записать результаты тестирования. | ||||||||||||||||||||||||
16 | ||||||||||||||||||||||||||
17 | 4. | Повторяли процедуру множество раз. В каждой итерации мы случайным образом брали 1500 компаний для обучения алгоритма и 500 компаний для тестирования алгоритма. | ||||||||||||||||||||||||
18 | ||||||||||||||||||||||||||
19 | 5. | Таким образом мы получили ~26000 сделок. То есть каждая компания общего датасета в среднем 26000 / 2000 = 13 раз участвовала в тестовой выборке. Все сделки мы записали в отдельный файл, а затем загрузили файл в эту таблицу, в лист "Исходник". | ||||||||||||||||||||||||
20 | ||||||||||||||||||||||||||
21 | 6. | Зачем нужна кросс-валидация? Затем, что так мы избавились от случайности. Мы многократно обучили и протестировали алгоритм на всевозможных комбинациях IPO. Мы получили конечный результат, который отражает общую эффективность алгоритма. С помощью кросс-валидации мы исключили ситуацию, где успех алгоритма был вызван случайностью, а не закономерностью. | ||||||||||||||||||||||||
22 | ||||||||||||||||||||||||||
23 | 7. | Главный плюс кросс-валидации заключается в объективности конечного результата. | ||||||||||||||||||||||||
24 | ||||||||||||||||||||||||||
25 | 8. | Главный минус коросс-валидации заключается "прилизанности" усредненного портфеля. То есть стратегия хорошо работает на больших числах, но отдельные, более мелкие выборки, могут быть как лучше, так и хуже среднего значения. | ||||||||||||||||||||||||
26 | ||||||||||||||||||||||||||
27 | ||||||||||||||||||||||||||
28 | Как читать листы таблицы | |||||||||||||||||||||||||
29 | ||||||||||||||||||||||||||
30 | Исходник | |||||||||||||||||||||||||
31 | ||||||||||||||||||||||||||
32 | 1. | В этот лист мы загрузили прогнозы алгоритма и фактический результат сделки. Если значение ячейки равно 1, значит алгоритм прогнозирует доходность выше, чем значение верхней строки. | ||||||||||||||||||||||||
33 | ||||||||||||||||||||||||||
34 | ||||||||||||||||||||||||||
35 | ||||||||||||||||||||||||||
36 | ||||||||||||||||||||||||||
37 | ||||||||||||||||||||||||||
38 | ||||||||||||||||||||||||||
39 | ||||||||||||||||||||||||||
40 | ||||||||||||||||||||||||||
41 | ||||||||||||||||||||||||||
42 | ||||||||||||||||||||||||||
43 | ||||||||||||||||||||||||||
44 | ||||||||||||||||||||||||||
45 | ||||||||||||||||||||||||||
46 | ||||||||||||||||||||||||||
47 | ||||||||||||||||||||||||||
48 | ||||||||||||||||||||||||||
49 | Успешность прогнозов | |||||||||||||||||||||||||
50 | ||||||||||||||||||||||||||
51 | 1. | На этом мы листе мы сравниваем прогноз алгоритма с фактической доходностью сделки. | ||||||||||||||||||||||||
52 | ||||||||||||||||||||||||||
53 | 2. | Существуют четыре возможных варианта: "buy_right" - алгоритм советовал покупать, и фактическая доходность оправдала ожидания "buy_wrong" - алгоритм советовал покупать, но фактическая доходность оказалась ниже прогнозируемой "miss_right" - алгоритм советовал пропустить IPO, и фактическая доходность оправдала ожидания "miss_wrong" - алогоритм советовал пропустить IPO, но фактическая доходность оказалась выше прогнозируемой | ||||||||||||||||||||||||
54 | ||||||||||||||||||||||||||
55 | Точность прогнозов на кросс-валидации | |||||||||||||||||||||||||
56 | ||||||||||||||||||||||||||
57 | 1. | Это сводная таблица, которая собирает результат отдельных прогнозов и подводит общую статистику. | ||||||||||||||||||||||||
58 | ||||||||||||||||||||||||||
59 | 2. | В первой части таблицы мы считаем количество и точность прогнозов. Верные прогнозы "Покупать" = количество прогнозов "buy_right" Верные прогнозы "Пропускать" = количество прогнозов "miss_right" Ошибочные прогнозы "Покупать" = количество прогнозов "buy_wrong" Ошибочные прогнозы "Пропускать" = количество прогнозов "miss_wrong" Точность прогнозов "Покупать" = buy_right / (buy_right + buy_wrong) Точность прогнозов "Пропускать" = miss_right / (miss_right + miss_wrong) | ||||||||||||||||||||||||
60 | 3. | Средняя доходность сделок (все IPO) - показывает среднюю доходность по сделкам из всего датасета Средняя доходность сделок (с прогнозами) - показывает среднюю доходность сделок с прогнозами buy_right и buy_wrong. То есть тех сделок, в которых участвовал наш алгоритм. | ||||||||||||||||||||||||
61 | ||||||||||||||||||||||||||
62 | 4. | Во второй части таблицы идет подробное описание сделок, которые алгоритм советовал покупать. | ||||||||||||||||||||||||
63 | ||||||||||||||||||||||||||
64 | 5. | Также идет описание всех сделок датасета. | ||||||||||||||||||||||||
65 | ||||||||||||||||||||||||||
66 | ||||||||||||||||||||||||||
67 | ||||||||||||||||||||||||||
68 | ||||||||||||||||||||||||||
69 | ||||||||||||||||||||||||||
70 | ||||||||||||||||||||||||||
71 | ||||||||||||||||||||||||||
72 | ||||||||||||||||||||||||||
73 | ||||||||||||||||||||||||||
74 | ||||||||||||||||||||||||||
75 | ||||||||||||||||||||||||||
76 | ||||||||||||||||||||||||||
77 | ||||||||||||||||||||||||||
78 | ||||||||||||||||||||||||||
79 | ||||||||||||||||||||||||||
80 | ||||||||||||||||||||||||||
81 | ||||||||||||||||||||||||||
82 | ||||||||||||||||||||||||||
83 | ||||||||||||||||||||||||||
84 | ||||||||||||||||||||||||||
85 | ||||||||||||||||||||||||||
86 | ||||||||||||||||||||||||||
87 | ||||||||||||||||||||||||||
88 | ||||||||||||||||||||||||||
89 | ||||||||||||||||||||||||||
90 | ||||||||||||||||||||||||||
91 | ||||||||||||||||||||||||||
92 | ||||||||||||||||||||||||||
93 | ||||||||||||||||||||||||||
94 | ||||||||||||||||||||||||||
95 | ||||||||||||||||||||||||||
96 | ||||||||||||||||||||||||||
97 | ||||||||||||||||||||||||||
98 | ||||||||||||||||||||||||||
99 | ||||||||||||||||||||||||||
100 |