Избранное трейдера aik
Первый из трех способов автоматического поиска пар на Python для торговли по стратегии «Парного трейдинга». Исходя из результатов предыдущей статьи, во всех примерах мы будем использовать только поиск коинтеграции.
Кратко о «Парном трейдинге»: в основе стратегии лежит предположение, что есть две акции, которые имеют глубокую экономическую связь друг с другом, и их цена движется в одном направлении с разной скоростью. Когда отстает акция А, мы ее покупаем и одновременно продаем в короткую акцию Б. И наоборот.
Используем дневные цены закрытия, отрегулированные на дивиденды и сплиты. Вы можете скачать бесплатную историю дневных цен с Quandl.
Стратегия парного трейдинга очень популярна на рынке. Она основана на чистой статистике, что делает ее привлекательной для алгоритмической торговли. Общий смысл сводится к нескольким шагам: найти пару, проверить ее поведение, определить границы входа в позицию и направление (лонг/шорт).
Пары ищут с помощью корреляции, но корреляция в чистом виде может сослужить плохую службу. Спред пар должен быть стационарным и обладать коинтегрированностью. Весь представленный код на Python.
В статье рассмотрены:
Лениво бродив по западному интернету, нашел интересную стратегию, которая своими корнями уходит к некоему Larry Connors. Стратегия построена на простом RSI с периодом 2.
Суть ее в следующем:
покупаем индексный ETF, когда значение меньше 15 на закрытии дня (да, это можно сделать без проблем и проскальзываний на всех ликвидных ETF) и продаем, когда клоуз текущего дня выше хая предыдущего (можете придумать свои выходы, стратегия не очень-то чувствительна к выходам).
В общем MR в чистом виде. И в принципе это должно работать на большинстве ETF развитых рынков.
Тестил на Multicharts.Net, код ниже.
using System; using System.Drawing; using System.Linq; using PowerLanguage.Function; using ATCenterProxy.interop; namespace PowerLanguage.Strategy { public class rsi_2_spy : SignalObject { public rsi_2_spy(object _ctx):base(_ctx){} private IOrderMarket buy_order; private IOrderMarket sell_order; private RSI m_RSI; private VariableSeries<Double> m_myrsi; private ISeries<double> Price { get; set; } protected override void Create() { // create variable objects, function objects, order objects etc. buy_order = OrderCreator.MarketThisBar(new SOrderParameters(Contracts.Default, EOrderAction.Buy)); sell_order = OrderCreator.MarketThisBar(new SOrderParameters(Contracts.Default, EOrderAction.Sell)); m_RSI = new RSI(this); m_myrsi = new VariableSeries<Double>(this); } protected override void StartCalc() { // assign inputs Price = Bars.Close; m_RSI.price = Price; m_RSI.length = 2; } protected override void CalcBar(){ // strategy logic m_myrsi.Value = m_RSI[0]; if (Bars.Close[0]>Bars.High[1]){ sell_order.Send(); return; } if (m_RSI[0]<15){ buy_order.Send(); } } } }
Индикатор ATR (Average True Range) показывает среднюю величину изменения цены внутри дня за указанный период. Отлично подходит для выбора уровней стопов. Также индикатор показывает рост волатильности в активе, когда сохраняет высокие значения.
Работаем на Quantopian (см. сюда), код пишем на Python. Проверяем стратегии:
Индикатор MACD широко известен среди трейдеров. Мне его сигналы помогают находить развороты и предупреждения о коррекциях. Много написано, как использовать его сигналы для открытия позиций, а мы сегодня рассмотрим прикладное применение в алготрейдинге.
Все будет тестироваться на Quantopian (см. сюда), писать код будем на Python. Рассмотрим следующие стратегии:
Здравствуйте дорогие друзья!
Тема этого обновления — работа со своей моделью улыбки.
Эту версию мне помог создать Дмитрий Новиков. Помогал с формулой расчета, обсуждали юзабилити, ну и конечно же помог отловить баги и глюки, касаемые модельной улыбки. Мы с ним обкатали 2 версии пока не получилась эта окончательная третья версия. Так что спасибо ему большое за всё.
В текущей версии, на самом деле 2 модели улыбки.
1. Это моя, которой я давно пользуюсь. Нарисована в виде оранжевых маркеров (точек) на диаграмме (1).
Рассчитывал так, брал базу улыбки с 2010 по 2016 годы и рассчитывал относительное отклонение страйков с дельтами 0,1 0,25 и -0,1 от центрального в процентах. Рассортировывал по папачкам, каждая из них это срок сколько осталось до экспирации дней и в каждой из них считал среднее значение. Так я получил среднее отклонение интересующих мне страйков от центрального. А зная волу центрального и сколько дней до экспирации, не сложно высчитать волу страйков с дельтами 0,1 0,25 и -0,1.
Недавно наткнулся на новость, что Nvidia (NVDA) заключила соглашение с Bosch на поставку единого модуля для беспилотного управления автомобилем. Bosch является крупным поставщиком автомобильных запчастей для разных марок автомобилей.
Позволит ли это захватить Nvidia рынок беспилотных автомобилей в будущем?
В этот раз «подкрутим» стратегию «купи и держи» с помощью скользящих средних на основе этой статьи. Там говорится, что при входе выше 200-дневной средней и выходе под ней, мы можем получить аналогичную доходность и сократить просадки. Дополнительно появляется возможность припарковать свободный капитал, например, в банк.
Будет приведено несколько алгоритмов:
Покупателем опционов колл выступил хеджер.
Его интерес понятен, это или кредит в евро(под отрицательную ставку, как вариант) или Импортер с отложенной сделкой в евро(хедж от изменения курса).
Продавец Красавец!
Он продал Коллы на Евро/рубль который выше цены на Доллар/рубль почти на тысячу рублей,
а еще и выше теории котируемой биржей(Видимо расчет вел по своей волатильности, чем и поднял цену).
Вот так выглядит доска опционов Si на Июнь 2017