Избранное трейдера Falcone
Тест стратегии из поста 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]; } } }
Попробую описать очень простые действия, чем пользоваться можно, а что из себя представляет полный кошмар, так же свой опыт по данному пути.
На рынке я очень давно и пережил то, что и врагу не пожелаешь. Но моя история не одна такая много людей убили свое серое вещество подстраиваясь под наш замечательный рынок. Но здесь я хочу рассказать, как я пришел к роботам HFT и прочим гадалкам)))
Первого робота который попался в руки, несмотря на то, что торговал полностью на Московской бирже, был никто иной как «Мартин Гейл» и сделан он под MT4. Смерть а не робот. В то время я был страшным скептиком по отношении к всему невиданному и непонятному и показывал приличные результаты ручной торговли. Но жуткий интерес заставил включить этого «умного советника» в розетку. Зная какой алгоритм и условия заложены в данного советника, было просто интересно посмотреть, как он работает. Установил, включил и наблюдаю, работает, но не возбуждает. Смысла в действиях нет никакого, как и ожидалось, НО он выставляет заявки и делает сделки. И понимая, что если задать правильные условия, можно получить очень хороший автоматический агрегатов для торговли. В итоге проработав на моем ноутбуке неделю я понял, что эксперимент окончен.
Понравилось описание эксперимента одного профессора из Гарварда. Целью его был анализ причин принятия иррациональных решений.
Короче говоря, он наблюдал за поведением голубей в клетках. В кормушки голодным птицам подавалась еда через определенные случайным образом промежутки времени. Эти промежутки абсолютно никак не зависели от поведения голубя. Между тем, большинство птиц достаточно быстро выработали определенные модели поведения. Судя по всему, они полагали, что тем самым вызывают подачу корма. Разные голуби вырабатывали самые разные модели: некоторые считали, что для получения корма нужно вертеться против часовой стрелки, другие приседали. Модели поведения зачастую формировались в зависимости от того, что делал голубь в момент первой подачи корма. После того как модель принималась, каждое появление еды уже воспринималось как подтверждение ее правильности. Этот эксперимент был назван «Суеверные голуби».
Забавно, что неопределенность заставляет и нас искать простые модели, объясняющие сложный окружающий мир. В мире инвестиций склонность к простым моделям нашла плодородную почву. Взять хотя бы т.н. технический анализ. Аналитики, использующие этот подход, наблюдают за графиками в попытке выявить фигуры и закономерности в движении котировок. Фигурам даются запоминающиеся имена: «голова и плечи», «медвежье поглощение», «двойное дно» или что там еще есть. Несмотря на разницу в интеллекте, в этом отношении люди недалеко ушли от суеверных голубей. Не бывает простых решений, инвестируйте в акции на длительный период времени и используйте анализ на основании полноценных финансовых моделей.
Представляю вашему внимаю древнюю как мир гарантированно профитную стратегию. Она была профитной и 100 лет назад (из «Воспоминания биржевого спекулянта» Лефевра), профитна сейчас, и я почти уверен что и через 100 лет она будет профитной тоже. Причина? — Большинство биржевиков эту стратегию не используют! Даже если знают о ней. Парадокс.
Ну для начала я должен вас подготовить. Что лучше совершить 1 сделку, которая дает 200% прибыли, или сделать 100 сделок, которые в сумме дают те же 200% прибыли? Вам, как и большинству очень хочется себя поистязать, себя помучать, вы считаете что деньги надо заслужить адским трудом, а не заполучать их лежа на диване ничего не делая. Увы, финансовые рынки это мир наоборот, тут чаще всего выгоднее ничего не делать, а не сверлить график круглосуточно.
Лично я бы предпочел открыть одну позу 1 раз за 2 года, взять свои «безрисковые» 200%, и закрыть. Чем те же 2 года круглосуточно сверлить график и то и дело портить себя лосями настроение.
Я думаю все мы хотели бы знать рыночную закономерность, которая работает в 70% случаев на всех рынках. А как вам закономерность которая работает в 97% случаев! :)
Нет, я не про то что «Все рынки всегда растут». Хотя это тоже верно, но я про другое.
Когда цена на любой актив пересекает старый исторический максимум она:
1) Дает более 100% роста в более чем 90% случаев на почти любом активе
2) Более чем в 90% случаев цена НЕ ВОЗВРАЩАЕТ на уровень исторического максимума в первый год (тут ставят стоп, который не сработает почти никогда).
А что если математические законы рыночных графиков и иррациональных чисел одни и те же?
Похоже, что подпоследовательности (повторения) максимально разнесены и там и там. Хотя и сложно представить, как/почему одни и те же стратегии/поведение игроков/роботов не могут сформировать схожих паттернов, это не доказывает искусственность (манипулятивность) формирования цены.
Зато указывает, что движение ценовых графиков МАКСИМАЛЬНО непрогнозируемо.
Поэтому единственный вариант возможного заработка — это работа по глобальным «трендам»: затарились долларом… и сидим.
Слово «тренды» взято в кавычки, потому как трендов нет. В разговорном слэнге и на кусках истории — они присутствуют, но в математическом анализе истории — автокорелляция первого порядка = ~30% (на любом таймфрейме). Т.е. в СРЕДНЕМ направление движения цены меняется постоянно и заработать нельзя.
А вдруг… ВСЁ ПРОСТО?
1) Фрактальность — уже заложена в самой природе иррацианального числа
2) Нестационарность: изменяющаяся волатильность — уже заложена также