Блог им. FineLogin

Тестируем робота перед покупкой

    • 17 ноября 2021, 19:18
    • |
    • GOLD
      Популярный автор
  • Еще
Мой дорогой друг, если ты недавно решил разбогатеть на бирже, значит ты тот самый новичок, за деньгами которого охотятся опасные насекомые, типа продавцов роботов. Вот тебе совет, как протестировать робота перед покупкой. Следуй этому совету и сохранишь свои деньги.

Метод тестирования называется Walk-Forward Test (WFT). Выглядит метод так:

Тестируем робота перед покупкой

Короткое описание:

Всякий робот состоит из двух основных блоков — блок логики и блок транзакций. Блок логики обрабатывает данные и выдает сигналы блоку транзакций. Блок транзакций интереса не представляет. Пусть программисты в нем копаются. А мы поговорим про блок логики. Как он работает и откуда знает — когда покупать и когда продавать?

Человек (обычно это прыщавый программист) читает теханальную литературу, скачивает исторические данные за некий достаточно длинный период и составляет алгоритм их обработки, добиваясь красивой прибыли за счет перебора или подбора параметров. Если алгоритм выдает красивую прибыль, то программист переносит его в блок логики робота. На что надеется этот программист?

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

И ты уже спросишь — А можно заранее убедиться в том, что алгоритм способен выдавать приемлемую прибыль в будущем?
И я тебе незамедлительно отвечу — Можно. Именно для этого придуман метод WFT.

Метод WFT на конкретном примере работает так:

  1. Алгоритму скармливаются исторические данные за период 5 месяцев (Март + Апрель + Май + Июнь + Июль). Методом тупого перебора (или интеллектуального подбора) находятся оптимальные параметры обработки данных, на которых алгоритм выдает красивую прибыль.
  2. Алгоритму с оптимальными параметрами скармливаются исторические данные за следующий месяц (Август). Эти данные для него являются неизвестными. Они эмулируют работу алгоритма на реальном рынке в состоянии неизвестности будущего.
  3. Результат работы оптимизированного алгоритма за Август записывается в протокол
  4. Данные сдвигаются вправо на один месяц и повторяется шаг 1.
  5. Результаты работы оптимизированного алгоритма за  Сентябрь записываются в протокол.
  6. Далее цикл повторяется 20 (или 30 или 50) раз.

Результатом прогона алгоритма через WFT является протокол, в котором записаны 20 (или 30 или 50) месяцев его работы на неизвестных данных. Если прибыль в протоколе тебя устраивает, значит высока вероятность того, что в некотором будущем алгоритм принесет тебе некоторую прибыль. Покупай такого робота и рискуй более смело, чем обычно. Если прибыль в протоколе тебя не устраивает, то посылай нахер продавца такого робота, а сэкономленные деньги вложи в дивидендные акции.

Если продавец робота отказывается проводить тест WFT, ссылаясь на тяжелую жизнь в Саратове и дороговизну однушки в Сочи, гони его ссаными тряпками! Если ты где-то нашел бесплатную торговую систему (например — ту самую) с красивой прибылью за какой-то период, не спеши торговать по ней! Узнай — проходит ли такая система WFT. Если нет — не применяй ее в торговле. Сиди и мечтай о богатстве дальше.

Спасибо, что дочитал до конца. Если что-то не понятно, задавай вопросы в комментах))

★31
30 комментариев
Сергей Сергаев, в большинстве случаев и сделок-то никаких нет… а трейдеры — сплошь опытные миллионеры...
avatar
$100, очки нахрен он одел? раньше школьников чморили за очки в школе, а теперь все кому не лень одевают очки.
$100, «первый раз слышу эту фамилию… к сожалению в этом теракте пострадала его дочка, а не он» © Ну дает!
youtu.be/H6Lt6WcnqUc?t=241
avatar
Как пройти в библиотеку? 
Нэш Ван Дрейк (Кот Скрипаля), направо за углом… но пускают только уколотых))

Только с QR-кодом и паспортом: куда в Калининграде ещё можно, а куда уже  нельзя - Новости Калининграда

avatar
$100, хоть здесь повезло 
Vodkin, ага… ага… и даже отсосёт, если ласково попросишь! Реально — святой человек. Соль земли. Надёга и опора!
avatar
$100, точно так-же бомбило операторов учета бухгалтеров 25 лет назад.
когда внедрялись программы учета.

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

далее операторы.
далее переводчики.
далее трейдеры руками.
торговой ямы где люди кричат УЖЕ НИГДЕ НЕТ!


в конце пойдут и программисты на выход.
но последними из массовых профессии будут заменены роботами.
avatar
Антон Б, нуу… небольшая кучка программистов останется нужна… для программирования систем, которые заменят программистов))
avatar
$100, я к тому что это прогресс.
все заменять ботами.
и торговля так-же как и остальная деятельность.
подразумевающее четкое следование правилам.
это не исключение.

робот тупо экономит труд как и в остальных сферах.
пусть не 100% пусть 90% труда замещает или даже 50%.
но даже 50% замены это каждый второй трейдер на выход.
а 90% это 9 из 10 на выход.

