Sergey Pavlov
Sergey Pavlov личный блог
18 апреля 2021, 08:17

Раскладываем эквити на две эквити

Или как улучшить торговлю на основе результатов торговли в прошлом.
Или как ничего из этого не выходит.
Или как рынок не обмануть.

Рассмотрим классическую стратегию покупки (и очень редкой продажи) нашего рынка на ночь:
Раскладываем эквити на две эквити






















































Всё просто и относительно этой простоты неплохо, но напрягает, что есть затяжные периоды боковика, которые без переподгонки убрать не получается (у меня) даже на истории.

Возникает соблазн как-нибудь пофильтровать будущие сделки на основе результатов прошлых сделок.
Иными словами торговать эквити по эквити.

Возьмём скользящие окна из прошлых сделок по 5, 10, 20, 30, 50 и 100 штук.
На этих сделках посчитаем их средний финрез, среднюю амплитуду (по модулю) и ско этих сделок.
И разложим эквити на две эквити, если, например, средний финрез (первая колонка) меньше (первая строка) или больше (вторая строка) такого-то значения. Получим следующие картинки. Каждая картинка для своего размера окна от 5 до 100 сделок.

Раскладываем эквити на две эквити

































Раскладываем эквити на две эквити

































Раскладываем эквити на две эквити

































Раскладываем эквити на две эквити

































Раскладываем эквити на две эквити

































Раскладываем эквити на две эквити


































В шапке первое число это сколько сделок попало в данную эквити. Второе число это размер средней сделки в отфильтрованной эквити.

Как-то грааля не обнаружилось.
Если хотим ровную эквити, это достижимо. Затяжные боковики отбрасываются, но также отбрасываются и жирные плюсовые сделки.
Если хотим не пропустить жирные плюсовые сделки, приходится терпеть боковики и уже нет смысла выкидывать и так ровные почти линейные эквити. Ну и вторая проблема линейных эквити — у них ощутимо падает средняя сделка.

Это в общем похоже на способ отнормировать сделки по волатильности, но в этом способе есть явный недостаток — вырастает среднее плечо без увеличения доходности и приходится часто сидеть в 2-3 раза большем плече по отношению к исходной эквити, что, конечно, некомфортно.

Кому интересно погонять это разложение, вот код на R:
par(mfcol=c(2,3))
for(wdw in c(5,10,20,30,50,100))
{
  w=h=vector(); for(i in wdw:length®) if(mean(mean(r[(i-wdw+1):(i-1)]))<=(0.0036/1)) {w=c(w,r[i]); h=c(h,rhor[i])} 
  plot(h,cumsum(w),type="l",main=paste0(as.character(length(w)),"   ",as.character(round(100*mean(w),2)),"%"))
  w=h=vector(); for(i in wdw:length®) if(mean(mean(r[(i-wdw+1):(i-1)]))>(0.0036/1)) {w=c(w,r[i]); h=c(h,rhor[i])}
  plot(h,cumsum(w),type="l",main=paste0(as.character(length(w)),"   ",as.character(round(100*mean(w),2)),"%"))
  
  w=h=vector(); for(i in wdw:length®) if(mean(abs(r[(i-wdw+1):(i-1)]))<=(0.011/1)) {w=c(w,r[i]); h=c(h,rhor[i])}
  plot(h,cumsum(w),type="l",main=paste0(as.character(length(w)),"   ",as.character(round(100*mean(w),2)),"%"))
  w=h=vector(); for(i in wdw:length®) if(mean(abs(r[(i-wdw+1):(i-1)]))>(0.011/1)) {w=c(w,r[i]); h=c(h,rhor[i])}
  plot(h,cumsum(w),type="l",main=paste0(as.character(length(w)),"   ",as.character(round(100*mean(w),2)),"%"))
  
  w=h=vector(); for(i in wdw:length®) if(mean(sd(r[(i-wdw+1):(i-1)]))<=(0.018/1)) {w=c(w,r[i]); h=c(h,rhor[i])}
  plot(h,cumsum(w),type="l",main=paste0(as.character(length(w)),"   ",as.character(round(100*mean(w),2)),"%"))
  w=h=vector(); for(i in wdw:length®) if(mean(sd(r[(i-wdw+1):(i-1)]))>(0.018/1)) {w=c(w,r[i]); h=c(h,rhor[i])}
  plot(h,cumsum(w),type="l",main=paste0(as.character(length(w)),"   ",as.character(round(100*mean(w),2)),"%"))
}
На входе этому коду требуется только два ряда: r (доходности) и rhor (их датировка).
22 Комментария
  • Василий Федорович
    18 апреля 2021, 08:34
    Наконец-то хоть кто-то пошел дальше, чем основная масса умников. Похвально. Я этим занимался лет 5 назад. Стратегически ход мыслей правильный, тактически — не совсем, есть еще несколько других ходов. Думаем, тестируем, советуемся.
  • Антон Иванов
    18 апреля 2021, 08:59
    Кургузкин в своей книге писал, что это правильная эквити — когда тренды чередуются с флэтами. Но это было давно и в современной ситуации, наверное, многих уже не устраивает :)
  • ves2010
    18 апреля 2021, 09:51

    1/3 профита был сделан на кризисе 2008г
    что не гуд

  • Kot_Begemot
    18 апреля 2021, 10:12
    Иными словами торговать эквити по эквити.

    Сначала вы все усилия бросаете на то, чтобы получить узко-стационарный ВР эквити, а потом, считая его не достаточно узко стационарным, пытаетесь привести к стационарному «торгуя эквити по эквити». Мне кажется, что вы совершенно не те системы пытаетесь модернизировать таким способом. 

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн