Блог им. ilyaalex

R для каждого. Часть 1

Всем привет! :)

Выкладываю небольшой обзорный курс по языку программирования R. Это язык очень популярен за рубежом для анализа биг даты и поиска рыночных закономерностей. Его используют: физики, математики и как Вы уже поняли кванты.

Господа трейдеры — не бойтесь программирования. Это просто. Главное системно тратить на это немного времени. И я попытаюсь показать Вам это.

В этой части два видео. Знакомство с R-Studio и обзор простейших функций языка. Прошу:



★52
41 комментарий
Тут буквами и словами не каждый может написать что он за алгоритм хочет реализовать. А ты предлагаешь изучит язык изложения того чего сами на могут ни сказать ни написать ни на каком языке:)
avatar
incognitus, изучение языка программирование позволяет научиться мыслить алгоритмически, что поможет в создании торговых алгоритмов
avatar
love_to_trade, У-у-у-у, это тяжёлый случай. Любой язык программирования ограничивает алгоритмическое мышление и именно по этому я трейдер придумываю, а ты программист удивляешься тому откуда у меня идеи берутся. Хотя, я очень сомневаюсь что ты понял что я написал.
avatar
黑馬, как любой навык вопрос желания и времени, потраченного на его изучение.
avatar
love_to_trade, вот как можно применять R для МТ4. Первая картинка- расчет оптимальной корзины пар валют за 2000 дней и кривая эквити, если бы эта корзина была сформирована 2000 дней назад. Вторая картинка- 200 дней


Сайт автора sites.google.com/site/prof7bit/
avatar
— Программа напиши мне что-нибудь чтобы я как-нибудь очень сильно стал богаче, основной критерий — мне должен понравиться твой результат
— ??????? уточните запрос
— Ну тупой софт! Все же на пальцах объяснил! А бред! Лучше руками буду торговать!
palka, богаче понятие растяжимое, уточните зарос ;))
avatar
А кто это кванты?
Насколько я помню, R-studio использовалось в прошлом десятилетии для реинжиниринга бизнес процессов, всякие там диаграммы-пиктограммы, соединенные стрелочками.
Анатолий Иванов, сейчас так все быстро меняется, постоянно возникают новые технологии. R-studio сегодня — это анализ и визуализация данных, множество библиотек (пакетов) для решения различных прикладных задач. Неполный список бибилотек и их возможностей в разрезе финансов — cran.r-project.org/web/views/Finance.html
avatar
А не пофигу ли на каком языке все это делать?
avatar
Николай Скриган, ну звучит ровно так же как вопрос «а не пофиг с каким интернетом торговать?»
palka, поищите аргумент поадекватнее.
avatar
Николай Скриган, вы сейчас возражаете как программист программисту или как «трейдер» программисту?
palka, это ответ или вопрос?
Как трейдер, который программирует себе сам. И мне по барабану, на каком языке написан исходник, если программа делает то, что мне нужно.
avatar
Николай Скриган, тогда как программист с 10 летнем стажем скажу что любая программа выполняется в силу «интерпретации» или же «компиляции» на порядки разной скорости…более того, если использовать графические ускорители то различие возрастет еще на 1-2 порядка (а к ускорителю можно добраться лишь на специализированных языках и компиляторах) и если вы анализируете «тиковые данные» то аргумент «мне пофигу» звучит как мнение «кухарки к требуемым параметрам системы». А впрочем… мы все равно друг друга не поймем :) Пишите дальше и будьте довольны
palka, на мои задачи мне скорости хватает с запасом на несколько порядков, если вам это что-либо говорит. И мнение высокомерных кодировщиков, которые разговаривают сквозь зубы и мнят себя неизвестно чем, мне не помеха.
avatar
Николай Скриган, с высокомерия начали вы с «поищите аргумент поадекватнее». В проекции на тему и понятие программирование скорее вы не адекватны чем я. Закончим диалог, мне от вас как вам от меня ничего не нужно, на том и остановимся
palka, мне от вас тем более. Если встряли комментировать — давайте сразу по делу, а не понтами кидаться. На адекватные комментарии я отвечаю адекватно.
avatar
Николай Скриган, вам по делу и объяснил… но вы похоже не поняли. Повторюсь: вычисление на разных языках программирования+доступное для них «железо» может по скорости отличаться на 2-3 порядка… проще говоря то что вы пишете на каком скриптовом языке qpile будет отличаться по скорости от CUDA + C в 1000 раз… но само собой «вас это не интересует»… вам нужно просто побаловаться десятком сделок дабы приобщится к иллюзии «трейдерский успех» Ок.
palka, вы что-то пытаетесь объяснить объяснить насчет быстродействия человеку, которого учили программировать на ассемблере? :)
Ответьте тогда, какие преимущества даёт R по сравнению с тем же С, чтобы все бросились его изучать?

