Избранное трейдера Александр
Решил начать писать небольшие заметки по алгоритмической торговле и всему что с ней связано. Возможно, когда-нибудь расширю, склею и опубликую в виде книжки. Пока же это просто наброски заметок, сделанные на скорую руку.
Можно часто слышать от тех, кто торгует алгоритмически, да и просто систематически, такие понятия как «оверфиттинг», «курвафиттинг», «зафит» и прочие ругательства с корнем «фит». Что все это значит?
На самом деле, все эти слова, как правило, используются для описания одного и того же явления, являющегося врагом всех трейдеров, торгующих систематически и пытающихся оценить исторический перформанс своих торговых логик — а именно, что «живой» аут-оф-сампл перформанс на реальном счете, как правило, хуже ожиданий, полученных ими при проверке своих идей на истории. Например, при тестировании торговой логики на истории трейдер с помощью своей модели «зарабатывал» 30% годовых, а в реале может в среднем иметь 10% годовых. Разница 20% годовых — может объясняться именно оверфиттингом (если нет других факторов — например, некорректный учет комиссионных и проскальзываний, или ошибка в торговом коде; но прочие факторы легко устранить, в отличие от оверфиттинга). На картинке в начале статьи — пример перформанса некоторого фонда в бэктесте и в реальности, наглядно иллюстрирующий написанное выше.
Оверфиттинг является следствием комбинации одного или нескольких из следующих факторов, положительно влияющих на бэктест (результаты прогонки модели на истории), что и создает у трейдера завышенные ожидания от своей модели. В этой части мы рассмотрим основные источники оверфиттинга, в следующей — поговорим о способах избежания или минимизации оверфиттинга при историческом тестировании моделей.
iss.get_trades_for_session( 'futures', 'forts', 'RIH8', 2 ) # доступны значения 0, 1, 2
https://iss.moex.com/iss/engines/futures/markets/forts/securities/SiZ7/trades.json— если добавить
?start=0&limit=100то начиная с первой сточки (номер ноль) получим только первые 100 сделок:
https://iss.moex.com/iss/engines/futures/markets/forts/securities/SiZ7/trades.json?start=0&limit=100следующие 100 сделок:
?start=100&limit=100Минутки получить можно так:
http://iss.moex.com/iss/engines/futures/markets/forts/boards/RFUD/securities/SiZ7/candles.json?from=2017-11-08&till=2017-11-08&interval=1&start=0Если заменить .json --> .csv, то скачивается файл:
http://iss.moex.com/iss/engines/futures/markets/forts/boards/RFUD/securities/SiZ7/candles.json?from=2017-11-08&till=2017-11-08&interval=1&start=0Программный пример:
using System; using System.Net; using System.IO; namespace GetDataSmpl { class Program { static void Main(string[] args) { string link = "https://iss.moex.com/iss/engines/futures/markets/forts/securities/SiZ7/trades.json?start=0&limit=10"; string dataLine; int count = 0; using (WebClient wc = new WebClient()) { Stream stream = wc.OpenRead(link); StreamReader sr = new StreamReader(stream); while ((dataLine = sr.ReadLine()) != null) { if (count >= 14 && count <= 23) Console.WriteLine(dataLine); count +=1; } stream.Close(); } } } }
Я заметил, что бытует мнение, что по фьючерсам не платится дивиденд.
Так обычно и говорят: фьючерс на индекс RTS отслеживает только индекс RTS, и не учитывает выплачиваемый по этому индексу дивиденд. То же самое говорят и об акциях.
В крайних случаях брокерские компании в рекламных буклетах могут даже рассказывать, что плечо во фьючерсах — бесплатное.
Это, конечно, не так.
На самом деле, предполагается, что с момента заключения фьючерсного контракта и до момента поставки, реальный товар находится во владении у продавца фьючерса. То есть, продавец фьючерса получает доход от владения этим товаром:
если это акции, то он получает по этим акциям дивиденды;
если это фьючерс на индекс акций, то он купил акции, входящие в индекс, и получает по ним дивиденды;
если это фьючерс на ОФЗ, то он получает по ним купонный доход;
если это фьючерс на доллар, то он получает доход, разместив доллары на депозите под безрисковую ставку;
Здравствуйте дорогие друзья!
Тема этого обновления — работа со своей моделью улыбки.
Эту версию мне помог создать Дмитрий Новиков. Помогал с формулой расчета, обсуждали юзабилити, ну и конечно же помог отловить баги и глюки, касаемые модельной улыбки. Мы с ним обкатали 2 версии пока не получилась эта окончательная третья версия. Так что спасибо ему большое за всё.
В текущей версии, на самом деле 2 модели улыбки.
1. Это моя, которой я давно пользуюсь. Нарисована в виде оранжевых маркеров (точек) на диаграмме (1).
Рассчитывал так, брал базу улыбки с 2010 по 2016 годы и рассчитывал относительное отклонение страйков с дельтами 0,1 0,25 и -0,1 от центрального в процентах. Рассортировывал по папачкам, каждая из них это срок сколько осталось до экспирации дней и в каждой из них считал среднее значение. Так я получил среднее отклонение интересующих мне страйков от центрального. А зная волу центрального и сколько дней до экспирации, не сложно высчитать волу страйков с дельтами 0,1 0,25 и -0,1.
Доброго времени суток.
Мы команда разработчиков торговой платформы FortsSoft Terminal для прямого доступа на срочный рынок. Опрос нашей компании показал, что торговать на Plaza 2 хотят многие, а информации по данному вопросу катастрофически мало. В виду этого, мы решили запустить серию статей по данной теме.
И так.
Что такое шлюз Plaza 2.
Шлюз Plaza II — Программное обеспечение, обеспечивающее обмен данными между Серверной частью ПО – Торговой и клиринговой системы Срочного рынка (Торговой системой SPECTRA) и сертифицированной брокерской системой по протоколу Plaza II.
Такое определение дает Московская биржа.
Если простыми словами, то Plaza 2 позволяет получать данные, отправлять заявки миную инфраструктуру брокера.
Преимущества.
Преимуществ у данного способа подключения очень много. На мой взгляд основные:
История: Кальмар (Calmar сокращенно от Калифорнийский коэффициент управления счетом или “California Managed Account Ratio”, который впервые появился в 1991году в журнале Фьючерсы (Futures Magazine) благодаря Терри Янгу (Terry W.Young), также иногда его называли коэффициентом просадки).
Основа расчета: Коэффициент Кальмара рассчитывается как среднегодовая доходность, рассчитанная за последние 36 месяцев, деленная на максимальную просадку за тот же период. Расчет происходит на ежемесячной основе. Коэффициент Кальмар это скорректированная на риск оценка доходности, так как он оценивает доходность на единицу риска, где под риском мы понимаем максимальную просадку. Коэффициент Кальмара — это слегка модифицированная версия коэффициента Стерлинга (среднегодовая доходность за последние 36 месяцев, деленная на максимальную просадку за тот же период). Разница между ними заключается в том, что коэффициент Кальмара считается на ежемесячной основе, а коэффициент Стерлинга по годам.