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

по

Управление капиталом портфеля алгоритмических стратегий.

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

Рассмотрим разные варианты управления капиталом при торговле портфелем стратегий.

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

1. Фиксированный лот без реинвестирования. Просто суммируем две кривые прироста капитала. В данном случае все просто, одна стратегия делает прибыль, другая добавляет просадки. При раздельном тестировании этот метод позволяет наиболее точно оценить стратегию. Минус метода в том, что при значительном изменении капитала (вывод или занос денег) нужно править рабочий обьем. 

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

3. Создаем условия, когда каждая стратегия работает независимо (одна стратегия — один счет, стартовая сумма для счетов одинаковая), прибыль реинвестируется, либо уменьшается обьем при просадке счета. При этом каждое направление входа системы (лонг или шорт) рассматривается как отдельно взятая стратегия. Почему так? Возьмем простую трендследящую стратегию. На тренде вверх имеем хорошие сделки от лонга, но на резких и коротких коррекциях тренда шорт как правило не зарабатывает. И наоборот для тренда вниз. В этом случае мы будем резать лот на убыточном направлении стратегии и добавлять на прибыльном. 

4. Доработка варианта 3. К каждой отдельно взятой стратегии добавляем элемент equity-trading. В коде стратегии отслеживаем изменение капитала (start_deposit +- netprofit), параллельно заполняем массив финансового результата при торговле 1 лотом, вводим порог допустимой просадки и при ее достижении выключаем стратегию (торгуем минимально возможным обьемом — 1 контракт или 1 акция). При восстановлении теоретической кривой капитала выше порога просадки — возобновляем работу полным обьемом. Порог просадки задается исходя из прошлых данных бэктеста, либо на глаз. Сильно зажимать порог нельзя. На глаз у меня получилось, что максимальная просадка стратегии с учетом процента капитала выделяемого на стратегию примерно равняется 3% на весь капитал. То есть, если стратегия торгует на 30% капитала, то пороговое значение должно быть примерно 10%. Здесь возможны исключения, например для стратегий с малой просадкой можно задавать пороговое значение чуть больше максимальной исторической просадки.  
Мои тесты показывают, что при применении варианта 4 общая прибыль незначительно снижается, но так же снижается и просадка. Соотношение профит-просадка увеличивается примерно на 20%, для некоторых стратегий соотношение увеличивается в два раза. 


Апдейт

Для примера equity-trading я рассмотрю трендовую стратегию на сбербанк.
Входные условия — только шорт, 100 контрактов фиксированный лот, без пирамидинга. С лонгом все понятно, последние пару лет стратегия зарабатывает без значительных просадок. 
Эквити с фиксированным лотом, 100 контратктов.
Управление капиталом портфеля алгоритмических стратегий.



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

Склееные фьючерсы

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

В моей практике постоянно приходится сталкиваться с торговыми стратегиями на срочном рынке.

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

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

F=N*S*(1+r1) — N*div*(1+r2),

где

N – объем фьючерсного конт­ракта (количество акций),

F – цена фьючерса;

S – спот-цена акции;

r1 – процентная ставка на срок со дня заключения сделки по фьючерсному контракту до его исполнения;

div – размер дивидендов по базовой акции;

r2 – процентная ставка на срок со дня закрытия реестра акционеров («отсечки») до исполнения фьючерсного контракта.

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



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

Портфельное упражнение

Трудно не заниматься улучшением торгуемого подхода, хотя надо от этого отходить потихоньку:)

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

Отбросив лишнее, остались у меня пять спекулятивных систем: RI-long, RI-short, SR-long, Si-long, Eu-long. Торгуются они примерно с равными весами. Может возможно что-то лучшее, чем паритет по весам (логический паритет по риску в моем понимании)?

Сделал сеточку весов от 0 до 1 с шагом 0.25. Итого получилось 3124 портфеля:
Портфельное упражнение
























RET — среднегодовая доходность за >10 лет.
MINDD — наихудшая просадка за >10 лет.
MEANDD — среднедневная просадка за > 10 лет.
DDD — ср.кв.откл. подневных просадок за > 10 лет.

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

ЛЧИ близко. АлгоТрейдинг - устойчивость робота и подбор параметров


  ЛЧИ близко. АлгоТрейдинг - устойчивость робота и подбор параметров

Для того, чтобы лучше понять материал, можно ознакомиться в этими статьями:
https://smart-lab.ru/blog/180975.php
https://smart-lab.ru/blog/259824.php 
Там же видео как я оптимизировал 2,5 года назад(2015 год)