P.S. Вы правы. Программированием я зарабатывать не собираюсь. Но свои простейшие задачи решаю сам. А для более сложных могу составить исчерпывающий алгоритм, чтобы любой кодировщик средней руки смог превратить его в то, что нужно. Мне этого достаточно.
avatar
Николай Скриган, я просто доступно оспорил ваше возражение на счет «нет разницы на чем»… так вот есть и это аналогично проблеме «не важно какая скорость канала связи». Вы увидели неадекватность в этом… что для меня просто проявление полной профанации. Скорость вычислительной системы конечно же зависит от «самого медленного звена» и равна ему. Но если у вас интернет быстрый, а вычислений много ( я не говорю про скользячку — это вообще разводилово для лохов )… то выбор языка и архитектурного решения — решающий фактор. Но если ставить акцент «на типичного трейдера» то возможно ему не важно как медленно слить деньги. Мое уточнение касалось «бизнес решений» или «корпоративныйх банковских роботов»… И ваш аргумент звучит как полное непонимание. Про язык R ничего не скажу — не лазил в него. Языков наплодили множество (с учетом скриптовых), я инженер-системотехник и ассемблер мой базовый язык. Странно тогда что вы мешаете все в одну кучу. Меня задело это «не важно» а не конкретно язык R потому как вы явно сказали или не подумав или глупость или...(скорее всего) от незнания. Надеюсь я вам объяснил в чем вы ошиблись.
palka, ладно. Не буду спорить.
В вашей точке зрения есть разумные аргументы. Ошибка только одна — слив или выигрыш определяется отнюдь не скоростью работы программ. Если только не искать уязвимости и просчеты в программном обеспечении брокера.

P.S. На ассемблере меня учили программировать больше 40 лет назад. Так что я все забыл, кроме того, что это язык, максимально близкий к машинным кодам. :)
avatar
Николай Скриган, я не спорю с очевидным «плохой софт даст плохой результат на любой скорости» но я так понимаю мы обсуждали суть «хороший код сможет совершить раньше сделку приняв раньше решение, а это напрямую зависит от суммарной скорости вычислительной системы и скорость выполнения расчетов программной части одна из важных составляющих при прочих равных»
Николай Скриган, к тому же вы наверняка даже не думали о задаче «есть один крупный депозит, анализируя 100 подходящих по ликвидности тикеров получить за торговый день максимум прибыли перераспределяя в реальном времени позиции». Когда фьючерс сбера стоит в боковике, фьюч рубля может выстрелить, когда стоит сбер и рубль пошел вверх фьюч газпрома и прочее. Добавьте сюда акции и вы получите очень емкую для вычислений но рационально поставленную задачу «деньги должны работать как можно больше времени» в смысле «необходимо получить за данное время максимальную прибыль в том числе за счет перераспределения на лету текущих позиций» и поверьте, то как ВЫ пишете с критерием «не важно» обречено «лежать»… я написал на java подобную систему (но само собой о 100 и речи быть не может — анализировалось 5 тикеров и то сильно упирается в алгоритм). И вопрос скорости вычислений отнюдь не «банальный»
Программирование для слабаков
avatar
Goreloff, не забудь всему миру сообщить что ты досрочно для него умер за торговым терминалом… может он порукопещет что ты «не слабак» а просто «изгой» ;)

