Постов с тегом "Python": 222

Python


Знаешь, как считать взвешенную по времени доходность? Очень нужен твой совет!

    • 10 августа 2020, 12:06
    • |
    • Grin
  • Еще
Доброго дня, товарищи инвесторы. 

Для знающих сразу вопрос:
Есть ли какой либо инструмент, рассчитывающий взвешенную по времени доходность для S&P 500?  
Если прямо инструмента нет, то есть ли инструмент считающий эту TWR для набора данных?
Может там сайт какой или эксель у кого завалялся?



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

Теперь к теме топика. Я затормозил в вроде бы совершенно простом моменте — как считать доходность!
Тут можно начинать кидать в меня тапки, отписываться и вот это все, ведь даже школьник знает, что считать доходность при условии пополнения и изъятия можно двумя методами:
Взвешенно по деньгам MWR и взвешенно по времени TWR!

Для взвешенного по деньгам расчета (Money weight return) я нашел и честно скомуниздил готовое решение, вы можете посмотреть его в

( Читать дальше )

бюджетный вариант удаленного робота на виртуальном сервере (3)

в продолжение поста https://smart-lab.ru/blog/634376.php
Удалось найти провайдера с VPS (RAM 512M+установка своей OS) всего за 55 руб/месяц.
Поставил минимальную XP + QUIK 7.5 + ALOR + Python 3.4 + VS2010 + NET 4.0  и все это на 7 GB влезло.
Неделю уже в реале работает !

бюджетный вариант удаленного робота на виртуальном сервере (3)

Теперь надо попробовать со скриптами QLUA + Python 3 запустить…

Внешний долг России

Центробанк публикует много полезной статистики. Сегодня были опубликованы данные по внешнему долгу России (долг перед нерезидентами, в том числе по ОФЗ). Последние доступные данные — март 2020. 
http://cbr.ru/statistics/macro_itm/svs/#a_71429
Внешний долг России
Внешний долг России

( Читать дальше )

Место России по поголовью домашних животных

Продолжаем качать Питоном и изучать статистику ООН по сельскому хозяйству. На это раз — поголовье домашних животных.
http://www.fao.org/faostat/en/#data/QA
Скрипт скачивает данные, анализирует, отсылает в гугл для перевода и записывает результаты в файл rank.txt. Он появится сам в папке, где вы положите скрипт.
---
В файл записывается это:

Russian Federation has the 6 place in the world in the number of Beehives
Российская Федерация занимает 6 место в мире по количеству ульев
Russian Federation has the 6 place in the world in the number of Ducks
Российская Федерация занимает 6 место в мире по количеству уток
Russian Federation has the 7 place in the world in the number of Geese and guinea fowls
Российская Федерация занимает 7 место в мире по количеству гусей и цесарок
Russian Federation has the 7 place in the world in the number of Pigs
Российская Федерация занимает 7 место в мире по количеству свиней
Russian Federation has the 7 place in the world in the number of Rabbits and hares
Российская Федерация занимает 7 место в мире по количеству кроликов и зайцев
Russian Federation has the 9 place in the world in the number of Chickens
Российская Федерация занимает 9 место в мире по количеству цыплят
Russian Federation has the 9 place in the world in the number of Horses
Российская Федерация занимает 9 место в мире по количеству лошадей
Russian Federation has the 10 place in the world in the number of Turkeys
Российская Федерация занимает 10 место в мире по количеству индеек
Russian Federation has the 16 place in the world in the number of Sheep
Российская Федерация занимает 16 место в мире по количеству овец
Russian Federation has the 18 place in the world in the number of Cattle
Российская Федерация занимает 18 место в мире по количеству крупного рогатого скота



( Читать дальше )

Место России по производству сельхозкультур

Это продолжение поста
Качаем Питоном данные ООН по продовольствию
Кодить так кодить!
Текст составлен автоматически на основе данных ООН.
2018 год:

Россия занимает:
1 место в мире по производству смородины.
1 место в мире по производству малины.
1 место в мире по производству ячменя.
1 место в мире по производству вишни (англ. Sour Cherry)
1 место в мире по производству сахарной свеклы.
1 место в мире по производству овса.
2 место в мире по производству крыжовника.
2 место в мире по производству люпина.
2 место в мире по производству семян подсолнечника.
2 место в мире по производству гречихи.
3 место в мире по производству семян горчицы.
3 место в мире по производству ржи.
3 место в мире по производству льняного семени.
3 место в мире по производству конопли.
3 место в мире по производству пшеницы.
4 место в мире по производству картофеля.
4 место в мире по производству льноволокна.
4 место в мире по производству тыкв.
4 место в мире по производству капусты.
4 место в мире по производству гороха.
4 место в мире по производству огурцов и корнишонов.
4 место в мире по производству моркови и репы.
7 место в мире по производству тритикале.
7 место в мире по производству арбузов.
8 место в мире по производству яблок.
8 место в мире по производству клубники.
8 место в мире по производству чечевицы.
8 место в мире по производству семян сафлора.
9 место в мире по производству лука.
9 место в мире по производству чеснока.
9 место в мире по производству сои.
10 место в мире по производству рапса.
--
Список обновлён. По моей невнимательности в первоначальном варианте в статистике было два Китая: «Китай с Тайванем» и «Китай без Тайваня». Я строил список не руками, а скриптом, поэтому не заметил этого.
Теперь всё правильно, и Россия по большинству позиций вскарабкалась на 1 строчку выше.


