Избранное трейдера mrOleg
В первой части мы рассмотрели «теорему о средней волатильности» где, обозначили такое свойство:волатильности могут на разных таймфреймах значительно отличаться друг от друга. Но они всегда будут со временем сходится к одному значению.
Вот, на этом свойстве и будет построен индикатор. Для индикатора нам нужны волатильности на различных таймфреймах. В качестве индикатора волатильности берутся два стандартных индикатора, но которые по сущности показывают одно и тоже.
Price Channel (PC) или ценовой канал. Индикатор представляет из себя две линии, которые ограничивают канал колебаний цены. Верхняя граница канала обозначает уровень локального максимума за прошедшие N периодов, а нижняя граница – уровень локального минимума за тот же промежуток времени. Таким образом, цена ограничивается максимальными точками колебаний – экстремумами за N периодов.


Settings={
Name="STATDIVPROF",
period=30,
showprof=0,
line=
{
{
Name="curve",
Color=RGB(0,0,255),
Type=TYPE_LINE,
Width=1
},
{
Name="line",
Color=RGB(255,0,0),
Type=TYPE_LINE,
Width=1
}
}
}
function Init()
prof=0
bp=0
prevval=0
return 2
end
function OnCalculate(index)
local sum1=0
local sum2=0
local j=0
local dprof=0
if index < Settings.period then
return nil, nil
else
for i=index-Settings.period+1, index do
j = j + 1
if C(i) > O(i) then
sum1 = sum1 + (C(i) - O(i))*V(i)*j
sum2 = sum2 + (C(i) - O(i))*V(i)*j
else
sum2 = sum2 + (O(i) - C(i))*V(i)*j
end
end
sum1 = sum1/sum2
end
if index > Settings.period+1 then
if prevval < 0.5 and sum1 >= 0.5 then
bp=C(index)
end
if prevval > 0.5 and sum1 <= 0.5 then
if bp ~= 0 then
prof=prof+C(index)-bp
bp=0
end
end
if bp ~= 0 then
dprof = C(index) - bp
else
dprof = 0
end
end
prevval=sum1
if Settings.showprof == 0 then
return sum1, 0.5
end
if Settings.showprof == 1 then
return prof+dprof, nil
end
endПриветствую!
В предыдущей статье писал, о целях поиска локального боковика с помощью алгоритма. Расскажу с какими сложностями при этом приходится сталкиваться.
1 Что есть боковик? почему в одном случае мы считаем что это боковик, а в другом похожем случае это не является боковиком?
2 Размер боковика! Локальный боковик может быть как 0.1% от цены так и несколько процентов от цены.
Так же можно описать множество пунктов, но они все смежные будут с выделенными двумя пунктами.
Как определить, что рынок возле той или иной цены остановится и пойдет обратно? только не постфактум, а именно онлайн. Да, мы рисуем уровни руками, или же смотрим на объемы и тд, но изначально никто не знает где и почему цена остановилась. Мы всегда наблюдаем уже постфактум, либо это синусоида цены, либо накопление объемов на уровне и тд. А значит мы с определением боковика всегда будем опаздывать от реального рынка.
Второй же пункт, это границы бокового движения. Пример сбера, последние две три недели он гулял в большом диапазоне от 20300 до 21000 грубо говоря, но при этом были и локальные уровни остановки цены в пределах 100-200р канала. В таком ракурсе получается, что при движении от нижнего канала к верхнему с учетом остановок, можно получать 300-400р с движения если отталкиваться от того, что цена вышла из маленького боковика и движется к большому.
Именно эти сложности приходится преодолевать при алгоритмизации. Ведь алгоритм должен сам определить боковое это движение или вялотекущее направленное.
Пока что не придумал ничего толкового. Есть идея, которую наполовину реализовал
1 проверяю выше закрытие предыдущего или нет, и строю верхний канал по большему значению
2 аналогично для нижнего канала, проверяю ниже мы предыдущего закрытия или нет.
3 слежу за ситуациями при которых верхнее значение канала как и нижнее значение не менялось более 60минут (это уже параметр, можно и без него конечно, через счетчик получив просто силу канала, например что мы 5 часов не вышли за границы, или же например сколько раз «кололи» канал но вернулись в его границы и тд)
4 канал считается не действительным при резком закреплении цены выше его границ, допустим большой минутной свечой закрылись выше/ниже границ
5 границы канала должны меняться после направленного движения и новой остановки
6 размах от верхнего к нижнему значению, не должен превышать Х% от цены
Какие минусы
1 Процент размаха дает возможность смотреть маленький ли канал в данный момент или большой, но это является параметром, а значит может привести к «лудоманству». Каких либо других возможностей поиска локального боковика пока что, не видится возможным, потому остановился на этом
2 Я всегда опаздываю за ценой. Если действовать сразу и брать с первых же баров определение боковика, то будет очень большое количество ложных определений, и соответственно, множество не правильных входов
3 Любые остановы движения цены, ломают логику и идет поиск очередного боковика, обычно это преждевременно получается.
4 Ложное расширение боковика, которое можно определить только постфактумом и нужно перерисовывать границы.
Ниже примеры в картинках

