Всем привет.
Пока что, только учусь торговать, и на стандартных брокерских лекциях, объяснили немного принципы, и несколько месяцев торгую, +- 0 так как стараюсь осторожничать и следовать простым стратегиям. Две скользящие, и стохастик rsi, пересеклись, купил, если rsi перепродан.
Сейчас решил проверить как алгоритм вообще в идеальном рынке должен работать и помог в этом тслаб, так как по заданным сигналам на всей истории показывает результаты.
Вот как итог выглядет картина:
Да, меня радовало, что торгую иногда даже в плюс — а по сути, только кормил брокера так как наглядно видим, что все уходит в комисс. Да при нулевом комиссе будет плюс, но косты никто не отменял. В моем примере стоит комиссия, 0,05%. тогда решил немного поэкспериментировать, взять более сильные движения, по идее должно улучшить ситуацию, и потому прогнал оптимизацию, чтобы посмотреть, вообще есть ли смысл тратить время на такую торговлю.
Приветствую.
Не станем углубляться в философию оптимизации своего алгоритма, и для чего нужен бектест. Могу сказать свое мнение — оптимизировать можно, но только делайте это правильно. В своей практике, бектестинг для меня играет крайне малую роль при создании алгоритма. Но все же некие аспекты и зависимости можно выделить.
Для начала хотелось бы показать как вообще это выглядет все в рамках TSLab.
Два примера — на первом рисунке дефолтно созданный алгоритм под простые индикаторы, RSI 20 поверх SMA20. Купили когда индикатор близок к 100, продали когда близок к нулю. Никаких фильтров и усложнений (так нужно для данного поста). Так же для примера показана таблица результатов под 400проходов. От 5 до 100 с шагом 5 для каждого индикатора. (тоже лишь для примера). В ней можно усмотреть что количество отрицательных результатов — довольно маленькое. (удачный пример, не более)
Неоднократно попадались такие споры в комментариях:
«Я проверял на прошлых данных такую-то стратегию или семейство стратегий — она не работает».
«Я тоже проверял — всё работает».
То есть, мы имеем разных людей, делающих проверки на истории одного и того же, и уверенных, что всё делают правильно, но получающих разные, а иногда и противоположные результаты.
Получается, мы выходим на такие темы как:
1. Разные методологии проверки на прошлых данных.
2. Разное качество такой проверки, зависящее от знаний проверяющего.
Значит, нужно вывести идеальную модель бэктестинга, строго её описать и сверять все проведённые бэктесты с этой моделью.
И ставить алготрейдерам оценки от 1 до 5, в зависимости от соответствия проводимых ими проверок идеальной модели.
Вопрос: вывел ли уже кто-то такую идеальную модель бэктеста?
И где её найти?
namespace WealthLab.Strategies { // Комиссия 0.005% на сделку, проскальзывание 0.01% public class Simple00 : WealthScript { StrategyParameter Period, Factor; public Simple00() { Period = CreateParameter ("Period", 5, 1, 20, 1); Factor = CreateParameter ("Factor",0.5, 0.1, 1, 0.1); } protected override void Execute() { ClearDebug(); // HideVolume(); int period = Period.ValueInt; double factor = Factor.Value; DataSeries atr = ATR.Series (Bars, period); for (int bar = period; bar < Bars.Count; ++bar) { if (IsLastPositionActive) { ExitAtClose (bar, LastPosition); } else if (Open [bar] - Close [bar] > atr [bar] * factor) { BuyAtClose (bar); } } ChartPane cp = CreatePane (40, true, true); PlotSeries (cp, atr, Color.Black, WealthLab.LineStyle.Histogram, 3); } // Execute() } // class Simple00 } // namespace WealthLab.Strategies
Привет, выражение «чем выше риск, тем выше доходность» внешне выглядит логично, но не находит подтверждения на практике. По акциям США и Европы на длинных горизонтах уже доказано, что акции с наименьшим риском приносят больше доходности, чем высокорискованные даже без поправки на риск. В качестве меры риска принято использовать рыночную бету, но сегодня мы будем тестировать волатильность (стандартное отклонение) дневной доходности, а бету оставим для будущих экспериментов.
За основу мы возьмем работу Нэда Бейкера и Роберта Хогена «Low Risk Stocks Outperform within All Observable Markets of the World» (2012). Авторы просто посчитали волатильность для каждой акции за последние 24 месяца, сформировали по 2 портфеля из 10% акций с наибольшей и наименьшей волой и повторяли это каждый месяц. Да, это академическая работа, но она написана не теоретиками и носит важные практические выводы. Очень рекомендую почитать в оригинале. Вот, что получили авторы по рынкам развитых стран: