Блог им. a_krotov

Заготовка трендовой ТС. Код для WealthLab

Доброго времени суток всем!
 
Планировал летом отдохнуть от рынка, свалив торговлю на робота, но сильная просадка по счету поспособствовала досрочному вливанию в работу: нужно разрабатывать новую ТС и пускать ее в торговлю вместе со старой.
 
Первоначально планирую поиграться с трендовыми стратегиями на часовиках. На выходных накропал один вариант самой простой трендовой стратегии, но что-то он мне не нравится, и, скорее всего, я вряд ли буду его развивать. Так что если у кого есть желание, вот код ее заготовки для WealthLab 5.4:
zalil.ru/33672832 (копия files.mail.ru/DT4ZU2)
 
В двух словах:
— торговля на часовиках
— вход по пробою min/max последних трех свечей
— ползущий стоп по индикатору, являющемуся средним между max (или min) за последние 5 периодов и хаем (или лоем), сдвинутым на 9 периодов.
 
Вот ее результаты:
Заготовка трендовой ТС. Код для WealthLab
Заготовка трендовой ТС. Код для WealthLab

 
Примечание. Стратегия в том виде, в котором я ее выкладываю, хоть и вполне пригодна для торговли (без реинвестирования), является  всего лишь заготовкой. Лично меня она не устраивает по многим параметрам, а развивать ее неохота. Может быть кому-то она понравится в нынешнем виде, а может кто-то доведет ее до ума. В первую очередь, я полагаю, надо поиграться с фильтрами для отсечения большого количества мелких убыточных сделок.
★40
85 комментариев
Если есть почта на mail.ru, там хороший файлообменник, тоже удаляется, но попозже!)
avatar
Максим Козлов, спасибо, закинул и на мейл
avatar
Спасибо. Отличный код для визуализации сделок. Возьму на вооружение :)
что такое «фалообменник» ???))))))))
avatar
Yurismi, ))), исправил
avatar
rghost.ru
avatar
Kestable, спасибо, посмотрим
avatar
Антон Кротов, а Вы не можете выложить скриншот кубиков этой системы в ChartScript Wizard, а то у меня Велс 4.
avatar
Shara, я ее писал в виде кода, так что кубиков нет. да, собственно, там вручную переписать под Welth4 — дело 10 минут, код маленький
avatar
Антон Кротов, это для Вас специалиста 10 минут. Я в в 4 плохо разбираюсь, а в 5 вообще. А когда код всавляешь в велс, разве он не отображается кубиками в ChartScript Wizard? Просто когда делаешь из кубиков, он еще и кодом в ChartScriptе пишется.
avatar
Shara, конечно же не отображается. Задача перевода кубиков в код — это одно, а вот обратно — совсем другое. нет программ, переводящих код в кубики (не считая узкоспециализированных, вроде IDA, которые к трейдингу вообще отношения не имеют)
avatar
Антон, я так понял, проскальзывание и комиссия заложены? Прибыль на сделку не очень большая, проскольз может многое съесть, но мне нравится у тебя ПФ и количество сделок. Я торгую по часовикам РТС, сделок всего за 4 года менее 100 в лонг и 100 в шорт, средняя прибыль на сделку 1,2%. В блоге где-то описывал, если интересно — спрашивай.

Надо бы твою систему поюзать для диверсификации) Любопытно очень!
avatar
krolix, мм, кстати, а где период май 08 — янв. 09? Без этого как бе не то)
avatar
krolix, я не очень люблю тестировать 2008. Во-первых, на финаме были битые данные для него, и мне все время было лень их править; во-вторых, в этот год ввели вечерку, и рынок к ней долго притирался; наконец, в-третьих, там были остановки торгов и мегагэпы, т.е., по сути, форс-мажор, а под него подстраиваться механически — как-то неправильно.
avatar
krolix, нет, не заложены. Более того, сейчас даже гэпы не учтены. Это всего лишь заготовка, над ней еще корпеть и корпеть. Просто я вижу, что с такими правилами из нее много не выжать, поэтому она мне не очень интересна.

Средняя прибыль у тебя 1.2% — это очень даже здорово. Да и 200 сделок на часовиках — самое то. Посмотрю твое описание, как-то я его пропустил.
avatar
krolix, коммис можно не закладывать, достаточно увеличить слиппаж, с 50пп до 55пп например.
avatar
у фидэлити инвестментс неплохой файлообменик… lol
avatar
А все пользуются платным WealthLab? Бесплатного варианта вообще нет?
avatar
Айкен Флаев, вы же не хотели программировать....?
avatar
Роботорговец, так код-то готов)) причём предельно просто, и изменить его это не заново написать… но тслаб ставлю))
avatar
Айкен Флаев, если вы знакомы с программированием, зачем пост про незнакомых с программированием? можно сразу велзлаб
avatar
Роботорговец, так я с ним не знаком всё-таки
просто я вижу где 3 заменить на 4, чтобы отсчитывались не 3, а 4 свечки, и то это только из-за подробных комментов автора
а свою систему я закодить-то не смогу
avatar
спасибо за код с визуализацией сделок!
mio-my-mio, спасибо
avatar
хрень не работающая, целых 5 минут убил на проверку )))
без комиссов — красивый график эквити, а комиссы возвращают в суровую действительность )))
avatar
ZooR, хрень без комиссов ))
imglink.ru/show-image.php?id=3f9d99cdecb95137bf2771bb46825068

грааль!
avatar
ZooR, написано же: «заготовка». Надо мелкие убыточные сделки обрезать.
Какие комиссию и проскальзывание выставили? Что-то совсем Вашему графику плохо. Вот график с проскальзыванием 100п:

avatar
Антон Кротов, 80 ка сделку, всё равно за пост спасибо ), хоть пообщаться )
avatar
ZooR, Вы, видимо, ошиблись при переводе на TSLab. В моем графике проскальзывание 100п на операцию (т.е. 200 на сделку). Сколько сделок у Вас получилось и какой средний ПУ (без проскальзывания и комиссий)?
avatar
Антон Кротов,
комисс 100 на куплю-продажу с 2009 по наст время
imglink.ru/show-image.php?id=f3dd07433f48b64b412f1ad2738004ec
рез-ты
imglink.ru/show-image.php?id=f42f4f49e509aa666d12f321d3c0fb52
avatar
ZooR, если с 2009 начинать — очень даже похоже
avatar
ZooR, у Вас сделок вышло в 4 раза больше, чем у меня.
avatar
Антон Кротов, да, есть такой косяк, уду разбираться в чём дело…
avatar
Антон Кротов, нашёл косяк в стопе…
avatar
Антон Кротов, А как можно обрезать мелкие убыточные сделки?
avatar
cms, надо смотреть результат работы ТС на графике, выделять какие-то общие моменты для таких убыточных сделок и пытаться их формализовать.

Собственно, это и есть основная работа по приведению системы в рабочий вид, на это уходит основное время ее разработки (может и на год затянуться).
avatar
Господа Wealt-lab-исты, как в Wealth-lab наложить друг на друга два графика?
avatar
athlant64, см. SetContext(). Ну и, соответственно, PlotSymbol.
avatar
Антон Кротов, А подскажите еще плиз по wealth'у что значит оператор ">>"?
avatar
asteroid, оператор >> над типом DataSeries — это, грубо говоря, сдвиг графика влево.

Сделайте, например, так:
PlotSeries(PricePane, Close >> 10, Color.Black, WealthLab.LineStyle.Solid, 1);

— увидите график, нарисованный по клоузам, сдвинутый на 10 свечей
avatar
:)
С возвращением.
avatar
Александр Малофеев, спасибо!
Ты, я вижу, ведение счета забросил.
avatar
Да, забросил. Хвастаться нечем, к сожалению.
Но я тоже сейчас понемногу возвращаюсь к робостроительству, так что еще повоюем :)
avatar
Александр Малофеев, жаль, я думал, ты забрал много миллионов и свалил на острова :)
avatar
смотрю, смотрю на скрипт… вроде правильно собран…
может у вас пока открыта длинная поза короткая не открывается и наоборот?
avatar
ZooR, вот, попробуйте точно повторить небольшой фрагмент:


могу скинуть полный листинг сделок
avatar
Антон Кротов, ой, это с проскальзыванием. Вот чистый:

