@Дмитрий Овчинников одним из комментариев последнего поста натолкнул меня на самоочевидную мысль, и я вспомнил анекдот.
Поймал мужик золотую рыбку. Та ему, естественно, предлагает ему загадать желание и отпустить её в синее море. Мужик сгоряча выпаливает: «Хочу, чтобы у меня всё было!» «Ладно, мужик, — удивлённо отвечает золотая рыбка. — У тебя всё было».
Из всех моих упражнений, которые я совершал на протяжении последних трёх лет, похоже, нет таких, которые не совершались до меня и уже описаны ранее. Надо было просто почитать форум от рождества его.
Каждый делал их, конечно, в силу своей сообразительности и способностей, и не все дошли до того, до чего дошёл я.
Но тусовочка алготрейдеров напомнила мне градиентный спуск в обучении нейронной сети: если параметры примерно подобраны правильно, результаты получаются примерно одинаковыми. Все достаточно умные люди приходят к одному и тому же, даже если и пути разные, а именно:
- граалей нет
- доходность не гарантирована
- и она не будет в сотни процентов
- и главное — не столько качество торговых систем, сколько их количество, и управление капиталом :)
Управление капиталом, кстати, почему-то в конце везде и во всех источниках, а я теперь знаю, что с него надо начинать, а потом уже лепить торговые системы. Это из рекомендаций новичкам.
Когда ты приходишь к выводу, что всё, чем занимаются (алго) трейдеры — это подгонка фейковых торговых систем под историю в надежде, что это будет работать в будущем, то считай, что пересёк красную линию, после которой ты уже можешь считать себя гуру :))
Понимание и принятие этого факта сильно всё упрощает.
Протестировал я намедни — в очередной раз — LSTM, на что меня сподвиг
@А. Г., на выходе — автокорреляция с шагом +1. НС тупо выучила цены и со сдвигом повторила. Бессмысленно и беспощадно. Вот, для сравнения, оригинал цены, предсказания и МА:
Так же потестировал идею со множественными МА. Работает идеально, но есть нюанс :)
Сегодня день вспоминания анекдотов, похоже.
Результаты вот такие:
Посчитал MA c 2 по 30, + их отношение к Close. Отношения скормил сети.
Учились с 24.03.2022 по 31.08.2023. Проверялись на 01.09.2023 по н.в.
Из 375 сигналов buy верные 330, неверных по этому классу 0.
Из 360 sell верные 284, неверных — 1.
И всё было бы отлично, если бы не было класса wait. Поскольку он подавляющий, то он статистику и портит.
Я так устроен, что не могу не думать и не пытаться найти выходы из безвыходных ситуаций.
Ведь, даже если вас съели, у вас есть два выхода.
Поэтому в голову пришла пара мыслей.
- Во-первых, идея о концепции антистопов: стопов, которые работают наоборот. То есть, запрещают выход из сделки, даже если базовая торговая система дала этот сигнал (закрыть позицию).
- А, во-вторых, как следствие, поискать не те бары, на которых нужно входить в сделку или выходить из неё, а те бары, где точно ничего делать не нужно. Зачем мне это? Чтобы сократить размер класса wait и улучшить точность.
Тестируя эту НС в рамках моей концепции лучшего торгового пути оказалось, что она абсолютно точна в том, чтобы давать сигналы buy на тех свечах, которые механизмом оптимального торгового пути помечены именно для таких операций, и зеркально.
Но нужно убрать шум на wait. Или, хотя бы, минимизировать.
Способов много, но нужно экспериментировать и тратить время.
С другой стороны, пока не видел, чтобы люди шли таким путём — формируя торговую стратегию методом исключения нерелевантных точек входа из полного набора возможностей. Возможно, не всё дочитал в форуме :))
Эта идея выглядит привлекательно, потому что всё, что нужно — это 30 последних цен закрытия, и фильтры, отбрасывающие большинство баров wait, а не целая архитектура поиска и расчёта ТС, которую я создал.
Возвращаясь к предыдущей теме, хочется сказать, что она какая-то нечеловеческая, и дело не в объёме вычислений.
Дело в том, что любой трейдер, посмотрев на график эквити любой из систем, выбранных для реальной торговли, скажет, что это бред и торговать таким нельзя. Эквити там мечется вверх и вниз, но, усредняя много таких систем, имеем стабильный растущий тренд.
По факту, почти каждый месяц эти системы почему-то приносят прибыль, хотя даже близко не 100%.
Но я бы никогда, посмотрев на их доходность глазами, их не выбрал, а с вероятностью 99% выбросил бы их в корзину.
Ощущение, что я пытаюсь понять, как оно работает аналогично авторам ChatGPT.
Есть такие, которым не достаточно принять, что оно работает, они хотят понять, как и почему.
Вот и я из таких, похоже.
Тем не менее, рефреном и над головой висят вот эти мысли о стохастичности с тем, чтобы себя не обнадёживать :)
Есть очень простой путь уменьшить шум — поднять таймфрейм. Но что-то не хочется.
И рациональная часть говорит, что надо бы запуститься с предыдущей и уже финализированной разработкой, а внутренняя ящерица что-то не хочет. И я её не тороплю.
Наконец, вне зависимости от реальных результатов в трейдинге, я фиксирую огромный рост своих компетенций в самых разных областях. Профит в увлекательных упражнениях, как я уже писал ранее, заключается совсем не только лишь в выведенной с брокерского счёта прибыли.
1. добавь в тесты адекватное проскальзывание.
2. увеличь периоды тестирования в разы.
3. пойми что аутофсемпл это реальная торговля, всё остальное разновидность инсемпл.
Выкинул мужик золотую рыбку и сказал, иди нах, мои компетенции с каждым годом улучшаются и без этого, а если так пойдёт дальше то и самого АлексаВана обгоню на смартлабе.
Да у меня уже получилось, просто я не запустился :)))
Запустившись, и заработав много, встанет сразу несколько проблем, и из них:
* что с этим делать?
* привлечёшь ненужное внимание нехороших людей
Если с первым разобраться можно — всю жизнь придётся кардинально менять, то второе меня пугает.
Поэтому я считаю, что публикация информации о своих доходах — это очень серьёзная неосмотрительность.
С 10к в алготрейдинге делать нечего, надо хотя бы с млн начинать, а лучше — больше.
На золоте я только зарабатывал, правда, руками :)
С моим подходом одним контрактом не поторгуешь, суть идеи заключается в одновременной работе десятков торговых систем по разным ФИ. На каждую по одному контракту повесь — уже за миллион получится.
Вот выбрать из результатов поисков непросто :)
Тоже такие эффекты наблюдаю. В моем флоу посмотреть, какие решения принимает модель — часть процесса подготовки модели. Во-первых это позволяет ошибки выявить, которые могут быть разной природы. Во-вторых, оставаясь на острие, ты можешь больше понять, прикинуть что за решения модель принимает, это можно использовать для фича-инжиниринга.
Кстати, эквити это же датасерия, даже если в модель она приходит как агрегированные метрики какие-то, не пробовал свечные серии к таким же фичам приводить и этой же модели скармливать?
Но кто знает, кто знает….