EITEN - это инструментарий с открытым исходным кодом от Tradytics, который реализует различные статистические и алгоритмические стратегии инвестирования, такие как собственные портфели , портфели минимальной дисперсии , портфели на основе генетических алгоритмов . Это позволяет вам создавать свои собственные портфели с помощью собственного набора акций, которые могут победить рынок. Строгая структура тестирования, включенная в EITEN, позволяет доверять вашим портфелям.
Если вы хотите подробно обсудить эти инструменты и поговорить о большем количестве инструментов, над которыми мы работаем, пожалуйста, не стесняйтесь присоединиться к нашему каналу Discord, где у нас также есть куча большего количества инструментов.
Путь | Описание |
---|---|
Эйтен | Основная папка. |
└ Цифры | Цифры для этих репозитории GitHub. |
└ Акции | Папка, чтобы сохранить ваши списки акций, которые вы хотите использовать для создания ваших портфелей. |
└ стратегии | Куча стратегий, реализованных в Python. |
Backtester.py | Модуль бэк -тестирования, который как на бэк -тестах, так и прямое испытания всех портфелей. |
data_loader.py | Модуль для загрузки данных из Yahoo Finance. |
Portfolio_Manager.py | Основной файл, который принимает кучу аргументов и генерирует несколько портфелей для вас. |
Simulator.py | Симулятор, который использует историческую прибыль, и Монте -Карло для моделирования будущих цен для портфелей. |
Стратегия_manager.py | Управляет стратегиями, реализованными в папке «стратегии». |
Вам нужно будет установить следующий пакет для обучения и тестирования моделей.
Вы можете установить все пакеты, используя следующую команду. Обратите внимание, что сценарий был написан с использованием Python3.
pip install -r requirements.txt
Давайте посмотрим, как мы можем использовать все стратегии, приведенные в инструментарии для создания наших портфелей. Первое, что вам нужно сделать, это изменить файл stocks.txt в папке акций и добавить акции по вашему выбору. Рекомендуется сохранить список небольшим, т.е. где -то от 5 до 50 акций должно быть в порядке. Мы уже поместили небольшой список акций, содержащий множество технологических акций, таких как AAPL, MSFT, TSLA и т. Д. Позвольте нам строить наши портфели сейчас. Это главная команда, которую вам нужно запустить.
python portfolio_manager.py --is_test 1 --future_bars 90 --data_granularity_minutes 3600 --history_to_use all --apply_noise_filtering 1 --market_index QQQ --only_long 1 --eigen_portfolio_number 3 --stocks_file_path stocks/stocks.txt
Эта команда будет использовать последние 5 лет ежедневных данных, за исключением последних 90 дней и создавать несколько портфелей для вас. Основываясь на этих портфелях, он затем проверит их на выборочных данных 90 дней и покажет вам эффективность каждого портфеля. Наконец, он также сравнит производительность с вашим выбором рыночного индекса, который является QQQ здесь. Давайте подробно погрузимся в каждый из параметров.
Вот несколько примеров для построения различных видов портфелей.
python portfolio_manager.py --is_test 1 --future_bars 30 --data_granularity_minutes 3600 --history_to_use 90 --apply_noise_filtering 1 --market_index QQQ --only_long 0 --eigen_portfolio_number 3 --stocks_file_path stocks/stocks.txt
python portfolio_manager.py --is_test 0 --future_bars 0 --data_granularity_minutes 60 --history_to_use all --apply_noise_filtering 1 --market_index SPY --only_long 1 --eigen_portfolio_number 3 --stocks_file_path stocks/stocks.txt
python portfolio_manager.py --is_test 1 --future_bars 90 --data_granularity_minutes 3600 --history_to_use all --apply_noise_filtering 0 --market_index SQQQ --only_long 1 --eigen_portfolio_number 1 --stocks_file_path stocks/stocks.txt
Четыре различных стратегии портфеля в настоящее время поддерживаются Toolkit.
Когда вы запустите команду выше, наш инструмент будет генерировать портфели из всех этих стратегий и отдать их вам. Давайте посмотрим на некоторые полученные портфели.
Для этой цели мы будем использовать 9 акций в файле акций/акций. Когда мы запускаем вышеуказанную команду, мы сначала получаем веса портфеля для всех четырех стратегий. В целях тестирования вышеуказанная команда использовалась последние пять лет ежедневных данных до 29 апреля. Остальные данные за этот год использовались для прямого тестирования, т.е. Стратегии портфеля не имели к ним доступа при создании портфелей.
Что если моему портфелю нужны разные акции? : Все, что вам нужно сделать, это изменить акции в файле stocks.txt и снова запустить инструмент. Вот последняя команда, которую мы запускаем, чтобы получить наши портфели:
python portfolio_manager.py --is_test 1 --future_bars 90 --data_granularity_minutes 3600 --history_to_use all --apply_noise_filtering 1 --market_index QQQ --only_long 1 --eigen_portfolio_number 3 --stocks_file_path stocks/stocks.txt
Мы видим, что портфель собственных значений придает TSLA большой вес, в то время как другие делят свои веса более равномерно. Интересное явление, происходящее здесь, - это хеджирование с SQQQ , что все стратегии выучились автоматически. Каждый инструмент присваивает некоторый положительный вес SQQQ, а также назначает положительные веса другим акциям, что указывает на то, что стратегии автоматически пытаются хеджировать портфели от риска. Очевидно, что это не идеально, но просто тот факт, что это происходит, увлекательно. Давайте посмотрим на результаты задних тестов за последние пять лет до 29 апреля 2020 года.
Западные тесты выглядят довольно обнадеживающими. Черная пунктирная линия - это рыночный индекс, т.е. QQQ . Другие линии - стратегии. Наша индивидуальная реализация генетического алгоритма, по -видимому, имеет лучшие результаты за бэк -тестом, потому что это расширенная версия других стратегий. Собственное портфель, который больше всего взвесил TSLA, имеет наибольшую волатильность, но его прибыль также очень высока. Наконец, как и ожидалось, MVP имеет минимальную дисперсию и в конечном итоге наименьшая прибыль. Однако, поскольку дисперсия чрезвычайно низкая, это хороший портфель для тех, кто хочет оставаться в безопасности. Самая интересная часть приходит дальше, давайте посмотрим на результаты форварда или будущих испытаний для этих портфелей.
Эти результаты с 29 апреля, 2020 по 4 сентября 2020 года. Более того, большинство из этих доходов связано с TSLA за последние несколько месяцев. После этого наш алгоритм GA работал довольно эффективно, когда он превзошел рыночный индекс. Опять же, как и ожидалось, MVP имел самый низкий риск и вознаграждение и медленно вырос через 4-5 месяцев. Это показывает эффективность и силу этих стратегий оптимизации алгоритмических портфелей, где мы разработали различные портфели для различных видов рисков и профилей вознаграждения.
Мы рады поделиться этим инструментом с торговым сообществом и надеемся, что людям понравится и внести свой вклад. Как и в случае со всем в торговле, эти стратегии не идеальны, но они основаны на строгой теории и некоторых великих эмпирических результатах. Пожалуйста, позаботьтесь о торговле с этими стратегиями и всегда управляйте своим риском. Вышеуказанные результаты не были выбраны вишней, но рынок был очень оптимистичным за последние несколько месяцев, что привело к сильным результатам, показанным выше. Мы хотели бы, чтобы сообщество попробовали разные стратегии и поделились ими с нами.
Особая благодарность блогу Скотта Рима. Собственные портфели и концепции портфеля с минимальной дисперсией поступили из его постов в блоге. Код для фильтрации собственных значений ковариационной матрицы также был в основном получен из одного из его постов.
Продукт от традиционных технологий
Copyright (c) 2020-й-present, tradytics.com