Источник
smart-lab.ru/blog/634490.php
Вместо авторских "… берём исторические данные SPY с 1996 года (24 года)" у меня под рукой история индекса ММВБ IMOEX с 05.01.2000 на 173 руб по 27.12.2019 на 3045.87. За 19.4274 года рост в 18.64 раза.
Стратегия «купил и держи» даёт сложный годовой процент 15.77%.
А вот дарёный Грааль много хуже. С капитализацией каждой сделки при 100% вложения от счёта выигрыш на первоначальный 1 млн всего лишь 751009.58 руб или 2.8% годовых. Sharpe ratio всего лишь 0.34. Максимальная просадка 632956.68 руб. И это при оптимизированных параметрах Period = 5 и Factor = 0.5. Комиссия 0.005% на объём купли или продажи и проскальзывание 0.01%. Всего 735 сделок, 36.79 «сделки» на год.
Если я в чём ошибся, поправьте. Вот как я закодировал дарёный Грааль.
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
Система SPY 2.57% годовых, 23,06% просадка, 14,90% времени в рынке.
Байэндхолд SPY 9.28% годовых, 55,22% просадка, 100% времени в рынке.
Дивиденды, комис, проскальзывание (1 тик) включены.
Во-вторых, проскальзывание не учитывалось, т.к. это не реальная система, а лишь иллюстрация движения, отличного от случайного блуждания (хотя можно входить и выходить лимитками по Close на NYSE).
В-третьих, действительно есть один нюанс, про который я забыл упомянуть в своем посте (что сейчас сделаю): когда-то давно я модифицировал ATR и с тех пор он у меня в системе в таком состоянии. Значительно лучше подстраивается под меняющуюся волатильность.
Проверил со стандартными настройками ATR — прибыль без плеча примерно в два раза меньше 3 с копейками процента. Т.о. со стандартными настройками ATR система действительно проигрывает Buy&Hold.
Но для этого и нужен трейдер, чтобы «выгрызть» у рынка дополнительную доходность. В данном примере даже такие простейшие способы, как «подстройка» под текущую волатильность на свече, пока она доходит то точки входа, набор позиции с шагом, уже может существенно улучшить соотношение «прибыль/просадка».
Хотя, повторюсь, до реально хорошей профитной системы здесь ещё далеко. Лишь зарисовка на тему матожидания, не более того.
Кое что делистингнулось, где-то допэмиссии и прочая требуха.