Я хочу предсказать направление изменения цены.
Термин цена используется для обозначения средней цены акции, которая определяется как среднее между лучшей ценой предложения и
Лучшая цена предложения в момент времени t:
Это виртуальное значение цены, так как в
эта точная цена, но предсказывающая ее движение вверх или вниз
дает хорошую оценку цены будущих заказов. Набор из
дискретный выбор должен быть построен из наших данных для использования в качестве целей
для нашей модели классификации. Просто используя p (t)> p (t + k) для
определить направление средней цены введет неуправляемо
количество шума, так как наименьшее изменение будет зарегистрировано как
движение вверх или вниз.
Среднее значение предыдущих k средних цен, обозначенное m_b, и среднее значение следующих k средних цен, обозначенное m_a, определяются как:
Вот пример:
0 2015-03-31 09:30:00.233 2.4645
1 2015-03-31 09:30:00.233 2.4634
2 2015-03-31 09:34:44.116 2.5363
3 2015-03-31 09:34:44.116 2.5434
4 2015-03-31 09:36:38.535 2.5356
5 2015-03-31 09:36:38.535 2.5432
6 2015-03-31 09:36:38.537 2.5463
7 2015-03-31 09:36:38.537 2.5432
8 2015-03-31 09:45:10.512 2.5274
9 2015-03-31 09:45:10.512 2.5262
10 2015-03-31 09:45:10.523 2.5299
11 2015-03-31 09:45:10.529 2.5234
12 2015-03-31 09:45:10.531 2.5276
13 2015-03-31 09:45:10.568 2.5212
14 2015-03-31 09:45:10.569 2.5262
15 2015-03-31 09:45:10.635 2.5143
16 2015-03-31 09:45:10.684 2.5267
17 2015-03-31 09:45:10.686 2.5212
18 2015-03-31 10:00:02.111 2.5213
19 2015-03-31 10:00:02.111 2.5298
20 2015-03-31 10:00:02.112 2.5212
21 2015-03-31 10:00:02.381 2.5263
22 2015-03-31 10:00:02.472 2.5212
23 2015-03-31 10:00:02.486 2.5298
24 2015-03-31 10:00:02.524 2.5298
25 2015-03-31 10:00:04.026 2.5270
26 2015-03-31 10:06:54.546 2.5212
27 2015-03-31 10:06:54.558 2.5234
28 2015-03-31 10:06:54.558 2.5253
29 2015-03-31 10:06:54.566 2.5234
В любое время я хочу вычислить m_a и m_b, но я не знаю, как это сделать с пандами или numpy. Предполагая, что горизонт k = 5, как я могу кодировать эти две специальные скользящие средние с помощью python? Поэтому мне нужны две функции, то есть leftmovingaverage()
и rightmovingaverage()
, и рядом с колонкой цен отображаются два столбца с именами M_A
и M_B
.
.
Пример:
Изображение у нас есть 1000 данных времени. И установите k = 600, тогда вы можете вычислить m_a из k = 590 ~ 600 и m_b из k = 601 ~ 610. Все хорошо объясните в следующей ссылке: http://poseidon.csd.auth.gr/papers/PUBLISHED/CONFERENCE/pdf/2017/2017_CBI_CNNLOB.pdf.