Ложный выход из боковика

В данной статье приведено тестирование свечной модели CandleMax в программе Wealth-Lab. Я уже приводил описание и тестирование этой свечной модели на исторических данных по 32 наиболее ликвидным акциям МосБиржи с 22.09.1997 (начало торгов на ММВБ) и по 29.12.2018.
Вот эта статья:
Тестирование рабочей свечной модели на исторических данных
То тестирование было выполнено в Excel и вызвало ряд дополнительных вопросов, в частности некоторые читатели хотели увидеть эквити системы, а также получить больше статистической информации.
Скорее всего, эти пожелания так и остались бы без ответа, так как систему я не продаю, а для себя все давно уже решил и оттестировал, если бы не один комментарий к той моей статье. Этот комментарий был написан блогером JC_TRADER и содержал ссылку на тестирование моей системы в программе Wealth-Lab. Вот эта ссылка: https://jc-trader.livejournal.com/1628589.html
Пройдя по этой ссылке, я был просто обескуражен. По итогам проведенного JC_TRADER тестирования, система CandleMax позорно показала отношение прибыльных сделок к убыточным как 50.92% к 49.08% при отношении стоп-лосса к тэйк-профиту как 1:1. Соответственно, не могло быть и речи о том, чтобы использовать такую убогую систему, о чем и написали читатели блога JC_TRADER.
Эта статья является заключительной в цикле тестирования японских свечей. Всего в этом цикле будет 8 статей. Вот список предыдущих статей:
1. Тестирование свечи молот на исторических данных
2. Тестирование модели бычье поглощение на исторических данных
3. Тестирование модели медвежье поглощение
4. Тестирование модели завеса из темных облаков
5. Тестирование модели медвежье харами на исторических данных
6. Тестирование модели просвет в облаках на исторических данных
7. Тестирование модели бычье харами на исторических данных
Все 7 свечных моделей, которые я описал до этого, не выдержали проверки на истории. Сейчас настало время привести ту единственную свечную модель (из мне известных), которая выдержала подобную проверку.
Копал. Искал. Нашел вкусное. Тест за 10 лет, ПФ 2+, средняя несколько тик сайзов, сотни сделок, и многое другое :) Один инструмент, отличие в таймфреме. Рынок не наш, слева доходность в долларах. Причем это на всем промежутке.

Начиная примерно с 2014 года — как отрезало. средний ПФ с 2014го — 1.15. (Да, до 2014 часто встречался 3+ по сделкам за год)


Я уже показывал эту модель в одном из предыдущих выпусков. Тогда было желание проверить эту модель на практике. Сейчас ясно, что при определенном соотношении волатильностей на квартальных и недельных опционах это может принести неплохую доходность.
youtu.be/rw7f7bcJ3AU «Дельта-хеджирование. Календарные спреды в помощь…»
И если самые простые покрытые продажи используют акцию как вечный опцион колл, то в этих стратегиях требуется приобретать покрытие каждый квартал. Но в отличие от тривиальных покрытых продаж сложные стратегии требуют бОльших затрат времени, поскольку ваше покрытие в день экспирации исчезнет… подобно тому как золотая карета превращается в тыкву. С акцией в депозитарии такого произойти не может.
На данный момент в недельных сериях опционов в связи с праздниками не удобно создавать какие-либо позиции. Поэтому, примеры будут на месячных опционах. На недельных всё то же самое но в четыре раза быстрее и дешевле по премиям.
Первое, что пытаются делать трейдеры при направленной торговле опционами, это купить опцион в предполагаемом направлении движения базового актива. При ожидаемом росте – купить колл, при ожидаемом падении – купить пут. Чаще всего, если движение базового актива было не достаточно сильным, такая позиция приносит убыток. Это происходит потому, что со временем опцион теряет свою цену. Называют это временным распадом опциона. Но есть способ избавиться от такого негативного влияния времени.
Основная идея заключается в следующем: Производится покупка опционов с более дальним сроком исполнения и одновременно с этим, для компенсации временного распада, продаются опционы с более близким сроком исполнения.