Избранное трейдера MrD

по

Торговые роботы. Как распределить капитал между стратегиями

    • 25 апреля 2015, 12:01
    • |
    • Serg_V
  • Еще
Здравствуйте!

                  На почту часто поступают вопросы по поводу распределения капитала между стратегиями. Как добиться стабильных и устойчивых результатов на продолжительном временном интервале? Как эффективно объединить разные торговые роботы в единую систему?
                  Ниже будет описан собственный подход к данному вопросу. На абсолютную истину он не претендует, но подход вполне логичен, достаточно прост и проверен на собственном опыте. Надеюсь для кого-то это будет полезно.
                  Затрагивать тонкости построения и оценку качества работы отдельных стратегий не будем. Допустим, в арсенале уже есть несколько торговых стратегий (например 3), основанных на надежных идеях и приносящих вам уже какой-никакой профит. Системы полностью формализованы, оттестированы на исторических данных, имеют достаточный период реальной торговли. Это позволяет уже иметь какие-то ожидания в плане будущего поведения данных торговых стратегий.

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

Как самому сделать робота на опционах. Лайфхак

    • 03 апреля 2015, 13:23
    • |
    • Vkt
  • Еще
Есть мнение, что сделать робота очень сложно. Это под силу только крутым программистам. Попробую опровергнуть — чтобы сделать робота достаточно уметь хорошо пользоваться поиском и знать азы программирования в рамках школьной/институтской программы.
Большинство задач решается операторами if, while, repeat и иногда  for. Плюс специфические функции для взаимодействия с торговой платформой.
Будет этот робот зарабатывать или нет зависит уже не от навыков програмирования, а от заложенной в него логики.
Напишем простейшего робота на qlua для Квика, который будет покупать/продавать волатильность на опционах
путем покупки синтетического стрэдла www.option.ru/glossary/strategy/long-straddle
или продажи синтетического стрэдла www.option.ru/glossary/strategy/short-straddle

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

о неизбежности профита при следовании правил. а верны ли правила?

Я не знаю как «позвать перетереть», но надеюсь ZeroWizard увидит

в этом топике http://smart-lab.ru/blog/242852.php автор приводит некоторую статистику своей торговли со словами «ну что, критиканы, соснули?»
Этот топик благополучно потонул в общих помоях не вызвав особого интереса. Но оживить его необходимо, чем и займемся по пунктам.

Для начала сам вид кривой прироста капитала (эквити). Можно сколько угодно много раз пытаться впихнуть туда наклонную прямую, но я считаю не стоит заниматься самообманом. 
Если рассмотреть эквити по фрагментам, видно, что примерно от 1 до 170й сделки эквити совершенно боковое. Затем прирост и опять боковик сделок на 150. Затем — какой-то значимый прирост капитала последние сделок 40. О чем это говорит?
Во первых — система должна была просто игнорировать первые сделок 250-300. Смысл туда сюда гонять деньги? Если торговать это на том же СМЕ, то там комисов выйдет под 1000долл за этот период — при условии что мы торгуем один контракт. А контракт там торговался не один, а 1.2 в среднем. то есть грубо 1200 долларов комиссий. Можно смело отнять от итогового результата.

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

Парный трейдинг опционами.

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

Метод торговли прекрасно работает до резкой раздвижки спреда, которая рано или поздно происходит, если бы не раздвижка — был бы грааль 100%.

Как же избавиться от недостатков данного метода, сохранив все его достоинства, при  этом главный недостаток (раздвижка спреда) сделать самой большой возможностью заработать?

Все просто, нужно применить навыки парного трейдинга на опционах! 

Берем разные страйки одного б/а и, создаем график спреда между страйками, создаем 2 позиции как на картинках ниже, и спокойно торгуем спред откусывая понемногу профита и с нетерпением ждем резкой раздвижки спреда которая нам позволит как минимум заработать десятки процентов к депозиту!

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

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

Кооперативная многозадачность в LUA как неплохое подспорье для ваших роботов

    • 25 февраля 2015, 17:59
    • |
    • bstone
  • Еще

 

Вступление

Материала по LUA для новичков, мне кажется, более чем достаточно. Вот с более продвинутыми идеями какой-то напряг. Добавлю одну в общую копилку.

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

LUA сам по себе конечно ущербный во многих аспектах, но это не мешает использовать его сильные стороны на благо своего депозита. Одной из таких сильных сторон я считаю встроенную поддержку кооперативной многозадачности. Думаю нет смысла объяснять что это такое, т.к. профессионалы и так знают, а не профессионалам это вряд ли будет интересно. Другое дело практическое применение этой штуки. Вот своими соображениями на этот счет я сегодня и собираюсь поделиться.


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

Qlua для чайников. Часть 7. Отвечаю на ваши вопросы. Часть 1

    • 25 декабря 2014, 16:09
    • |
    • orekton
  • Еще

Этот урок будет посвящен ответу на некоторые ваши вопросы, которые накопились в ходе публикации данных уроков.

Qlua для чайников. Часть 1

Qlua для чайников. Часть 2

Qlua для чайников. Часть 3. Делаем робота-спредера

Qlua для чайников. Часть 4. Анализ информации из стакана и работа с заявками

Qlua для чайников. Часть 5. Работа с таблица Quik. Поиск заявок. Искусство отладки

