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

Python


Алгоритмические онлайн-сервисы

В перерывах между ТСЛабом и голым кодингом копаюсь в разного рода онлайн сервисах по роботобилдингу. Пока вот очередной перерыв, решил опубликовать список из онлайн-сервисов, которые предоставляют разные возможности для бектестов и деплоймента алгоритмов. Т.к. большинство смартлабовцев сидят на иглах ТСЛаба и WL, делать детальное описание не буду, хотя покопался там изрядно. Может как-нибудь за следующим перерывом...

RIZM — прикольный конструктор. Недавно вроде гугл показал подобный кодогенератор. Суть — Вы не пишете коды, а складываете кубики. Только не такие, как в ТСЛабе или еще где-то, а более близкие к программированию. Т.е., если Вы умеете читать код, но не умеете его писать (аки покорный Ваш слуга), то это для Вас.

QUANTOPIAN — упоминался несколько раз тут на СЛ. Quantopian стал центром для выпускников математических и научных дисциплин, которые обладают навыками программирования. Для кодеров. Python. Многие говорят, что соскочили с квантконнекта в квантопиан именно по причине простоты питона. Легендарный

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

Встреча с алготрейдингом

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

Итак, краткая сводка:

1. ТSLabне поднял котировки СМЕ-фьючей, поиск RTFM не дал результатов. Платформа заточена под рынок РФ, все остальное кастомное. Простой ТХТ файл с простой котировкой вида «20141207 230100;2068.75;2068.75;2068.25;2068.25;11» не поднял. Выбросил.

UPD: После общения в личке и танцев с бубнами котировки появились. Об этом ноль открытой информации. НОЛЬ!

2. WealthLab — очень громоздкая конструкция. Очень платный. ))) Ближайшие RTFM не дали результатов. Тем более, демо-версия кастрированная, а ломанную не позволяет религия невозможно использовать. Без знания программирования что-то неклассическое заалгоритмить практически невозможно. Отложен в сторону.
3. AmiBroker — AFL понравился больше всего. Есть понятные примеры, очень простые конструкции языковой логики.  Бесплатная версия кастрированная, не помнит ничего после закрытия. Платная — кандидат на внимание.
4. StockSharpвообще не завелся. Поставлен через VS 2012 Ultimate — не работает. Скачан с GitHub'a — same story. Да, я разблокировал архивы! При попытке поднять простые коды с примерами ругается кучей ошибок, в которых с порога не разберешься. Будь я программист, то поковырялся бы, люди же кодят! Плюс, там реально правильный набор подключений к Америке. Я бы сказал, что это единственный продукт, который работает с западными рынками адекватно. All others SUCK. Но это продукт для тех, кто УЖЕ умеет кодить на Шарпе. Или вообще умеет кодить. Очень хотелось бы приподнять. Реальный кандидат на платный курс.
5. ThinkOrSwim — ThinkScript обладает определенными возможностями, и для решения индикаторных задач он очень прост. Для бектестинга не подходит в принципе, хотя на доступной истории можно отрисовывать сделки и потом смотреть их на графике. Но получить статистические данные никак. Вообще. По крайней мере, я не нашел. Остается старым добрым ТОСом. ;)

Теперь по самим языкам.

Я склоняюсь к тому мнению в сети, что по времени, которое нужно потратить на изучение, будучи Zero в кодинге, написание своего софта комфортнее. Это _не_ правильнее, зачастую не быстрее, но комфортнее. Минусы подхода — многие не знают проблематику алготрейдинга (partial fill, slippage, «garbage» ticks, data delay, order delay, time zones, off-market ticks, заглядывание в будущее и куча всяких еще «этсэтэра»). Без этих знаний и опыта MyWay будет похож на путь джедаев-горе-трейдунов-самодуровучек. Но т.к. я работал уже разработчиком алгоритмов (некодинг), и сталкивался с кучей всего в реальных торгах алгоритмов, то точно знаю чего хочу и какие избежать подводные камни. Мне не нужны кубики, мне не нужны сотни всяких готовых индикаторов. Я не хочу долго изучать «как средствами библиотеки собрать цифры в нужном порядке». Мне Просто Нужен Алгоритм с Оптимизатором! Не требовательный к скорости бектеста. Не требовательный к скорости исполнения потом в режиме реального времени.


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

Год кодинга

Всегда мечтал уметь программировать. Вот начал самостоятельно изучать Computer Science и Python Programming, имея сугубо финансово-экономический бэкграунд, но будучи гиком в душе.

Изучаю Python в контексте инструментария для применения в Data Science и далее в Machine Learning. Навыков программирования до этого не имел, если не считать работу со сложными связанными таблицами excel.

Начал с самого базового курса "Основы программирования на Python", книги Марка Лутца «Изучаем Python» и тренинга Python Essentials от Enthought, Inc. И официальные инструкции поглядываю: The Python Tutorial.

Также обучаюсь на курсах:

• массачусетского технологического института (MIT) MITx: 6.00.1x Introduction to Computer Science and Programming Using Python на 

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

Тестирование стратегий на Python для начинающих алготрейдеров

Знакомый показал такую среду www.quantopian.com/home
которая позволяет:

* закодировать и протестировать простейшие идеи на языке Python (один из самых популярных и простейших языков) прямо в браузере
* дает бесплатный доступ к данным за 13 лет (похоже в основном американский рынок?)
* обеспечивает среду для исследований (можно строить графики корреляций, спредов для парной торговли и т.п.)
* участвовать в конкурсе и получить деньги в управление

Сам не пробовал, не знаю какое там качество данных и качество бэктестера. Кто попробует — напишите.
Сам проект показался уникальным и интересным. Если знаете аналоги — пишите.

Тестирование стратегий на Python для начинающих алготрейдеров

@@@ NASDAQ\NYSE интрадей

from urllib import urlretrieve

url = 'http://www.netfonds.no/quotes/posdump.php?date=%s%s%s&paper=%s.%s&csv_format=csv'

# N = NYSE
# O = Nasdaq
# A = Amex

ticker       = 'IBM'
exchange_sym = 'N'
year         = '2015'
month        = '11'
day          = '02'

urlretrieve (url % (year, month, day, ticker, exchange_sym), 'ibm_i.csv')

@@@ NASDAQ\NYSE c 2000 г. \ дневки

from urllib import urlretrieve

url='http://www.netfonds.no/quotes/paperhistory.php?paper=%s.O&csv_format=csv'

urlretrieve(url %'AAPL', 'aapl.csv')

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