Объемы, волатильность и показатель Херста - страница 5

 
Yurixx:

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

Ну можно ещё считать Хёрста по старому, как наклон регрессии, тогда этот коэфф. будет пофиг. На самом деле ты ведь не привязан к стандартным ТФ, так что точки для регрессии не проблема набрать.


P.S. Это был не смех, это была улыбка. В смысле некоторого скепсиса. Хотя может я и неправ и форумяне легко эту задачу решат.

 

Я посчитал простейшим скриптом отношения (High-Low)/(Close-Open) на 1.5 млн. минутных баров.

Для AUDUSD на интервале от 2005.11.02 07:49 до 2010.08.20 22:59 среднее (H-L)/(C-O) = 1.65539495
Для USDJPY на интервале от 2006.04.11 20:21 до 2010.08.20 22:59 среднее (H-L)/(C-O) = 1.72965927
Для USDCHF на интервале от 2006.01.24 04:23 до 2010.08.20 22:59 среднее (H-L)/(C-O) = 1.69927897
Для USDCAD на интервале от 2005.05.19 13:31 до 2010.08.20 22:59 среднее (H-L)/(C-O) = 1.62680742
Для GBPUSD на интервале от 2006.02.21 23:31 до 2010.08.20 22:59 среднее (H-L)/(C-O) = 1.65294349
Для EURUSD на интервале от 2006.03.08 13:41 до 2010.08.20 22:59 среднее (H-L)/(C-O) = 1.69371256

Не такой уж большой разброс. Хотя я надеялся что он будет ещё меньше.

Кстати, интересно в какой степени локальная величина этого отношения может помочь в отделениии тренда от флета? По крайней мере импульсы точно должны выявляться.

 

(High-Low)/(Close-Open) ?

простите, а не потерялся ли модуль?

 
Svinozavr:

Поясню про метод. ...

Подход конечно интересный. И, надо полагать, в руках автора эффективный.

Но у всех этих индикаторов продолжают сохраняться временнЫе параметры. Которые, как я понимаю, устанавливаются по вкусу.

То есть, если мы здесь ищем объективные показатели, предметом обсуждения должны быть именно критерии выбора значений этих параметров.

Между тем, именно об этом Пётр никогда не высказывался. Или я это пропустил.

А было бы интересно послушать.

 
NorthAlec:

(High-Low)/(Close-Open) ?

простите, а не потерялся ли модуль?

модуль не потерялся

  for (i=Bars-1;i>0;i--) {
    double res = Close[i]-Open[i];
    if (res < 0) res = -res;
    SumCO += res;
    SumHL += High[i]-Low[i];
  }
  if (SumCO != 0) Alert("Для ",Symbol()," на интервале от ",TimeToStr(Time[Bars-1])," до ",TimeToStr(Time[0])," среднее (H-L)/(C-O) = ",DoubleToStr(SumHL/SumCO,8));
 
Candid:

Я посчитал простейшим скриптом отношения (High-Low)/(Close-Open) на 1.5 млн. минутных баров.


А что сие отношение может означать по смыслу ? По определению это отношение должно быть больше 1. Слишком большим оно тоже быть не может, поскольку цена движется (почти всегда) с конечной скоростью. Ясно, что где-то между находится среднее значение. И по инструментам оно не должно сильно отличаться - рыночный механизм-то везде один. Вот если ты построишь распределение (Close-Open) (без модуля) внутри бара, то скорее всего получишь равномерное распределение. И это будет наилучшим подтверждением того, что величина это чисто случайна.

Может я чего непонимаю, но я давно уже перестал обращать внимание на Close и Open как источники стат.данных. Их значения во-первых, чисто случайные (по отношению к массиву данных соответствующей минуты), а, во-вторых, целиком зависят от начала отсчета времени, что не есть хорошо. Подвинь начало отсчета на несколько сек. и эти значения изменятся. А вот пара High и Low - совсем другое дело. Эта пара задает коридор в котором движется цена. Это существенно, если не играть конечно внутри бара. Но если играть, то тогда все наши подходы с индикаторами не при чем. Кроме того, эта пара задает размах и волатильность. ИМХО, весьма существенные характеристики, которые просто надо научиться использовать.

 
Yurixx:

А что сие отношение может означать по смыслу ?

Я написал в другой теме
 

Итак, в отношении показателя Херста осталось много невыясненных вопросов. Не думал я этим заниматься, но критика, вопросы и замечания Николая (Candid), за что ему моя огромная благодарность, убедили меня в том, что с этим надо разобраться по настоящему. Без этого предложенная выше формула для расчета показателя Херста представляется просто взятой с потолка.

Необходимо также было ответить (в том числе и себе) на такое его замечание:

Candid:

Но пока нет достаточных оснований сопоставлять абсолютные значения этой величины с "калибровкой" для Хёрста. то есть считать что при 0.5 ряд случаен, выше - трендовый а ниже возвратный.

Для этой характеристики нужно делать свою калибровку.



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

Говорить будем о ряде случайных чисел (СР), который является моделью тикового потока: каждый тик дает изменение цены на +/- 1 пункт. Модель, конечно, весьма приблизительная, но мы ведь разбираемся не с рынком, а с Херстом. И, в первую очередь, необходимо разобраться с равновероятным потоком, т.е. чистым СБ, когда вероятности тиков +1 и -1 равны по 50%. Это обеспечило бы и упомянутую Николаем калибровку.

