сегодня 15.02.2013

рг_2013_2_001

 

 

 

 

 

 

 

 

All trades Long trades Short trades
Initial capital 100000 100000 100000
Net Profit % 42.23% 17.51% 24.71%
Exposure % 86.97% 40.49% 46.48%
Net Risk Adjusted Return % 48.55% 43.26% 53.17%
Annual Return % 1278.92% 232.73% 418.11%
Risk Adjusted Return % 1470.60% 574.83% 899.57%
All trades 86 43(50.00%) 43(50.00%)
 Avg. Profit/Loss % 0.49% 0.41% 0.57%
 Avg. Bars Held 38.28 34 42.56
Winners 68(79.07%) 33(38.37%) 35(40.70%)
 Avg. Profit % 0.68% 0.59% 0.76%
 Avg. Bars Held 42.68 39.73 45.46
 Max. Consecutive 29 14 19
 # bars in largest win 177 274 177
Losers 18(20.93%) 10(11.63%) 8(9.30%)
 Avg. Loss % -0.22% -0.21% -0.24%
 Avg. Bars Held 21.67 15.1 29.88
 Max. Consecutive 5 4 3
 # bars in largest loss 42 5 42
Max. trade % drawdown -0.88% -0.59% -0.88%
Max. system % drawdown -1.62% -1.09% -1.04%
Recovery Factor 22.23 15.44 21.79
CAR/MaxDD 787.26 212.64 402.46
RAR/MaxDD 905.25 525.21 865.89
Profit Factor 12.69 10.28 15.33
Payoff Ratio 3.36 3.12 3.5
Standard Error 3496.2 1432.4 2333.63
Risk-Reward Ratio 67.63 55.38 67.33
Ulcer Index 0.34 0.38 0.26
Ulcer Performance Index 3770.85 593.05 1571.89
Sharpe Ratio of trades 15.36 14.7 16.04
K-Ratio 0.0463 0.0379 0.0461

 

This entry was posted on Пятница, 15 февраля, 2013 at 18:55 and is filed under торговые роботы (МТС). You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.

18 comments so far

amandra
 1 

добрый вечер, Николай Александрович.
Уравнение линии регрессии рассчитывается на основе постоянного кол-ва точек?
Спасибо

13 апреля, 2013 at 21:09
Kamynin
 2 

Добрый вечер,
Да,постоянного количества

14 апреля, 2013 at 20:06
amandra
 3 

спасибо. Используете ли Вы экстремумы вчерашнего дня для нормировки ценовых уровней для подачи на вход нейронной сети?

15 апреля, 2013 at 02:00
Kamynin
 4 

Добрый день,
Экстремумы прошлых дней я использую и не только вчерашних, но не для нормировки, а как первичные признаки.

15 апреля, 2013 at 12:02
amandra
 5 

спасибо, а что Вы используете для нормировки?

15 апреля, 2013 at 20:39
Kamynin
 6 

нормировку не применяю.

16 апреля, 2013 at 10:33
amandra
 7 

Вы непосредственное значение признака подаете?

16 апреля, 2013 at 18:36
Kamynin
 8 

Да.

17 апреля, 2013 at 20:56
amandra
 9 

подаются ли предыдущие значения признаков в НС? если да, то какой глубины?

16 апреля, 2013 at 23:13
Kamynin
 10 

Да.
На реальных данных глубина 3000 свечей тайм 5 минут. Размер истории с сервера QUIK.
Тоже уже говорил.

17 апреля, 2013 at 20:57
amandra
 11 

извините, не совсем понял, я думал, что история в 3000 свечей используется для обучения, я имел в виду кол-во свечей и предыдущих значений признаков, которые подаются на вход НС для принятия решения на текущей свече

17 апреля, 2013 at 21:40
Kamynin
 12 

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

18 апреля, 2013 at 16:21
amandra
 13 

3000 свечей = 3000*4
объем — 3000
2 индикатора — 3000*2
дневные уровни поддержки/сопротивлений — 3000*2
18000 входов НС? я все верно понял?

18 апреля, 2013 at 20:55
Kamynin
 14 

Не совсем так.
Я не могу ( не в смысле не хочу) сформулировать точно,
так как описание синтеза решения в законченном виде до настоящего времени не написал.
Есть какие-то наброски и большая куча кода,
которую я периодически оперирую.

19 апреля, 2013 at 12:46
travek
 15 

Николай, добрый день!

Можете что-нибудь рассказать о том, как определить сколько исторических данных нужно использовать для формирования решения.
Ваш предыдущий ответ очень интересный. Ведь в распоряжении есть 3000 свечей, это как как минимум 15,000 первичных данных (OHLCV). Много. Большинство не представляет интереса и избыточна. Предположим, мы предобработали сигналы и убрали избыточность. Всё с чем я работал ранее — это фиксирование временного окна и использование данных из этого окна для формирования решения. Вы рассказали, что окно может (должно) меняться. Звучит логично. Как можно определить что нужно использовать ?

19 апреля, 2013 at 09:56
Kamynin
 16 

Добрый день,
3000 свечей — мало для обучения , но много для решения.
В роботе Вася использовалась история с 2007 года на тайме 5 минут.
Для принятия решения 3000 свечей более чем достаточно, но робот не знает истории и поэтому его решения ненадежны.
Для обучения надо всю доступную историю.
Для решения надо одну последнюю сделку.

19 апреля, 2013 at 12:51
travek
 17 

Спасибо!
На самом деле мне не интересен код, и это логично. Было бы очень интересно прочитать пару слов про синтез решения на основе разного периода истории.
Я понимаю, что 3000 для обучения — мало, для принятия решения — очень много. Скажу честно, пока у меня нет собственной рабочей мысли как имея на входе 3000 (да или любое другое) выбрать нужные свечи (значения каких-то показателей) для принятия принятия (говорю о качественном решении).
Сам могу сформулировать только следующее. Берём 3000 свечей (повторюсь что это условно, «истоически сложилось») определяем к какому классу на истории такой шаблон относится (но для этого всю предыдущую историю мы должны разделить на классы для обучения). Определив класс мы знаем (должны знать) какие значения значения параметров взять для решающего правила (например класс №33 -> close0, close1, low2, low3, close20, high20,….). Но это только мысли, которые могут быть неправильными. Сам не пробовал, т.к. разбить историю на классы как минимум не просто 🙂

19 апреля, 2013 at 14:38
Kamynin
 18 

Добрый вечер,
Про код я написал в том смысле, что это «куча кода», ну как куча чего-нибудь материального.
Как всякая куча, в ней нет порядка и «черт ногу сломает», если попробовать навести в ней порядок.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Если кратко, то в целом все верно. Но истина в деталях.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Знаю как разделить на классы .
Применял это на практике в задачах технической диагностики.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Знаю по какому критерию обучать роботов.
По этому критерию робот сам может обучаться, так как ничего другого кроме как обучения с максимизацией этого критерия я не использую.
Все роботы, про которые я рассказал на сайте созданы с использованием этого критерия.
Но все они рано или поздно начинают очень медленно обучаться, что приводит к их отставке.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Вы правы, эти задачи не простые. Но разве может быть простым искусственный интеллект?
Мы же хотим чтобы наш робот превосходил опытного трейдера?
Поэтому реализовать все это в виде законченного самообучающегося робота у меня пока не получилось.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Думаю Вы согласитесь, что рассказывать ноу-хау на публичном сайте не имеет никакого практического смысла для меня.
Поэтому как говорят в народе «Дареному коню в зубы не смотрят»
Пишу в свободное время то, что считаю возможным «рассказать по секрету всему свету».

19 апреля, 2013 at 19:21