Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Подпишись на сигнал прямо в MetaTrader. Это просто!
Alexey Burnakov
2996
Alexey Burnakov 2012.10.17 06:44  
kakin:
'вычисление диапазона данных для диаграммы и прогноза
pattern_length = CLng(pattern)
forecast_length = CLng(forecast)
length = ActiveSheet.range(price_range).Rows.count
pattern_start = Application.RandBetween(1, length - (pattern_length + forecast_length))
pattern_end = pattern_start + pattern_length
forecast_end = pattern_end + forecast_length
'создание диаграммы, редактирование диаграммы
nachalo = range(price_range).Cells(pattern_start, 1).Address
konec = range(price_range).Cells(pattern_end, 4).Address


Я понял в чем проблема. Странно, что у меня она не вылезла. Я ее решу вечером и будет вам рабочая прога :)

С типом переменной лоханулся (

Alexey Burnakov
2996
Alexey Burnakov 2012.10.17 17:46  

Информация на размышление для любителей статистики.

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

Прогнозировал цену через 6 часовых баров, глядя на 12-барный график. Мне лично вроде бы такой перспективы хватает, чтобы оценить ситуацию.

Привожу ниже статистику своих результатов с пояснениями:


По оси абсцисс идут испытания (всего я накликал 841 прогноз). Красной линией показан накопленный процент точных предсказаний, как видим, он плавно спускается почти до 50% с ростом испытаний, но...

Синей линией показан доверительный уровень P - вероятность того, что мои результаты похожи на честную монету (судя по перекосу вероятности правильных ответов). Как видите, на 134-ом испытании у меня было округленно 58% правильных ответов, что на уровне P < 0,01 позволяет отвергнуть нулевую гипотезу о том, что я попадаю в правильные ответы абсолютно случайно (а точнее, что перекос вероятности в ответах, которого я достиг - случаен). Дальше уже было похуже, но, как видно на графике, на 232-ом испытании я снова достиг P = 0,009.

Дальнейший регресс я лично связываю с притуплением внимания (игра реальны выматывает). Видно, как P рвануло в сторону подтверждения нулевой гипотезы :)

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

PS: можно распланировать занятия по схеме достижения большего количества sigma в мастерстве прогноза. Я, например, перешагнул планку в 2 sigma. Дальнейшая планка - 3 sigma. Мастер достигнет уровня 6 sigma и станет непобедим.

Yury Reshetov
13462
Yury Reshetov 2012.10.17 19:17  
alexeymosc:

Синей линией показан доверительный уровень P - вероятность того, что мои результаты похожи на честную монету (судя по перекосу вероятности правильных ответов). Как видите, на 134-ом испытании у меня было округленно 58% правильных ответов, что на уровне P < 0,01 позволяет отвергнуть нулевую гипотезу о том, что я попадаю в правильные ответы абсолютно случайно

Вы как считаете P? Т.е. сколько у Вас из 134 испытаний истинноположительных, истинноотрицательных, ложноположительных и ложноотрицательных ответов? Положительным считается прогноз вверх, отрицательным вниз, а истинным правильно спрогнозированное направление, ложным - неправильно. Одна степень свободы.
Alexey Burnakov
2996
Alexey Burnakov 2012.10.18 06:20  

Юрий, приветствую.

Так еще не считал. Хорошая идея, думал об этом. Могу провести тест хи-квадрат между рядом targets и outputs. Тест покажет зависимость или независимость выборок. Там как раз принимается во внимание знак предсказания.

Я считаю попроще. Просто ориентируюсь на долю правильных ответов.

Допустим, имею 232 испытания, среднее M (МО) правильных ответов (независимо от знака приращения) равно 116. Мое количество правильных ответов = n = 135, к примеру. Считаю стандартное отклонение S по биномиальному распределению для суммы бросков "монеты", как (N * p * (1 - p))^0,5, здесь p - это теоретическая вероятность правильного ответа. Далее считаю, на сколько стандартных отклонений мое количество правильных ответов отстоит от среднего: (n - M) / S. Может иметь и знак минус в данном случае. А потом через Z-статистику считаю вероятность того, что честная монета покажет такое же или большее отклонение частоты выпадения одной из сторон. Здесь же получается чистое нормальное распределение, а поэтому просто посчитать.

PS: по ссылке мой способ расчета P автоматизирован: http://stattrek.com/online-calculator/binomial.aspx

Yury Reshetov
13462
Yury Reshetov 2012.10.18 16:48  
alexeymosc:

Юрий, приветствую.

Так еще не считал. Хорошая идея, думал об этом. Могу провести тест хи-квадрат между рядом targets и outputs. Тест покажет зависимость или независимость выборок. Там как раз принимается во внимание знак предсказания.

А смысл считать ХИ-квадрат между targets и outputs? Считаем, как я подсказал выше и подставляем в четырехпольную таблицу сопряженностей. Получаем результат. Методика от Криса Нейлора, автора "Как написать экспертную систему". Он по этой самой методике в своей книге вычисляет значимость нулевой гипотезы на предмет случайности предсказаний экспертных систем.

Alexey Burnakov
2996
Alexey Burnakov 2012.10.18 17:17  
Reshetov:

А смысл считать ХИ-квадрат между targets и outputs? Считаем, как я подсказал выше и подставляем в четырехпольную таблицу сопряженностей. Получаем результат. Методика от Криса Нейлора, автора "Как написать экспертную систему". Он по этой самой методике в своей книге вычисляет значимость нулевой гипотезы на предмет случайности предсказаний экспертных систем.


Юрий, дык по ссылке, что вы привели, считается хи-квадрат. Составляется таблица сопряженностей, где в строках вверх и вниз targets, в столбцах вверх и вниз outputs. Мы говорим об одном и том же.
Alexey Burnakov
2996
Alexey Burnakov 2012.10.18 17:27  

Давайте сравним. Вот это мне выдала SPSS:

 

 

 Точная значимость 0,018. Тоже неплохо. С поправкой на непрерывность: 0,023.

Вот результат расчета по вашей ссылке:

 

 

Сходится - с поправкой на непрерывность.

Значит, P = 0,0232.

Значит, хи-квадрат в 2 раза ухудшает показатель P (у меня он был 0,009 без учета знака прогноза).

Alexey Burnakov
2996
Alexey Burnakov 2012.10.20 12:18  

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

 Видео по запуску программы:

 

 Из нового:

- можно выбирать столбцы с ценами целиком

- можно выводить результаты в несколько диапазонов, не выходя из программы и не удаляя старые результаты (раньше был баг)

- доля правильных ответов автоматически считается и выводится в поле программы "Average". 

Файлы:
Alexey Burnakov
2996
Alexey Burnakov 2012.10.22 18:41  

А я тем временем обучаюсь.

Честно, пока нет постоянства, но бывают интересные результаты. Сегодня получил 60% точных предсказаний на выборке в 218 попыток. Предсказываю на 6 часов вперед по графику из 12 часов, на массиве из 60000+ паттернов.

Статистика хи-квадрат:

 

P = 0,004.

Прикладываю файл с результатами. И это не просто компиляция лучших серий или что-то в этом роде. Я просто сажусь и ставлю опыт длиной 100-500 испытаний, пока не почувствую, что на сегодня хватит. 

Файлы:
22102012.txt 3 kb
/ /123456
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий