Избранное трейдера antonbell
Как часто вы сталкивались с непонятным входом в акцию? Как часто приходилось корить себя за торговлю в хаосе и терять деньги? Каждый раз, вопросы о трейдинге заставляют вас напрягаться? Нам, трейдерам, необходимо систематизировать все, от входа в сделку до ее закрытия. Мы сможем одолеть себя если человеческий фактор будет минимален. Чем проще действия, тем легче их, качественно, повторить.
Прежде, чем начать обзор прибыльных формаций, мы должны понять — как они работают. Важен, не сам факт линий или графических визуальных подтекстов, а важна идея почему формация должна отработать. Чтобы это понять, нужно рассмотреть теорию спроса и предложения.
В большинстве случаев, происходит выдавливание толпы. Одна сторона, к примеру, покупатели, выдавливают продавцов. Или продавцы выдавливают покупателей, покупатели в данном случае становятся продавцами. В следующей статье мы разберем важное понятие дисбаланса.
После относительно спокойного августа сентябрь обещает пощекотать инвесторам нервы. Предвыборные дебаты кандидатов в президенты США, почти ежедневное присутствие в календаре заседаний центробанков G20 и встреча стран-производителей нефти в Алжире, запланированная на 26-28 сентября, — таковы основные события месяца. Если добавить тот факт, что первый месяц осени является единственным в году, когда S&P 500 начиная с 1928-го закрывался в минусе, то становится понятно, что вероятность повышенной турбулентности высока как никогда. Чем она обернется для валют первой десятки?
Месячная динамика S&P 500
Источник: Bloomberg.
С 1999-го по 2015 год в сентябре складывались благоприятные условия для американского доллара. В то же время его преимущество было явным лишь по отношению к «европейцам», а товарные валюты и иена оказывали гринбеку упорное сопротивление. В свете повышения вероятности ужесточения денежно-кредитной политики ФРС текущий год вряд ли станет исключением из правил. Если, конечно, свинью индексу USD не подложит отчет о состоянии рынка труда США за август.
Статья из блога "Trading with Python" об элементарной стратегии, которая демонстрирует последовательный подход к разработке алгоритмов.
Недавно я прочел пост на сайте turingfinance.com "Как стать квантом". Вкратце, он описывает научный подход к созданию торговых стратегий. Для меня, наблюдение за данными, обдумывание модели и формирование гипотезы является второй натурой, как это и должно быть для любого хорошего инженера.
В данной статье я собираюсь показать такой подход по шагам, которые нужны для разработки стратегии.
Давайте возьмем наиболее популярный инструмент — S&P 500 ETF «SPY». Начнем с наблюдений.
Обзор данных
Мне кажется, что большую часть времени в СМИ говорят об обрушении рынков (больших потерь в течение нескольких дней), умалчивая о значительном росте, который следует за ними.
Тест стратегии из поста http://smart-lab.ru/blog/343965.php
Формализовал стратегию так, как я ее понял.
1. Входа на следующий день, после обновления исторического хая. Тут есть неточности — историю брал с 2005 года. Не факт, что all time high был на этом промежутке.
2. Предыдущее обновление хая было больше 90 дней назад и менее чем 200 дней назад.
3. Примерно 500 ликвидных бумаг с NYSE/NASDAQ/AMEX. Без учета делистинга, без учета комиссий, без учета платы за плечо. Вроде бы без дивидендов (не уверен), дейли дата взята с Google Finance.
4. Стоп в примере — 3%. Тейк — 90%. Можно взять больше стоп, результаты не критично меняются.
5. Вход фиксированным BP на позицию. (взял 1000 на позу)
Код Multicharts.Net
using System; using System.Drawing; using System.Linq; using PowerLanguage.Function; using ATCenterProxy.interop; namespace PowerLanguage.Strategy { public class _INTEST_by_high_daily : SignalObject { public _INTEST_by_high_daily(object _ctx):base(_ctx){} private IOrderMarket buy_order; private IOrderMarket sell_order; double previous_high; double previous_high_low_range; double all_time_high; protected override void Create() { // create variable objects, function objects, order objects etc. buy_order = OrderCreator.MarketNextBar(new SOrderParameters(Contracts.Default, EOrderAction.Buy)); sell_order = OrderCreator.MarketNextBar(new SOrderParameters(Contracts.Default, EOrderAction.Sell)); } protected override void StartCalc() { all_time_high =0; } protected override void CalcBar() { // strategy logic if (Bars.High[0]>previous_high && previous_high_low_range<previous_high && previous_high == all_time_high) { buy_order.Send(); } if (StrategyInfo.MarketPosition>0 && Bars.Close[0]>StrategyInfo.AvgEntryPrice*1.9) sell_order.Send(); previous_high = Bars.High.Highest(200); previous_high_low_range = Bars.High.Highest(90); if (Bars.High[0]> all_time_high) all_time_high = Bars.High[0]; } } }
> list.files(«E:/syst/lib»)
[1] "_algo_ algotrading.pdf"
[2] "_algo_ IntroductionToAlgorithmicTradingStrategies.pdf"
[3] "_algo_ stan.pdf"
[4] "_bayes_ applied bayesian modelling.pdf"
[5] "_bayes_ bajesovskie seti… logiko-veroyatnostnyj podxod.djvu"
[6] "_bayes_ bayesian statistical modelling.pdf"
[7] "_bayes_ BayesNets.pdf"
[8] "_bayes_ байесовские методы маш обуч.pdf"
[9] "_bayes_ введение в методы байесовского статистического вывода.djvu"
[10] "_caus_ Application of adaptive nonlinear Granger causality.pdf"
[11] "_caus_ Causalities of the Taiwan Stock Market.pdf"
[12] "_caus_ granger causality — theory and applicts.pdf"
[13] "_caus_ grangercausality.pdf"
[14] "_caus_ sugihara-causality-science.pdf"
[15] "_caus_ Причинный анализ в статистических исследованиях.djvu"
[16] "_change_ adaptive filtering and change detection.djvu"
[17] "_change_ detection of abrupt changes.pdf"
[18] "_change_ Efficient Multivariate Analysis of Change Points.pdf"
[19] "_change_ nikiforov_i_v_posledovatelnoe_obnaruzhenie_izmeneniya_svoist.djvu"
[20] "_change_ zhiglyavskii_a_a_kraskovskii_a_e_obnaruzhenie_razladki_sluch.djvu"
[21] "_change_ адаптивный метод обнаружения нарушений закономерностей по наблюдениям.pdf"
[22] "_change_ Момент разладки Чернова.pdf"
[23] "_change_ обнаружение изменения свойств сигналов и динамических систем.djvu"
[24] "_change_ обнаружение моментов разладки случайной последовательности.pdf"
[25] "_change_ обнаружение нарушений закономерностей по наблюдениям при наличии помех.pdf"