Блог им. Crazy_Trading

достигнут предел (((

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

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

имеем:
~ 260 000 баров истории на каждом инструменте 4 года тф 5мин
20 инструментов
20 вариантов тестирования для каждого инструмента и каждого бара

на каждом баре в каждом варианте тестирования производится ~ 100 математических операций.

в итоге:
260 000 баров * 100 операций в варианте * 20 вариантов  * 20 инструментов = 10 400 000 000 математических операций.

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

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


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

Всем профита и веселых выходных!


PS ВСЕМ БОЛЬШОЕ СПАСИБО! подсказали в чем затык.
    ★4
    68 комментариев
    Ну, надеюсь, нигде в алгоритме ошибок не допустили, а то обидно будет)
    Я так свой первый алгоритм тестировал на истории, часов по 10-12 комп иногда считал. Потом детальнее начал рассматривать граальные результаты — оказалось, что допустил типичную ошибку «заглядывания в будущее» :)
    avatar
    Enfernuz, нет, алгоритмы оттестированы уже давно, тестирование на нескольких инструментах и меньше истории тоже пройдено… теперь глобальное тестирование… и это печально
    1 есть приблуда под велслаб считает на видяхе… помню был видос одного брокера… там они хвастались 15 пентафлопсами на видяхах… зы кстати имхо проще арендовать машинное время
    2 не пойму зачем так сложно… все равно результаты надо обработать человеку…
    3 а теперь поменяй бай и селл местами и опять запусти оптимизацию… если получшь хороший варианта бота наоборот — выкинь бота сразу со всей переоптимизацией
    avatar
    ves2010,
    1 — ни одна их текущих платформ не способна работать с моими алгоритмами ((( там идет проработка нестандартных таймфреймов, тестер на лету их создает и делает вычисление по ним.

    2 — да все вроде просто… однако когда эту простоту переводишь на машинный язык получается задница
    Тихая Гавань, если алгоритм не обрабатывается современными(?!?) средствами, значит дело не в технике, а в алгоритме.
    Современная техника и не такие массивы обрабатывает, хотя если комп PentiumII или III? тогда да, может и техника).
    Ищите ошибку у себя, а не в техническом оснащении.
    avatar
    witwayer, он обрабатывается но слишком долго..

    тут нет ошибки, тут банальная моральная старость техники..



    помимо всего система содает кучу файлов и в каждый ведет запись определенных результатов.
    Тихая Гавань, ТАК у тебя не комп, а ноут
    Вот у меня комп
    imglink.ru/show-image.php?id=5ff6e9773b74a940bd20b649cb6509b0
    avatar
    BaZa86, не делал скальпинг процу? у меня 4770K, охлаждение гуд, но греется все равно, в простое 40 в нагрузке 80-85, у i7 с К охлаждение слабо сделано кристалла, говорят снимают крышку и заменяют охлаждение на жидкий металл. Видео смотрел по этому поводу, но сам пока не рисковал.
    avatar
    Frend, нет, не делал, у меня нет проблем с охлаждением, комп особо не нагружается. Как вариант, может тебе кулер заменить на более производительный или вообще водное охлаждение поставить.
    avatar
    BaZa86, нет, кулер там стоит хороший, поменял сразу при покупке, и ветер в корпусе есть, трабл именно в камне
    avatar
    Тихая Гавань, это непрофессионально. Результаты должны литься в БД или хотя бы в свои массивы, а не записываться в файл. Запись на диск очень тормозная операция. Сохранять на диск нужно только по окончании теста.

    avatar
    chizhan, спасибо большое! да у меня писалось все в режиме «онлайн», переделываю чтоб писалось в массивы и буду скидывать в файлы в конце теста
    Тихая Гавань, возможно ssd-диск существенно ускорит всё без изменения алгоритмов, если ещё не используется
    update: Извини, не посмотрел, что уже почти 2 месяца прошло.
    avatar
    ves2010, 15 пентафлопс это перебор. Лучшая карта 7970 дает 1 терафлопс в double. Не хотите же сказать, что у них работало 15к карт!
    avatar
    думал тут один… потом выдал — «42» ))
    avatar
    cosmichorror,?
    Тихая Гавань, lurkmore.to/42
    avatar
    cosmichorror,


    улыбнуло ))
    cosmichorror, ахаха))) грааль давно найден ведь)))
    avatar
    Неужели все эти тесты -помогают в торговле?
    avatar
    svanchik, смотря как вы торгуете ))
    я пишу средне — долгосрочного робота.

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

    как пример — почитайте мой блог тут на смарте, я даю по РИ текущие уровни и вектора потенциального движения (дневки)
    в течение месяца было дано 7 векторов и все они отработаны на 100%
    Тихая Гавань, вот это как раз и напрягает)).т.е уровни ваши дают 100% отработку-но вы все равно что-то тестите… а что тогда торгуете?
    avatar
    svanchik, отвечу одним словом — АВТОМАТИЗАЦИЮ
    просто у вас алгоритм медленный ))))))
    avatar
    sds, ))
    Несмотря на столь внушительный план работ,  видно что затею свою доведёте до конца.
    У многи х же, особенно «ручных» трейдеров может быть иначе..



    … из какой-то гуру-книжки)
    avatar
    waldhaber, а точное название книги не знаете? Зацепило :)
    avatar
    Enfernuz, эт мне друг скидывал скриншот… просветлялся он вобщем))
    Так что скину, но завтра-послезавтра… как узнаю у него что за автор, ок?
    avatar
    waldhaber, ок, спасибо)
    avatar
    Enfernuz, Да забейте тест в поисковик. Я бы для вас сделал бы, но сижу со смартфона))
    avatar
    Ivor, как-то забыл об этом способе. Спасибо за совет)
    Итого, Роджер Сайп «Развитие мозга. Как читать быстрее, запоминать лучше и добиваться больших целей»
    lib.rus.ec/b/513588/read
    avatar
    Enfernuz, о, да, вы уже нашли)
    avatar
    Enfernuz, Роджер Сайп, развитие мозга.
    avatar
    И скоко же Вы ожидаете доходность от своего монстра? :)
    avatar
    Что-то долго, у меня под VBA! 50 млрд! мат. операций (правда не сложных) (не по рынку) выполняются всего за 4 часа (на простом ноуте)., а у вас (i5 и 4 гига) и всего-то 10 млрд.
    Вероятно, что-то Вас с алгоритмом не то, а уж если и операции с диском, то не пишете сразу, открывайте/сохраняйте по потребностям, посмотрите perfmon увидите где затык, может у вас диск узкое место, или память.
    avatar
    у меня генетический алгоритм пробегает порядка 30 тыс баров, * 9 родителей по 17 мутаций = 1 этап
    итого 30 000*9*17 = 4 590 000 «щелчков робота» за этап.
    в «щелчке» приходит свечка, анализируется, принимается решение, делается сделка, считается по сделке бюджет и статистика — ясно что там не одна операция.
    и таких этапов за день просчитывается около 10 000
    т.е. всего 45 900 000 000.
    но проц помощнее (i7) и считается всё многопоточно, хотя на ночь больше двух потоков не ставлю, чтобы не шумело.
    честно говоря вначале тоже радовался что проц грузится хорошо. а потом занялся профилированием и оптимизацией.
    «щёлкать» стало гораздо быстрее :)
    пусть железные мозги работают на полную! за них уплочено.

    avatar
    ПBМ, ну и сколько годовых собираешь с таким супер математическим подходом?
    avatar
    Karmanoff Fedya, робот долгосрочник для очень крупных сумм, для таких при которых важны не цены входа и выхода а методы. пока тесты показывают в среднем от 50 годовых.
    ПBМ, профилирофщик наше все, гораздо быстрее чем часами ждать прогоны
    avatar
    ПBМ, генетические алгоритмы = зло… т.к надо перебирать все варианты для анализа стабильности бота
    avatar
    ves2010, не люблю слова все и должен
    avatar
    Секрет походу даже задумался, что у него слишком все просто
    avatar
    Арендуйте вирт. машину с 16 ядрами, посуточно, быстро все посчитает) Хотя, если ваша платформа обращается только к одному ядру процессора, то это не поможет.
    avatar
    И сколько в вашей стратегии настроечных параметров?
    avatar
    Ну и я похвастаюсь. За неделю у меня просчитывается ~10^15 «микро стратегий» на тиковых данных за 6 лет по ES. Количество математический операций подсчитать весьма затруднительно…
    avatar
    Ага, на микростратегиях можно порядка на 3 ускоряться в сравнении с обычными. плюс кэшироваться проще, что еще пару порядков дает. Так не честно, короче ))
    avatar
    Не понимаю ) ну допустим, будут найдены некие закономерности, но ведь они на истории ) значит каждая новая свеча будет неучтена и уже закономерность нарушает )
    avatar
    Scorpi_999, Все человеческое строится/базируется/отталкивается от истории, будь это человек или алгоритмы, история это ВСЁ ЧТО У НАС ЕСТЬ! Если человек работает руками, он тоже «на истории учился», ну или как мартышка/ГСЧ колбасит по клавишам. Любой фундаментальный анализ — это тоже история. А вот как с историей работать — это ключевой момент, можно там искать «призраки», а можно и то что работает ИМХО.
    avatar
    Да арендуйте комп, если так долго.
    У меня ноут, достаточно мощный, я за него иногда переживаю, не загнется ли. Но максимум, что считал это 12 часов, раскаленный как печка стал, но вроде выжил.
    У вас генетика или просто брутфорс, или монте карло?
    И на чем тестите кстати? Самопис или на готовых прогах та?
    avatar
    Вопрос также интересует, какая платформа?

    Аналогично тоже тестирую на Metatrader 5, правда не такими масштабами.
    Недавно попробовал ихнюю MQL5 Cloud Network, вышло 18 тыщ проходов на 6 минутках, с июня 2013 по март 2015, примерно за 10$ чужих процессорных ресурсов и полчаса времени. На своем ноуте с Core i7 и 8 ядрами такое бы дня за 4 вычислил.
    avatar
    antikeks, Не сочтите за рекламу ;)
    avatar
    Расскажи лучше сколько ты заработал, а не пытался это сделать.
    А потом подтверди стейтом с ЛЧИ.
    farok, а Вам зачем такие подробности? В поиске нового гуры?
    avatar
    Я писал робота, который сделал миллиард рублей с сотни тысяч!
    Но миллиард рублей виртуальные и за прошлый период… увы!
    avatar
    Кароч… дядюшка Шингыс тебя просветит! Нету на рынке четко формализированной системы, которая будет работать дольше чем 2-3 месяца!
    Шингыс Кулямбеков, можно поподробнее, откуда сведения? по-моим ощущениям действительно после 3х месяцев что-то меняется/ломается. но этой моей статистике ощущений всего 1 год
    avatar
    ПBМ, Меняются внешние факторы (макроэкономика, политика и т.п.), меняется состав игроков, меняется стратегия у крупных игроков (чтобы сбросить присосавшихся).
    Шингыс Кулямбеков, никогда ничего не меняется в рынке, испокон веков работает только одна стратегия — ОТНЯТЬ бабки у хомячков… меняются методы, но не принцип. я же исследую именно принципы, тогда как методы лишь побочный продукт.
    Тихая Гавань
    какое ПО исполняет (или чем откомпилировано) вашу задачу подсчета?
    avatar
    100 миллиардов при 3.3 GHz это пол минуты.
    avatar
    И как результат? Может PC в + стабильно годами приличную доходность на гора выдавать?
    avatar
    для грамотных советов неплохо было бы приводить более точное техническое описание проблемы, но судя по имеющемуся описанию вы упираетесь совсем не в производительность своего процессора, а в скорость устройств хранения данных.

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

    вот к примеру один из неплохих подобных эмуляторов RAMDRIVE www.ltr-data.se/opencode.html/#ImDisk
    avatar
    Heinz, спасибо, уже понял в чем главная суть тормоза была: в скидывании в файл отдельно взятой строки на каждом баре. переделываю ))
    Тихая Гавань, ну вот, говорят же алгоритм медленный ))))
    Когда в школе учился, лень было писать на ассемблере программы, писал на паскале, но потом редактировал(оставлял 10% написанного кода) и заново на перфокарты, скорость была в 2 раза быстрее чем на паскале, все дело в правильном коде и выбор алгоритма. ))))
    avatar
    Тихая Гавань, вы комбинации индикаторов оптимизируете?
    avatar
    V.V., нет не комбинации индикаторов, они уже подобраны.
    я оптимизирую разность потенциалов между таймфреймами ))

    теги блога Тихая Гавань

    ....все тэги



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