Расскажешь через 10-ок лет программе от этих ребят
rus.newsru.ua/auto/06nov2015/toyota_investiruet.html
которая будет решать «жить тебе дальше или ты лишний на этой планете»
Раз вы погромисты такие умные, чтож вы своих роботов здесь на смартлабе не выкладываете?
avatar
Goreloff, а ты не думал что «иногда один ребенок может спросить то, на что 10 мудрецов не смогут ответить». Если не понял до текущего времени, то я скажу прямо — задача «получения прибыльного робота» равна задаче «получения простейшего искусственного интеллекта который обыгрывает толпу»… думаю вторая интерпретация одного и того же вопроса не ставит под сомнение СЛОЖНОСТЬ задачи… при том что весь мир с лучшими умами пока так и не получил «искусственный разум»… тогда с чего сарказм?… ум не равно всемогущество. Уж это можно понять «далеким от программирования насмешникам»…
а где феррари и виллы с роботов, раз все так круто?)
avatar
aniga, дело не в крутости, а в банальном «высвобождении личного времени». Я думаю в дилемме сливать руками или сливать роботом — второе куда предпочтительнее — ваша голова в это время свободна для других тем а не обязана находится в «анабиозе трейдерской концентрации и постоянного стресса убытка». Не говоря уже когда робот будет в отличие от вас зарабатывать не имея психических стрессовых неадекватностей-тильтов

p.s. получив в доступ автомобиль не значит что вы получили возможность быть там где не может быть пеший — скорее наоборот, но вы высвобождаете ВРЕМЯ… время — основной фактор всей эволюции человечества — за жизнь люди пропускают через свою голову на порядки больше информации век от века (экспоненциальный закон роста)…
Так же как вынашивание ребенка доверяют суррогатной матери а не делают это сами… не потому что появится супер ребенок, он будет такой же плюс минус… вы приобретете СВОБОДНОЕ ВРЕМЯ… давно пора понять эту простую вещь
А если вы «торгую ради удовольствия от торговли» то вы подсознательно принимаете биржу в качестве казино — ради «пощипать нервишки и испытать судьбу» — чистое лудоманство и игровая зависимость и к понятию «эффективно зарабатывать» не имеет никакого отношения, это просто «наркотик» не более и тогда да — робот лишний! )) да и мир тоже: нужна ваша извилина и процесс ее маструбации
love_to_trade, много ли вы программ написали и ими пользуетесь?
Виталий Козлов, эмм, странный вопрос для программиста — все, что я пишу, только для того чтобы этим пользоваться.
avatar
спасибо, ждем продолжения
avatar
palka безусловно молодец)
avatar
palka, правда и вконтакте я еще не привык к твоим ответам на половину A4 за доли секунды)
avatar
Возможности которые дает R для DataMinig'а огромны, и для анализа рыночных данных отличный инструмент, не понимаю почему тут местные воспринимают эту среду как средство создания роботов, в основном его используют для поиска, создания и тестирования стратегий торговли, а автоматизируют уже другими инструментами. Сами ролики конечно слабые, для очень поверхностного ознакомления. Ну и еще местные чартисты которые ничего кроме как рисовать линии на графике не способны крайне негативно реагируют на любые посты по анализу рыночных данных отличных от их методов, в общем оно и понятно.
avatar
evgen000, основная аудитория — люди, не имеющие опыта программирования.
avatar
love_to_trade, когда будет продолжение?
avatar
TrendHunter, раз в неделю буду выкладывать продолжение
avatar

теги блога love_to_trade

....все тэги



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