Вычисление показателя Херста опирается на вычисление среднего размаха, т.е. разницы между максимальной и минимальной ценой на интервале. Кроме этой величины имеется еще две весьма актуальные – средний модуль приращений и дисперсия приращений. В исследовании участвовали все три. Используемые ниже обозначения таковы:

N – количество тиков на интервале. Первая точка интервала (начальное значение цены) является последним тиком предыдущего интервала и в текущий не входит. Поэтому количество изменений цены на интервале равно его количеству тиков.

K – количество интервалов в статистике.

R – средний размах цены по K интервалам.

M – средний модуль приращения по K интервалам.

D – дисперсия приращений по K интервалам.

Приращение цены на интервале – удобная, легко представимая в аналитическом виде величина, равная разнице конечной и начальной цены интервала. Поэтому М и D вычисляются без всяких проблем. С размахом R все гораздо сложнее. Поскольку min и max цены на интервале могут быть достигнуты в любых точках, размах зависит от траектории цены целиком и вообще не может быть выражен в аналитическом виде. То есть получить для него общую формулу (как коварно :-) спросил Николай) невозможно.

Тем не менее, задача исследовать поведение показателя Херста для СБ поставлена и значит нужно получить точные результаты, а не ограничиваться приблизительными экспериментами.

В этой ситуации ничего не остается кроме как, опираясь на определение размаха, посчитать его значения «в лоб».

 

Для этой цели пришлось написать скрипт, который для заданного количества тиков N в интервале строит все возможные траектории цены. Поскольку для СБ все эти траектории равновероятны, то остается определить для каждой из них размах и вычислить его среднее по всем траекториям. Это и будет его «теоретическое» значение или, коротко говоря, МО. Очевидно, что общее количество всех возможных траекторий цены для интервала длиной N равно 2^N. По этому же закону растет время счета скрипта и потребляемая им память. Так что посчитать МО размаха можно только для области небольших значений числа N. Средний модуль и дисперсия приращений посчитаны для полноты картины и косвенной проверки правильности расчетов.

N R M D
1 1.0000 1.0000 1.0000
2 1.5000 1.0000 2.0000
3 2.0000 1.5000 3.0000
4 2.3750 1.5000 4.0000
5 2.7500 1.8750 5.0000
6 3.0625 1.8750 6.0000
7 3.3750 2.1875 7.0000
8 3.6484 2.1875 8.0000
9 3.9219 2.4609 9.0000
10 4.1680 2.4609 10.0000
11 4.4141 2.7070 11.0000
12 4.6396 2.7070 12.0000
13 4.8652 2.9326 13.0000
14 5.0747 2.9326 14.0000
15 5.2842 3.1421 15.0000
16 5.4806 3.1421 16.0000
17 5.6769 3.3385 17.0000
18 5.8624 3.3385 18.0000
19 6.0479 3.5239 19.0000
20 6.2241 3.5239 20.0000
21 6.4003 3.7001 21.0000
22 6.5685 3.7001 22.0000
23 6.7367 3.8683 23.0000
24 6.8978 3.8683 24.0000
25 7.0590 4.0295 25.0000

Для рассматриваемого СБ имеется простая формула, которая связывает дисперсию приращений D с количеством тиков N:

D = N.

Повидимому Херст, постулируя свою формулу для среднего размаха, опирался именно на этот теоретический результат.

Из таблицы видно, что полученные значения D полностью согласуются с приведенной формулой. Значит алгоритм построения всего множества траекторий цены и арифметика вычисления средних написаны правильно. Вычисление же max и min цены на интервале и их разности настолько просты, что вероятность ошибки здесь близка к нулю.

 

Теперь, когда есть с чем сравнивать, можно посмотреть поведение показателя Херста для СБ при различных значениях величины интервала N.

Напомню формулу, по которой следует вычислять показатель Херста так, как это определил его автор.

H = (Log(R2) – Log(R1))/ (Log(N2) – Log(N1))

Двухточечная схема вычисления обусловлена необходимостью избавиться от неизвестного коэффициента, присутствующего в формуле Херста.

Для упрощения расчетов, наглядности и максимального расширения диапазона исследования количество тиков в интервале N также изменялось по степеням двойки. То есть было принято N = 2^n. Основание логарифма в формуле для H роли не играет. Поэтому оно было положено равным 2 и значит Log(N) = n.

Алгоритм вычислений был следующим:

  1. Задаемся числом n, начальной ценой p=0 и точностью вычислений acc=0.001.
  2. Вычисляем число точек в интервале N
  3. Встроенным ГПСЧ генерим K-й интервал – N единичных тиков-приращений цены
  4. Вычисляем для этого интервала размах и модуль приращения цены на интервале
  5. Суммируем нарастающим итогом размах, модуль и его квадрат в переменные
  6. Вычисляем средние значения и дисперсию для K интервалов
  7. Определяем выполняется ли условие точности. Если нет, добавляем в К единицу и переходим на п.3. Если да, завершаем скрипт.

Результаты расчетов в таблице.

(К сожалению вставить таблицу целиком не удалось - редактор не принимает текст такого размера. Пришлось разбить ее на 2-е таблицы, сохранив для удобства в каждой из них первые два столбца. На первую буду ссылаться как на 2а, а на вторую как на 2б.)

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