+++ Спасибо за твой плюс или коммент, они важны для меня!+++
*Картинки из статьи можно смотреть тут
ЛЧИ близко. АлгоТрейдинг - устойчивость робота и подбор параметров

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

Курс Йельского университета на тему финансовых рынков

Наткнулся в тырнете пытаясь найти что-нибудь про behavioral finance, нашел целый курс.
Очень понравилось, даже несмотря на то, что я не фанат теории.

www.youtube.com/playlist?list=PL8F7E2591EE283A2E

Список лекций для быстрого ознакомления о чем вообще речь:

1. Finance and Insurance as Powerful Forces in Our Economy and Society
2. The Universal Principle of Risk Management: Pooling and the Hedging of Risks
3. Technology and Invention in Finance
4. Portfolio Diversification and Supporting Financial Institutions (CAPM Model)
5. Insurance: The Archetypal Risk Management Institution
6. Efficient Markets vs. Excess Volatility
7. Behavioral Finance: The Role of Psychology
8. Human Foibles, Fraud, Manipulation, and Regulation
9. Guest Lecture by David Swensen
10. Debt Markets: Term Structure
11. Stocks
12. Real Estate Finance and its Vulnerability to Crisis
13. Banking: Successes and Failures
14. Guest Lecture by Andrew Redleaf
15. Guest Lecture by Carl Icahn
16. The Evolution and Perfection of Monetary Policy
17. Investment Banking and Secondary Markets
18. Professional Money Managers and Their Influence
19. Brokerage, ECNs, etc.
20. Guest Lecture by Stephen Schwarzman
21. Forwards and Futures
22. Stock Index, Oil and Other Futures Markets
23. Options Markets
24. Making It Work for Real People: The Democratization of Finance
25. Learning from and Responding to Financial Crisis I (Lawrence Summers)
26. Learning from and Responding to Financial Crisis II (Lawrence Summers)


Кластерный анализ в TSLab

Приветствую всех.

Недавно проводил вебинар на тему кластерного анализа в TSLab.
Это скорее презентация нового функционала, нежели вебинар, так как в основном показывал и рассказывал что это за новые кубики. 
Так как продукт новый, то и, собственно, не стоит сильно критиковать. много недоделок и большое развитие ждет этого фукнционала в будущем. Я на вебинаре даже больше прорекламировал волфикс)) ну, так получилось. 

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

П.С. для сектантов тслаб — в обновлении доступна новая мощная опция, игнорировать выход не на последней сделке, которая будет всегда генерировать новый выход — если был пропуск по каким либо причинам. 

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



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

Управление бюджетом и просадкой нескольких роботов на одном счёте

    • 19 июля 2017, 12:19
    • |
    • П М
  • Еще
Для начала загадка: предположим есть у вас 3 робота, с просадками 30%, 50% и 70%, ну естественно они прибыльные и profit factor что-то там порядка 1.7. При этом эти данные для полного рефинанса и на интервале в 2 года. И надо вам получить
а) максимальное использование средств портфеля
б) максимальное рефинансирование
в) суммарную просадку не более 13%

загадка в том, как это правильно сделать?

Я назвал это загадкой, а не вопросом, потому что я наконец-то понял как, спустя несколько лет. До этого я пытался выжать из роботов максимум, и использовал как мне казалось передовую технологию: отдавал роботам ~90% от доступного бюджета, таким образом чтобы роботы имели возможность выбирать весь бюджет (0.9 + 0.09 + 0.009 — типа того), с целью, естественно — максимального возможного разгона депозита. получалось кто первый встал, того и тапки. Для двух роботов всё просто, а когда их было штук 7, то уже были всякие сложности.

Иногда у меня неплохо получалось, в 2014м я довольно мощно разогнал робота со 184 тыс до 1300 тыс с января по сентябрь. Потом ещё немного заработал. А потом получаться уже перестало. И дальше я занимался решением разного рода «философских» проблем, типа почему на истории миллиарды, а в реале просадка, и почему роботы пилятся быстрее, чем зарабатывают.

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

Определение направления цены с помощью потока ордеров

Определение направления цены с помощью потока ордеров

Перевод статьи из блога tr8dr. Написано верно, применительно к HFT алгоритмам, но очень кратко. Однако, немного подумав, из этого можно сделать достаточно простую метрику для раннего определения направления движения цен.

Высокочастотная маркет дата, как правило, представлена в виде обновлений потока ордеров (полный ордерлог):

Определение направления цены с помощью потока ордеров



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

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