avatar
Антон Кротов, да, сделки не бьются…
imglink.ru/show-image.php?id=64acf9efe649fc369035b813de3c2f26
avatar
ZooR, ну, кое что уже вижу: у меня стоп перемещается всегда только в одну сторону, посмотрите формулу в исходнике:
Stop = Math.Max(Stop, HS[bar])
avatar
Антон Кротов, ну, тогда понятно…
avatar
ZooR, код вроде для WealthLab, а у тебя TSLab, он что подходит?
avatar
Andrei78, правила ж известны, сам написал )
avatar
ZooR, что сказать молодец)выкладывай)
avatar
Andrei78, а вдруг грааль ))))
avatar
ZooR, да я его и имел ввиду)))
avatar
— вход по пробою min/max последних трех свечей

у вас на картинке это правило не работает…
avatar
ZooR, в посте — общее описание. В коде есть дополнительное условие: если стоп на момент входа выше цены (для лонга) или ниже (для шорта), то, само собой, не входим.
avatar
ну, так с этого нужно начинать )))
avatar
я таких граалей делать по пять за день)))))))).

Если серьезно, проскальзывание 50, и на первой часовой свече сделайте проскальзывание 1500пп, это утренний геп.

А у вас в утренние походу легко система входит со слипажом в 100п, а это не правильно.
avatar
Redlabel, ну написано же: «заготовка», какой грааль? :)
А так — все верно: я выше уже отмечал, что утренние гэпы пока не учтены. Просто не вижу в этих правилах большого потенциала
avatar
Антон. это реверсивная стратегия, вход равен выходу?

И что происходит если два условия одновременно происходят, как они выполняются?
avatar
Redlabel, нет, не реверсивная. Если происходят одновременно два условия, то делается вход в обе стороны.
avatar
мож подскажет кто, скрипт для пропуска 1ого торгового бара в велсе 5.4… чет туплю
avatar
Neopunk77, любите лосей растить?)
avatar
Neopunk77,

if (Date[bar].Date != Date[bar-1].Date)…
avatar
Neopunk77,
//Если начался новый день
if (Date[bar].Day != Date[bar-1].Day)
{...}

Ну а дальше уже думаю понятно
красивый код
avatar
причем тут лоси, просто не хочу на первом баре торговать… вообще
avatar
В коде заметил небольшую ошибку — нет выхода по стопу на баре входа. В целом это картину не портит, но тем не менее учесть необходимо.

Вообще, рекомендую входить на баре [bar+1] — так вы сможете сразу гарантированно избежать этой ошибки + не нужно будет делать лишние сдвиги. Для некоторых стратегий это очень критичный момент, который из грааля делает разбитое корыто.

А в целом код очень понравился, ловите плюс :)
avatar
MSH, а тут и нельзя выходить на баре входа. Мы же не по оупену входим, а, следовательно, цена, равная стопу, могла быть как после цены входа, так и до нее.

А в целом, я сам не очень люблю тестировать стратегии со входом в середине свечи. Это действительно вносит неопределенность в конечный результат.
avatar
Антон Кротов, это верно, но на мой взгляд лучше всё же готовиться к худшему и предположить что все такие ситуации возникали уже после входа и нас отстопливало, чтобы потом при реальных торгах не огорчаться :)
Тем более в данной стратегии конечный результат не сильно меняется.
avatar
А по поводу входа на середине свечи — согласен, у самого все стратегии входят на опене следующей свечи
avatar
MSH, согласен
avatar
Друзья выложите, пожалуйста код у кого сохранился,
Спасибо
avatar
Спасибо большое
avatar
Интересный фильтр входа, спасибо за вашу работу

рековери правда у меня не такой хороший получился на 2013 году, не пробывали дать подышать сделке когда профит уже достиг определенного уровня на сделку, чтобы улавливать большие движения?
т.е. поставить условие если профит достиг уровня то смягчаем условия выхода
avatar
SDE, я не стал продолжать работать над этой системой, она мне сразу не понравилась. Так что большие движения ловить не пытался.

Кроме того, не забывайте, что это всего лишь заготовка, в частности, в ней не учтены гэпы. Для большей достоверности получаемых данных в начале цикла нужно добавить:

if (Date[bar].Day == Date[bar-1].Day) continue;

теги блога Антон Кротов

....все тэги



UPDONW
Новый дизайн