Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 987

 
СанСаныч Фоменко:

На закуску.

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


Вот вся ценность всех этих красивых картинок.


Картинка должна доказывать идею, смысл которой ТОЛЬКО о будущем поведении советника.

Саныч, не торопись с выводами, ты чо то попортил

Количество сделок за больший период времени теста меньше получилось

 
Yuriy Asaulenko:

Вот потому и использую свой тестер, а не тестер МТ - отчего-то уж очень в нем много Граалей. В своем тестере, по крайней мере, достоверно знаешь -что и как он делает. Да и инфы с теста можно получить гораздо больше и любую, и проще.

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

 
Renat Akhtyamov:

Саныч, не торопись с выводами, ты чо то попортил

Количество сделок за больший период времени теста меньше получилось

Прогнал еще два раза: график похож, а цифры чуть-чуть другие.

 
СанСаныч Фоменко:

Прогнал еще два раза: график похож, а цифры чуть-чуть другие.

Вывод

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

 

Нашел проблему с классификацией:
Например если 2 столбца = 0, то попытка сделать софтмакс из них дает случайные классы:
m=matrix(0,ncol=2,nrow=100)
max.col(m)
  [1] 1 2 2 2 2 1 2 1 2 2 2 2 1 1 1 2 1 1 2 2 1 2 1 1 2 2 2 2 1 1 2 2 1 2 2 1 2 1 1 1 1 2 1 2 1 1 1 2 1 2 1 1 2
 [54] 2 2 1 2 2 1 1 2 2 2 2 1 1 1 1 1 2 2 2 2 2 1 2 2 2 2 2 2 2 1 2 2 2 1 2 1 2 2 2 1 1 1 2 1 2 1 1
Это в R.

Наткнулся случайно, когда оказалось что результаты предсказания все = 0.

Лучше делать так (в случае если 1-й столбец означает "ожидание", а не торговую команду)

max.col(m,ties.method = "first") #  по умолчанию ties.method = "random"

  [1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
 [54] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
>

А еще лучше, если классы имеют равное значение, то отказываться от классификации. И на всякий случай лучше это делать построчно.

 
elibrarius:

Нашел проблему с классификацией:
Например если 2 столбца = 0, то попытка сделать софтмакс из них дает случайные классы:
m=matrix(0,ncol=2,nrow=100)
max.col(m)
  [1] 1 2 2 2 2 1 2 1 2 2 2 2 1 1 1 2 1 1 2 2 1 2 1 1 2 2 2 2 1 1 2 2 1 2 2 1 2 1 1 1 1 2 1 2 1 1 1 2 1 2 1 1 2
 [54] 2 2 1 2 2 1 1 2 2 2 2 1 1 1 1 1 2 2 2 2 2 1 2 2 2 2 2 2 2 1 2 2 2 1 2 1 2 2 2 1 1 1 2 1 2 1 1
Это в R.

Наткнулся случайно, когда оказалось что результаты предсказания все = 0.

Лучше делать так (в случае если 1-й столбец означает "ожидание", а не торговую команду)

max.col(m,ties.method = "first") #  по умолчанию ties.method = "random"

  [1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
 [54] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
>

А еще лучше, если классы имеют равное значение, то отказываться от классификации. И на всякий случай лучше это делать построчно.

Добрый день

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

Успехов

 
Vladimir Perervenko:

Добрый день

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

Успехов

Предикторы разные пробую, вот и наткнулся, что НС ничему не обучилась и на выходе давала все нули. А предсказания из за рандома при преобразовании оказались не нулевыми.
Как говорил СанСаныч: мусор на входе = мусор на выходе. Тут еще и нули добавились, которые потом отрандомились.
Ну я себе сделал корректировку, чтобы нули оставались нулями, на подобные случаи в будущем.
 
elibrarius:
Предикторы разные пробую, вот и наткнулся, что НС ничему не обучилась и на выходе давала все нули. А предсказания из за рандома при преобразовании оказались не нулевыми.
Как говорил СанСаныч: мусор на входе = мусор на выходе. Тут еще и нули добавились, которые потом отрандомились.
Ну я себе сделал корректировку, чтобы нули оставались нулями, на подобные случаи в будущем.

Понятно. Удачи

 

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

  1. Торговал руками и есть история прибыльных и убыточных сделок.
  2. Нашел эту закономерность на истории по графикам и может отметить места входов/выходов.
Можно ли использовать эту историю/статистику для машинного обучения в варианте 1 и 2? Как это сделать? Сколько примерно нужно сделок для обучения (минимум/максимум)? Будет ли алгоритм распознавать паттерны только на том ТФ, на котором обучен? "Поймет" ли алгоритм МО то что сделки трейдера были совершены именно по паттерну ГП, а если "поймет" то каким образом? Сколько баров вглубь истории до момента открытия позиции МО будет анализировать?

 
Grigori.S.B:

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

  1. Торговал руками и есть история прибыльных и убыточных сделок.
  2. Нашел эту закономерность на истории по графикам и может отметить места входов/выходов.
Можно ли использовать эту историю/статистику для машинного обучения в варианте 1 и 2? Как это сделать? Сколько примерно нужно сделок для обучения (минимум/максимум)? Будет ли алгоритм распознавать паттерны только на том ТФ, на котором обучен? "Поймет" ли алгоритм МО то что сделки трейдера были совершены именно по паттерну ГП, а если "поймет" то каким образом? Сколько баров вглубь истории до момента открытия позиции МО будет анализировать?

Машинное обучение строится на признаках(паттерны/фичи), которые будут выделять событие. Соответственно, Вам надо указать на что надо смотреть, а алгоритм МО попробует найти в показанном какие либо закономерности и выработать правила поведения. Отсюда вытекают все ответы на остальные вопросы. И соответственно, чем больше наблюдений, тем более точными будут правила на более длительном периоде истории.