апологеты трейдинга руками доказывают что все 100% нельзя заменить.
а 100% и не надо.
90% — и 9 из 10 пойдут с лосями.
те кто без алго.
как и в других отраслях.
алго экономит часы труда.
вот его суть.
-50% труда — в два раза меньше нужно трейдеров.

а не прямо 100% заменяет.
как вы пытаетесь тут рассказать.
«все или ничего.» — вот ваш рассказ.

avatar
Walk-Forward Test (WFT)
Walk-Forward Test (WFT) — нужен только для систем, которые подстраиваются («обучаются») к рыночным данным.

Если система не подстраивается к рыночным данным, или динамическая (логика определяется «на ходу») — то Walk-Forward Test (WFT) будет просто бесполезной тратой времени. Сделать можно, но бесполезно.

PS Причем, чем короче IS — тем больше вероятность переоптимизирования каждого OOS, и WFT наоборот сделает систему нерабочей (сильно подогнанной).

Надо знать, как работает система, чтобы провести правильные стресс-тесты. Walk-Forward Test (WFT) не является единственно правильным стресс-тестом или обязательным на все случаи (где-то он нужен обязательно, где-то вообще не нужен, а где-то и вреден).

PPS эту картинку я уже раньше на Смартлабе видел smart-lab.ru/blog/624862.php Зачем дубль-пост?
avatar
A2format, убедительная просьба:

рассказывайте сказки про «динамическую логику» в другом месте, пожалуйста… в моем блоге дураков нет))

Ну а то, что вы когда-то видели — это не беда… на смартлабе тысячи новых посетителей, не знакомых с тем, что вы когда-то видели))
avatar
$100, 
рассказывайте сказки

Сказки у вас — какой-то мифический тест который выведет «на чистую воду» все стратегии. Даже по вашей ссылке сказано:

1. Что WFT нужен для систем которые адаптируются к рыночным данным.
2. Даже WFT не устраняет всех проблем с переоптимизацией.

То, о чем я и говорил. Свой первоисточник не читали? 
Или вы считаете, что все стратегии адаптируются к рыночным данным?

что вы когда-то видели

Нет. У меня вопрос — зачем постить тоже самое? Кризис жанра?
avatar
A2format, еще раз повторяю:

за полтора года на смартлабе появились тысячи новых бедолаг… я считаю своим долгом помогать  им защищаться от вранья поганых инфоцыган и околорыночников))
avatar
$100, 

появились тысячи новых бедолаг… я считаю своим долгом помогать  им защищаться от вранья поганых инфоцыган и околорыночников))

А, в этом смысле. Тогда да, правильно.
avatar
A2format, правильные стресс тесты в студию! Или будем считать п_здоболом. 
Форвард — единственная известная и достоверная модель тестирования системы на прибыльность робота в будущем. 
avatar
LogikoMen, 
правильные стресс тесты в студию! Или будем считать п_здоболом.

Приберегите эпитеты для себя — они вам больше идут. И научитесь читать внимательно: для разных стратегий разные методы тестирования, где WFT обязательно, а где WFT бесполезно.

Форвард — единственная известная и достоверная модель тестирования системы на прибыльность робота в будущем. 

Для самообучаемых систем. Но не все системы такие.
avatar
A2format, самообучаемые системы появились недавно, форвард, и классические модели ничему не обучаются. Математика + статистика. С каких пор переменная стала самообучаемой? Нейросети — модель определения на основе своего искусственного интеллекта, т.е. и есть системы самообучения.
avatar
LogikoMen, 
 самообучаемые системы появились недавно, форвард, и классические модели ничему не обучаются. Математика + статистика. С каких пор переменная стала самообучаемой? Нейросети — модель определения на основе своего искусственного интеллекта, т.е. и есть системы самообучения.

Да, вот я про это и писал. Что нейросетям, машин лёрнинг — WFT будет полезен.

При этом, если прикопаться к терминам, то если ML обучается на n баров назад, то и разбивать не надо на участки, просто прогонять по всей истории (где обучение происходит каждый раз, с каждым баром на n баров назад), и тогда это стандартный бэктестинг, где WFT частный и урезанный случай. ИЛИ другой случай, если ML обучается именно на всей истории, и тогда ограничивая его отрезками, просто урезается количество данных для обучения (сами себе искажают тест). 

Стратегий тьма — и у каждой свои нюансы работы и тестирования.

PS сейчас уже не модно называть нейросетями, сейчас популярнее ML и AI :)
avatar
A2format, кто вам сказал, что форвард нельзя применить к нейросетям? Поймите, что будущее и прошлое — это ничто иное, как шкала времени. У нас есть условное будущее. Потому что прошлое можно представить ввиде будущего и прошлого. Форвард бесполезен только для очень крупного фонда на одной котировке. Потому что его вход внесет изменения в саму цену. Что приведет переосмыслению у других участниках рынка. Которое определить никак нельзя. Но если взять большой таймфрейм, то можно форвард и здесь использовать.
avatar
LogikoMen, 
форвард нельзя применить к нейросетям? 

Вы сквозь пальцы читаете или через строчку?

