Что подать на вход нейросети? Ваши идеи... - страница 84

 
Alexey Volchanskiy #:

И сколько у вас пенсия? Я недавно зашел на Госуслуги, на сегодняшний день мне насчитали 17 т.р. И до нее еще жить 5 лет, слава нашему вождю, который никогда-никогда-никогда не врет! Ну, когда спит, точно не врет )) Так что одна надежда на фору. 

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

 
Alexey Volchanskiy #:

И сколько у вас пенсия? 

Люди щяс накопительную часть пенсии забирают. Правда накопительной она стала для государства а не граждан. 10 лет этими бабсами государство пользовалось бесплатно.

 

еще раз посмотрите если подавать разность цен или приращения - что будет лучше итоги или нет?

сам  посмотрю позже... (пока другие проекты веду) по моему, в этом подходе будут ок итоги если ок подавать.... )

 
Renat Akhtyamov #:

где то на форуме положили советник на МАшке, который заделал чат ГПТ

самое интересное то, что в коде идет анализ МАшки как в сторону увеличения количества баров, так и уменьшения

я конечно же не стал пробовать применить такое на практике в силу неоднократного фиаско при использовании индикаторов, но что то в этом есть по моему

---

ТС задал вопрос на тему торговли на MN1

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

О да!!! Машки середины прошлого века наше все )) Надо же понимать, что это простейший КИХ фильтр без коэффициентов. Точнее, в поставке МТ5 есть и БИХ, но сути дела не меняет. Именно поэтому машки дают такое дикое запаздывание, даже в сравнении с КИХ, рассчитанном на Матлабе. 
 
Сергей Криушин #:

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

Привет, живее всех живых )) Просто мало трудового стажа, все 90-е были свои бизнесы, о старости не думал. 
 
Идея: подавать на вход результаты сделок без рыночного контекста

Постановка задачи:
Есть базовая торговая стратегия (ТС). Она дает сигналы, мы торгуем, получаем кривую доходности.

Для каждого сигнала мы знаем:

  • Результат (% или пункты).
  • Длительность сделки (в барах или минутах).
  • Максимальная просадку внутри сделки.
  • Максимальная прибыль внутри сделки.
  • Направление сделки (Long/Short).
  • Волатильность рынка в момент сделки.

Суть: всю эту информацию мы скармливаем нейросети. Это даст ей больше результирующего контекста. Например, она может заметить: "Серия сделок, где мы получали небольшую прибыль, но волатильность падала — значит, рынок встал, лучше не торговать".
Никаких рыночных данных (цены, индикаторы, объёмы) на вход нейросети не подаётся. Может ли нейросеть, обученная исключительно на последовательности этих результатов, научиться фильтровать сигналы (пропускать только те, которые с большей вероятностью окажутся прибыльными) или даже предсказывать направление следующей сделки? Вопрос открытый.

Что можно гипотетически извлечь из последовательности сделок?
  1. Эффект серий (стриков). Многие стратегии имеют свойство «перегреваться» или «остывать» после серии успехов/неудач. Например, после трёх убыточных сделок подряд вероятность прибыльной может возрастать (из-за возврата к среднему) или, наоборот, падать (если стратегия сломалась на текущем рынке).

  2. Временная зависимость. Если сделки привязаны ко времени, можно обнаружить внутридневные или внутринедельные паттерны: например, по понедельникам стратегия часто даёт убыток, а по средам — прибыль. Сеть сможет это выучить.

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

  4. Поведенческие паттерны. Если стратегия содержит элементы, чувствительные к состоянию счёта (например, мартингейл), то последовательность результатов будет содержать информацию об этом состоянии.



Ловушка распределения данных:

Обучать модель нужно на нефильтрованной истории сделок базовой стратегии. Если мы обучим сеть на данных, которые уже были однажды отфильтрованы, то появится проблема смещения распределения после внедрения фильтра. Допустим, мы обучили нейросеть на всех сигналах стратегии (включая убыточные). После обучения мы начинаем использовать её в реальной торговле: теперь часть сигналов отклоняется. В портфель попадают только те сделки, которые фильтр пропустил. Соответственно, история реальных результатов, которую мы видим на входе фильтра в следующий момент, состоит уже не из всех сигналов, а только из отфильтрованных. Распределение этой «живой» истории может отличаться от обучающей выборки. Например, если фильтр хорошо отсеивает убытки, то в реальной истории убыточных сделок станет мало, и входное окно для прогноза будет состоять преимущественно из прибылей. Модель, обученная на смеси прибылей и убытков, может неправильно интерпретировать такое «перекошенное» окно.

Поэтому, чтобы схема была корректной, нужно выделить два понятия: "Реальный счет" и "Виртуальный мониторинг".

Краткая схема:

  1. Фоновый режим (Shadow Mode): даже если нейросеть уже фильтрует сделки, всегда должна работать "теневая" копия базовой стратегии.

    • Базовая стратегия генерирует сигнал.
    • Записывается результат этого сигнала в "Виртуальный журнал".
    • Даже если нейросеть сказала "Не открывать сделку", всё равно она открывается виртуально и в журнале она ведётся до конца.

  2. Вход нейросети: На вход нейросети подаются результаты именно из Виртуального журнала (сырые данные базовой ТС), а не из реального счета.

  3. Выход нейросети: Смотря на состояние "сырой" кривой доходности, нейросеть решает: "Сейчас базовая стратегия вошла в полосу неудач (или удач), поэтому на реальный счет сделку пропускаем (или переворачиваем)".


 
Ivan Butko #:

Для каждого сигнала мы знаем:

  • Результат (% или пункты).
  • Длительность сделки (в барах или минутах).
  • Максимальная просадку внутри сделки.
  • Максимальная прибыль внутри сделки.
  • Направление сделки (Long/Short).
  • Волатильность рынка в момент сделки.

Суть: всю эту информацию мы скармливаем нейросети. Это даст ей больше результирующего контекста. Например, она может заметить: "Серия сделок, где мы получали небольшую прибыль, но волатильность падала — значит, рынок встал, лучше не торговать".
Никаких рыночных данных (цены, индикаторы, объёмы) на вход нейросети не подаётся. Может ли нейросеть, обученная исключительно на последовательности этих результатов, научиться фильтровать сигналы (пропускать только те, которые с большей вероятностью окажутся прибыльными) или даже предсказывать направление следующей сделки?

Конечно - но это всё из будущего. Чистое подглядывание будет. Обучаться надо только на том, что известно до момента открытия сделки. В реальной торговле - откуда взять эти параметры?

По всем что ниже написано - согласен.

 
Aleksei Kuznetsov #:

Конечно - но это всё из будущего. Чистое подглядывание будет. Обучаться надо только на том, что известно до момента открытия сделки. В реальной торговле - откуда взять эти параметры?

По всем что ниже написано - согласен.

Имелось ввиду последние известные (последние N закрытых сделок по базовой стратегии).

Допустим, торгуем онлайн с обученной моделью. Базовая ТС даёт сигнал на вход - собираем последню статистику по этой базовой ТС (последнюю сделку или несколько сделок - эта и будет информация для нейросети). 

Далее - наша нейросеть, допустим, отказывает в открытии сделки - пропускаем. Но для базовой ТС сохраняем результат текущей сделки (когда она закроется). И в следующем сигнале используем данный результат как единственный или составной (из нескольких сделок) входов для нашей нейросети. 
 
Ivan Butko #:
Имелось ввиду последние известные (последние N закрытых сделок по базовой стратегии).


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

С базовой стратегией и ее фильтрацией давно так работаю, как вы описали. Первая была такая https://www.mql5.com/ru/code/903 - сигнал на каждом баре, которые фильтруем.
Потом что-то добавлял свое

Sampler
Sampler
  • 2012.06.01
  • www.mql5.com
Индикатор i_Sampler рассчитывает идеальные входы, предназначен для обучения нейросети.
 
Aleksei Kuznetsov #:

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

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

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

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