Qlua для чайников. Часть 6. Модуль торговли. Остатки по бумагам на фондовом рынке. Удаление заявок


Вопрос: Можно пример, что бы в 23.40 закрывались все открытие позиции по рынку?

Для решения поднятой в данном вопросе задачи необходимо следующее:

  • Знать, как выставлять заявки. Это мы уже умеем. Данную тему мы изучили на уроке 1 (http://robostroy.ru/community/article.aspx?id=773) и уроке 6 (http://robostroy.ru/community/article.aspx?id=790), где мы писали блок совершения сделок биржевого робота.
  • Получить список позиций (частично этот вопрос мы так же изучили на уроке 6).
  • Работать со временем. Этому мы сейчас будем учиться.
  • Выставлять заявку именно по рынку. Этому тоже мы будем сейчас учиться.


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

Анализ опционной позиции через распределение вероятностей

Возникла тут идея — как можно было бы оценивать позу без греков, модели Блэка-Шоулза (БШ) или более сложных моделей, требующих продвинутых познаний в математике. Все, что потребуется — это рыночное распределение вероятностей цен на экспу и анализ того, как меняются оценки позиции при определенных изменениях этого распределения. Реализовал эту идею, хотел бы поделиться результатами. Буду рад получить порцию критики или новых идей, ну и вообще обсудить.

Для примера решил рассмотреть позицию зигзаг:

Позиция зигзаг 

Пропорции в этой позе подобрал так, чтобы дельта и вега (по БШ) были равны нулю. Т.е. с точки зрения БШ, позиция — нейтральная.

Имея распределение вероятностей, мы можем посчитать различные оценки нашей опционной позиции, такие как:

    • вероятность безубытка на экспу (площадь под зелеными участками распределения)
    • вероятность краха (если задать размер недопустимых потерь для портфеля)
    • матожидание PnL
    • текущий PnL


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

Идея простого робота для интрадея в fRTS. Опережающий индикатор движений.

    • 22 ноября 2014, 14:12
    • |
    • Romanio
  • Еще
Всем привет. 

     Думаю многие новички начинают строить роботов исходя из простых индикаторов, цены инструмента и поиска параметров скользящих средних. Но оказывается, что в движении фьючерса РТС слишком много шума, и ложных сигналов. А при увеличении периода скользящих, при попытке ловить только сильные движения неизбежно возникает сильное запаздывание при срабатывании индикатора, и сделки открываются когда движение уже подходит к концу.    

    Идея — анализировать не цену инструмента, а таблицу всех сделок. Получаем ОПЕРЕЖАЮЩИЙ ИНДИКАТОР.
 
Рассмотрим таблицу всех сделок для RIZ4

Идея простого робота для интрадея в fRTS. Опережающий индикатор движений. 

Непрерывно суммируем количество всех новых сделок — если сделка КУПЛЯ — то прибавляем, если ПРОДАЖА — то вычитаем.
В итоге получаем график дельты. И его отличие от графика цены в том, что он более сглажен, и двигается он с небольшим опережением к графику цены, что позволяет наложив на него простой индикатор тренда всегда предсказывать движения цены заранее.

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

Делюсь бесплатной стратегией. Проверено годами.

Никогда не продавайте на верхней планке. Дождитесь на планке приличного объема, например для Си, где то 30-40 тыс. контрактов и поставьте свою заявку на покупку, если объем на планке снизился до 20 тыс. снимите свою заявку. Если на планке вам купить не удалось, торги остановили и открылись с гэпом вверх, подождите 30 мин. за это время брокеры успевают закрыть всех маржинкольщиков и продайте свой объем.

То же самое относится к нижней планке, только все наоборот.

Еще раз о теории вероятностей и соотношении стоп/профит, или пол смартлаба знает теорвер на 2

    • 17 октября 2014, 12:02
    • |
    • Lafert
  • Еще
Вчера был топик, где доказывалось, что при соотношении стопа к профиту, скажем, 1:3 стоп будет срабатывать не в 3, а в 5 раз чаще, и даже было дано какое-то
доказательство. Так, как мне лень было искать ошибку в доказательстве, то приведу просто программу, которая моделирует эту ситуацию в матлаб. Если кто хочет проверить лично, покупаем Матлаб (или берем демо-версию), или скачиваем его бесплатный аналог Octave, после чего вставляем код и запускаем.

Логика программы такова. Мы задаем стоп и профит. После этого проводим 10000 испытаний, в каждом из которых моделируем изменения цены на 1 тик, пока цена не достигнет или стопа, или профита

s=0;
p=0;
stop=1;
profit=3;
for i=1:10000
   a=0;
   while not(a<=-stop || a>=profit)
      r=rand();
      if r>0.5
         a=a+1;
      end
      if r<0.5
         a=a-1;
      end
   end
   if a<=-stop
      s=s+1;
   end
   if a>=profit
      p=p+1;
   end
end
s
p

А теперь результаты программы за 5 запусков
Кол-во
стопов профитов
7536   2464
7410   2590
7521   2479
7494   2506 
7490   2510

Ну, думаю, тут всем видно, что соотношение все таки скорее 3:1, чем 5:1

PS прошу накинуть плюсов, что бы вывести на главную. Пусть прочитают люди, голосовавшие за вчерашний пост, что бы им стало немножко стыдно) 

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