Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Понятней не стало. А можно на пальцах эту строчку пояснить, если не сложно. Кто на ком стоит, то есть что к чему здесь прибавляется и что такое t%PERIOD.
1. есть исходные данные в массиве data[], известно что на них значительно влияют, то есть являются одним из слагаемых, колебания со строгим периодом PERIOD (с частотой 1/PERIOD). Ищем фазу/сдвиг этих этих колебаний
2. заводим массив modulo[] размером PERIOD. В нём суммируем элементы data[] через каждые PERIOD отсчётов. То есть в итоге modulo[N] = data[N]+data[N+PERIOD]+data[N+PERIOD*2]+data[N+PERIOD*3]...
в полученном массиве положение максимума будет соответствовать сдвигу максимума искомых колебаний, минимум сдвигу минимума. При этом расстояние между ними будет PERIOD/2 (в моём случае я знаю что колебания симметричны и поэтому так)
прочие независимые слагаемые либо друг-друга компенсируют не давая существенных пиков, либо (в случае кратных периодов) дадут вторичные экстремумы
3. собственно всё ;-) можно ещё предварительно сделать шаг №0 - удалить/сгладить ВЧ составляющую чтобы не мешала, самое простое - просуммировать соседние отсчёты.
прим.: метод годится если нет существенной трендовой составляющей - то есть всё отсчёты имеют одинаковый вес. В данном случае это так
1. есть исходные данные в массиве data[], известно что на них значительно влияют, то есть являются одним из слагаемых, колебания со строгим периодом PERIOD (с частотой 1/PERIOD). Ищем фазу/сдвиг этих этих колебаний
2. заводим массив modulo[] размером PERIOD. В нём суммируем элементы data[] через каждые PERIOD отсчётов. То есть в итоге modulo[N] = data[N]+data[N+PERIOD]+data[N+PERIOD*2]+data[N+PERIOD*3]...
в полученном массиве положение максимума будет соответствовать сдвигу максимума искомых колебаний, минимум сдвигу минимума. При этом расстояние между ними будет PERIOD/2 (в моём случае я знаю что колебания симметричны и поэтому так)
прочие независимые слагаемые либо друг-друга компенсируют не давая существенных пиков, либо (в случае кратных периодов) дадут вторичные экстремумы
3. собственно всё ;-) можно ещё предварительно сделать шаг №0 - удалить/сгладить ВЧ составляющую чтобы не мешала, самое простое - просуммировать соседние отсчёты.
прим.: метод годится если нет существенной трендовой составляющей - то есть всё отсчёты имеют одинаковый вес. В данном случае это так
Чтобы преодолеть ограничение:
2. заводим массив modulo[] размером PERIOD. В нём суммируем элементы data[] через каждые PERIOD отсчётов. То есть в итоге
modulo[N] =
data[N] +data[N+PERIOD] +data[N+PERIOD*2] +data[N+PERIOD*3]...
-( data[N + 1/2*PERIOD] +data[N+PERIOD + 1/2*PERIOD] +data[N+PERIOD*2 + 1/2*PERIOD] +data[N+PERIOD*3 + 1/2*PERIOD]...)
P/S
А если строже (на мой взгляд),то:
modulo[N] =
1*data[N] + 2*data[N+PERIOD] + 2*data[N+PERIOD*2] + 2*data[N+PERIOD*3]... + 2*data[N+PERIOD*z]..
- 2*data[N + 1/2*PERIOD] - 2*data[N+PERIOD + 1/2*PERIOD] - 2*data[N+PERIOD*2 + 1/2*PERIOD] - 2*data[N+PERIOD*3 + 1/2*PERIOD]... -1*data[N+PERIOD*z + 1/2*PERIOD]
И делить на половину суммы коэффициентов.
Чтобы преодолеть ограничение:
2. заводим массив modulo[] размером PERIOD. В нём суммируем элементы data[] через каждые PERIOD отсчётов. То есть в итоге
modulo[N] =
data[N] +data[N+PERIOD] +data[N+PERIOD*2] +data[N+PERIOD*3]...
-( data[N + 1/2*PERIOD] +data[N+PERIOD + 1/2*PERIOD] +data[N+PERIOD*2 + 1/2*PERIOD] +data[N+PERIOD*3 + 1/2*PERIOD]...)
P/S
А если строже (на мой взгляд),то:
modulo[N] =
1*data[N] + 2*data[N+PERIOD] + 2*data[N+PERIOD*2] + 2*data[N+PERIOD*3]... + 2*data[N+PERIOD*z]..
- 2*data[N + 1/2*PERIOD] - 2*data[N+PERIOD + 1/2*PERIOD] - 2*data[N+PERIOD*2 + 1/2*PERIOD] - 2*data[N+PERIOD*3 + 1/2*PERIOD]... -1*data[N+PERIOD*z + 1/2*PERIOD]
И делить на половину суммы коэффициентов.
То есть предлагаете вычесть из сумм по периодам суммы сдвинутые на полпериода ? попробую на выходных - есть в идее рациональное
и делить на сумму коэфф. не обязательно - абсолютные значения не волнуют, главное чтобы макс и мин были на своих местах
Выделив колебания, можно прогнозировать котировку?
выделив периодичные колебания можно много чего делать. Любое действие снижающее неопределённость помогает в торговле
Можно убрать(снизить) ошибку из других рассчётов, Можно ловить "нетипичное движение". Можно автоматически определять расписание "сейчас торгуем а вот после уже нет".
я использую при построении каналов