Качаем Питоном данные ООН по продовольствию

В составе ООН есть продовольственная организация. Она называется FAO. Там публикуется много интересной статистики по мировому сельскому хозяйству. Можно посмотреть урожаи и посевные площади в разных странах мира.
Вот ссылка
http://www.fao.org/faostat/en/#data/QC
Там в разделе Bulk Downloads лежит файл
http://fenixservices.fao.org/faostat/static/bulkdownloads/Production_Crops_E_All_Data.zip

Мы его будем качать и распознавать с помощью языка Питон. 
Найдём страну, которая является мировым лидером по валовому сбору той или иной культуры.
Скрипт полностью автоматический. Он сам качает архив с данными с сайта ООН, сам его обрабатывает, отправляет в Гугл для перевода с английского на русский и сам пишет результаты в файл.
---------
1. Качаем и устанавливаем Питон: https://www.python.org/downloads/
2. В чёрном окошке cmd.exe устанавливаем библиотеку pandas для быстрой работы с данными:
pip install pandas


( Читать дальше )

Качаем цены с Росстата и строим графики

Росстат каждую неделю публикует цены на основные товары из потребительской корзины. Сейчас в ней 112 наименований.
https://www.fedstat.ru/indicator/37426
Данные собираются по всей России. Цены можно посмотреть для каждого региона, вплоть до малых городов. НО! по городам почему-то качается только текущий 2020 год, как бы хитро вы ни выставляли птички в фильтрах. А вот для субъектов Федерации типа г. Москва, Ростовская область все данные отдаются корректно. 
Качаем цены с Росстата и строим графики

Страница грузится долго, сайт глючный, при работе с ним требуется ангельское терпение.
---
Публикую скрипт, который на основе скачанных данных строит красивые графики. Работа будет полуавтоматическая: данные в формате эксель вы качаете руками, а потом скрипт подхватывает скачанный файл и рисует графики.
Качаем цены с Росстата и строим графики

( Читать дальше )

Что же такое бэктестинг и есть ли у него сердце?

    • 02 июля 2020, 10:23
    • |
    • Grin
  • Еще
Не понятно, к чему это все? Почитай тут

Доброго дня! 
Вашему вниманию представляется продолжение потуг начинающего программиста / аналитика по созданию самопальной системы бэктестинга на python. 
Настала пора поближе понять, что же такое backtesting торговых стратегий. Расскажу как обычно своими словами.

Вот сидел я, смотрел на графики и прозрел! Все же просто в этих ваших инвестициях, покупай на дне, продавай на пике! Изи же! 

Осталось понять, когда оно на дне, когда на пике.

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

Ну и как водится, истина где то там, в безбрежном океане информации и пока не попробуешь, не узнаешь. 
А пробовать то надо за деньги, а деньги жалко! 

И тут снова приходит великолепная идея, есть же данных о прошлых значениях, цен, объемов, мультипликаторов, осцилляторов, корреляций. Что если сформировать портфель в прошлом и посмотреть, как все было бы сейчас, если бы мы все купили/продали тогда?  

Это и есть backtest. Ответ на вопрос, что было бы, если бы мы в соответствии с подсказками, которую дает наша стратегия, купили / продали в прошлом. 
Такое тестирование можно делать смотря на графики, табличками в экселе используя специально предназначенные для этого инструменты. 

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

Ну и хватит потока мыслей, переходим к реализации. 
То, что я пытаюсь написать называется событийно — ориентированным бэктестом. 

( Читать дальше )

Скачиваем историю дивидендов со Смартлаба

    • 01 июля 2020, 16:03
    • |
    • Artem
  • Еще
Всем привет!

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

Код использует библиотеку pandas (устанавливается с помощью команды pip install pandas).

https://pastebin.com/N3G4fupa

В параметре syms в кавычках через запятую указываем список интересующих инструментов. Скрипт запускаем командой
python smartlab_dividends.py

Спасибо Смартлабу за собранные данные!

Нейросети в торговых системах. 1.

    • 25 июня 2020, 22:59
    • |
    • 3Qu
  • Еще

Вначале о грустном. Не понимая теорию нейросетей (НС) у вас вряд ли получится построить на ней ТС. Поэтому лучше для начала почитать теорию, например, Хайкин Саймон. «Нейронные сети. Полный курс». Книга уже достаточно старая и в ней нет новомодных веяний, но она дает базовые представления о НС.

И второе, мы будем далее для построения систем использовать пакет scikit-learn для Python. рекомендую ознакомиться. Есть и более продвинутые пакеты, скажем, TensorFlow и др., но их использовать мы не будем, и ограничимся более простым scikit-learn.
Теперь о том, чего здесь не будет. Здесь не будет теории НС, разве эпизодически и оч кратко. Здесь не будет описания пакетов Python, работы с графикой и пр. Обо всем этом вы можете прочесть в интернете, книгах, и документации Python.
В топике мы будем обсуждать только применение НС к ТС и их построению.
Так как тема достаточно велика, в один топик не влезет, сегодня мы займемся самыми общими вопросами. Следующая часть будет недели через две, раньше не получается.



( Читать дальше )

....все тэги
UPDONW
Новый дизайн