Need help! Не решается задача, упираюсь в ограничения железа - страница 13
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Видимо одним из результатов прохода с одной датой является новая дата.
Если новая дата = следующая последовательность, ну и ладно. Если она идет последовательно. Блин, тафтология. В смысле следом.
Можно заранее читать пачку, они мелкие же будут.
А даже и не следующая, какая разница. Проиндексировать и вызывать по необходимости.
to Komposter: Андрей, если ты упёрся в проблему размерности значит ошибка в постановке задачи.
Тут три варианта:
1 подумать самому
2 раскрыть задачу в паблике
3 раскрыть задачу в личку (каждому кого считаешь в силах решить и доверяешь неразглашение)
Поясню о чём я: если ты сохраняешь новости то можно писать стринги всей новости, а можно сделать шифрование типичных фраз (сжатие), "Account balance" превращается в 1, "Account equity" в 2 итд. Другой вариант типичной проблемы желание заполнять данные уже отсортированными, для больших размерностей это смерти подобно, проще дописывать в конец и делать условную сортировку по индексам.
Думаю понятно что я хочу сказать говоря что ошибка в постановке задачи.
так понимаю, речь идет о самопальном тестере/оптимизаторе?
не, там что то другое.
видать база сделок какого-то брокера/провайдера досталась. :)
повторю задачу упрощенно
- берём группу ордеров за М минут (X+Y штук)
- берем X первых сделок.
- расчитываем некий критерий Кx (например профит=100 или еще что). задаем допустимое отклонения D от критерия.
- проверяем оставшиеся Y сделки группы. Если их расчитанный критериий Ky имеет отклонение не более D от Kx, то группа ордеров нам подошла.
а вот что дальше с этой группой выявленной делать - нам не известно. и наверно не узнаем, инсайдерская инфа :)
может это дц хочет сливать клиентов, а может наоборот... исследование по психологии.
повторю задачу упрощенно
- берём группу ордеров за М минут (X+Y штук)
- берем X первых сделок.
- расчитываем некий критерий Кx (например профит=100 или еще что). задаем допустимое отклонения D от критерия.
- проверяем оставшиеся Y сделки группы. Если их расчитанный критериий Ky имеет отклонение не более D от Kx, то группа ордеров нам подошла.
а вот что дальше с этой группой выявленной делать - нам не известно. и наверно не узнаем, инсайдерская инфа :)
может это дц хочет сливать клиентов, а может наоборот... исследование по психологии.
Типично для БД. Но тут без агрегирования данных никак... Можно в отдельную таблицу записать уникальные атрибуты последовательности (даты с-по), среднее значение профита К и дисперсию D, потом искать топ 10 последовательностей, близких к нужным критериям. При наличии индексов по этим полям, поиск будет не так долго выполняться (даже в миллионе записей). Далее, получив нужные 10 последовательностей, можно и в исходных данных порыться, но это уже не будет перебор миллиона, т.к. мы имеем ограничение по датам.
До сих пор остается загадкой - что нужно искать? каким должен быть результат всех операций? Если речь о принятии решения в плане открытия/закрытия ордера, то любая обработка такого объема будет занимать достаточно большое кол-во времени.
Я вижу эффективность лишь в агрегировании данных и применении вероятностного подхода.
Можно ведь и корреляционные коэффициенты рассчитать между тем что имеем и совокупностью истории сделок, и "зашить" их в робот, без использования в дальнейшем БД.
Другой момент еще. Раз речь идет о сделках, может быть есть смысл выделить отдельно сделки по каждому инструменту? И написать однотипных роботов, заточенных под EURUSD, USDJPY и т.д.
а вот что дальше с этой группой выявленной делать - нам не известно. и наверно не узнаем, инсайдерская инфа :)
Сдается мне таким образом можно выявить лишь стратегию, которая использовалась для торговли (или набор параметров робота) данной последовательности, и перейти к ней в определенной ситуации на рынке.
Поскольку задача довольно академическая (смахивает на вопрос при приеме программера на работу) и многие проявили к ней интерес, почему бы не сформулировать её более строго в плане формата описания исходных данных, и все желающие могли бы себе нагенерить 20 Гигов тестовых данных и представить свое практическое решение?