Мое сообщение №1:
Walk-Forward Test (WFT) не является единственно правильным стресс-тестом или обязательным на все случаи (где-то он нужен обязательно, где-то вообще не нужен, а где-то и вреден).

Мое сообщение №3:
Для самообучаемых систем.

Мое сообщение №3:
Что нейросетям, машин лёрнинг — WFT будет полезен.

В подряд три сообщения, что WFT нужен нейросетям, ML, AI...

Где хоть в одном из трех сообщений сказано, что WFT не подходит нейросетям?

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

Каким образом большой таймфрейм компенсирует влияние крупного участника на рынок?
avatar
A2format, тогда в принципе ничего непонятно. Для каких систем WFT бесполезен? Купил и держи? Это не торговые системы. Потому что сколько примеров было, что сажали обезьяну. И она обходила по доходности аналитиков. Пальцем наугад — тут WFT бесполезен, точно. Система, у которой нет параметров — это система. У которой нем модели. Всегда оценка дается при наличии чего-то. Оценка это и есть параметр. Даже если мы имеем новостную модель, в этой оценки должен быть показатель. Который и является параметром. И его можно крутить при выборке. Только фундаментальные системы не так просто протестировать WTF. Потому что множество котировок и вручную вбивать параметры на довольно то динамические даты. И никак иначе. Если так никто не делает, то это не мои проблемы. У нас в принципе никто ничего делать не хочет. Нужна кнопка — «Бабло». И многих устраивает -" мамой клянусь, я так заработал".
avatar
LogikoMen, 
Для каких систем WFT бесполезен? Купил и держи? Это не торговые системы.

Почему это не система? Потому, что простая? Усложнение системы — вовсе не значит, что на будет более прибыльной, чем простая. Так же, как и большое количество параметров, не значит, что системой можно будет просеять больше параметров оптимизации и найти грааль.

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

1. Даже если сделки случайны — это тоже система (прибыльная или нет — это уже другой вопрос).
2. Нет данных, сколько обезьян сидело, но не угадало прибыльные акции (про это и не писали бы).
3. Бай энд холд только про американские акции? А на Никкей получился бы Бай энд холд в последние лет 30? Или 1929-й? Или 1970-е? Получилось бы заработать на Бай энд холд на горизонте 10-20-30 лет?

Только фундаментальные системы не так просто протестировать WTF. Потому что множество котировок и вручную вбивать параметры на довольно то динамические даты. И никак иначе. 

Можно и вручную, но можно и автоматизировать — это весьма простая задача. Если бы все задачи были такими простыми.

У нас в принципе никто ничего делать не хочет. Нужна кнопка — «Бабло». И многих устраивает -" мамой клянусь, я так заработал".

Вот тут с вами согласен. Большинство хочет все сразу, и без напрягов.

ты не продавишь большой тайм фрейм (недельный).

Если фонд котировки продавил — это будет на любом таймфрейме. Тут вопрос насколько будет информативным недельный бар (таймфрейм) отобразить этот скачок. И, если позиция очень большая, то фонд ее может набирать неделями, а то и месяцами — поэтому недельный таймфрейм еще ничего так.
avatar
A2format, ты не продавишь большой тайм фрейм (недельный). Потому что в принципе любой объем вносит изменение в рынок. Но никоим образом не является основанием, что ты направишь рынок. 
avatar
A2format, он не умеет такие системы делать, у него видимо только тупые системы которые требуют постоянной переоптимизации.
avatar

В принципе — интересный пост, но, цитирую — «Человек (обычно это прыщавый программист) читает теханальную литературу...» звучит грубо и имеет мало отношения к действительности. Если речь про прыщавость программистов, то вероятно, про молодых. А молодыми и прыщавыми кто только не бывает, и юристы, и экономисты, и мазохисты, и даже сталевары с токарями и офицерами спецназа. Так что, на мой взгляд не стоит наделять программистов прыщами!
В настоящий момент все мы сейчас, читающие эти строки, читаем их, благодаря, в том числе программистов и они могут быть прыщавыми! А может и нет!
Образ программиста смените в башке своей! У меня есть знакомые программисты и ни одного прыщавого. Мало того, есть такие, что и в бубен настучат — мало не покажется!

Так же можно сказать и про «фунданальную» литературу, опцианальную и др. литературу, к которой можно присовокупить слово «анальный». А сделать это, как показывают простые переборы без всякого форвардтестирования можно почти к любому слову.

Есть в этой сфере разные пути, в том числе и роботизированные. Надо только уметь и постоянно развиваться, изучать, рассчитывать риски итд, а не тупо верить!
Уважаемый $100 — будь добрее!
плиз

P/S/ читаю автора давно, нравится подача информации и смысл.
Но, эта, чёто не так(

avatar
ccoonnsstt, программисты — хорошие ребята… пока не начинают зарабатывать обманом)

к таким козлам я не могу быть добрым… извините))
avatar
Если (1) //прибыль в протоколе тебя не устраивает
, то посылай нахер продавца такого робота

А WFT — ересь.
avatar

теги блога GOLD

....все тэги



UPDONW
Новый дизайн