Постов с тегом "бэктестинг": 134

бэктестинг


Эффект Линди - сколько времени будут «работать» стратегии

 

Эффект Линди.

 

Теоретическое явление, согласно которому ожидаемая продолжительность жизни некоторых нескоропортящихся вещей, таких как технология или идея, пропорциональна их текущему возрасту. Таким образом, эффект Линди предполагает, что чем дольше что-то пережило, чтобы существовать или использоваться в настоящем, тем больше вероятность того, что оставшаяся продолжительность жизни будет выше. Долголетие подразумевает сопротивление изменениям, устареванию или конкуренции и большие шансы на продолжение существования в будущем.

Например, чем дольше «работает» стратегия, в бэктестинге или на реальном счету, тем больше ожидаемая продолжительность, что стратегия будет и дальше «работать». И хотя, это интуитивно понятно, тем не менее у этого есть своё название — эффект Линди (хотя, понятно это не всем, многим хватает тестинга за 1-2 года, а то и меньше).

Эффект Линди применяется к «нескоропортящимся» предметам, которые не имеют «неизбежного срока годности». 

( Читать дальше )

Сравнение бэктеста и прода, продолжение

    • 25 ноября 2021, 19:05
    • |
    • grepan
  • Еще

В продолжение прошлого поста сравниваю по логам еще один день:

На данных бэктеста: 17 сделок, прибыль 844 пунктов

OPEN 236 short 2021-11-24 07:25:00+00:00
CLOSE  short   2021-11-24 07:47:00+00:00 profit= 51.0
OPEN 237 short 2021-11-24 07:54:00+00:00
CLOSE  short   2021-11-24 07:55:00+00:00 profit= 86.0
OPEN 238 short 2021-11-24 08:01:00+00:00
CLOSE  short   2021-11-24 08:03:00+00:00 profit= 40.0
OPEN 239 short 2021-11-24 08:04:00+00:00
CLOSE  short   2021-11-24 08:45:00+00:00 profit= 32.0
OPEN 240 short 2021-11-24 10:10:00+00:00
CLOSE  short   2021-11-24 10:11:00+00:00 profit= 43.0
OPEN 241 short 2021-11-24 10:11:00+00:00
CLOSE  short   2021-11-24 10:27:00+00:00 profit= 32.0
OPEN 242 short 2021-11-24 10:33:00+00:00
CLOSE  short   2021-11-24 10:36:00+00:00 profit= 60.0
OPEN 243 short 2021-11-24 10:52:00+00:00
CLOSE  short   2021-11-24 10:56:00+00:00 profit= 58.0
OPEN 244 short 2021-11-24 11:15:00+00:00
CLOSE  short   2021-11-24 11:18:00+00:00 profit= 53.0
OPEN 245 short 2021-11-24 11:31:00+00:00
CLOSE  short   2021-11-24 11:35:00+00:00 profit= 48.0
OPEN 246 short 2021-11-24 12:22:00+00:00
CLOSE  short   2021-11-24 12:40:00+00:00 profit= 94.0
OPEN 247 short 2021-11-24 13:23:00+00:00
CLOSE  short   2021-11-24 13:30:00+00:00 profit= 61.0
OPEN 248 short 2021-11-24 13:45:00+00:00
CLOSE  short   2021-11-24 13:46:00+00:00 profit= 37.0
OPEN 249 short 2021-11-24 16:51:00+00:00
CLOSE  short   2021-11-24 16:54:00+00:00 profit= 40.0
OPEN 250 short 2021-11-24 19:19:00+00:00
CLOSE  short   2021-11-24 19:23:00+00:00 profit= 35.0
OPEN 251 short 2021-11-24 19:23:00+00:00
CLOSE  short   2021-11-24 19:39:00+00:00 profit= 39.0
OPEN 252 short 2021-11-24 19:42:00+00:00
CLOSE  short   2021-11-24 20:05:00+00:00 profit= 35.0



( Читать дальше )

Заглядывание в будущее

Сочинил на днях еще один нескучный метод трендовой торговли.
На скорую руку набросал скриптец в Ami, прогнал на SBRF в M1. 
Не какой-то там HFT, 0.23% на трейд, лимитные заявки, удержание ~500 баров:
Заглядывание в будущее

sharp = 5.15, CAR/MDD = 10.7, и это без реинвеста.

Какой поразительный успех!
Вышел подышать на набережную, стал присматривать яхту. С-189 конечно оптимальный вариант, но ледокол «Сибирь» тоже неплох...

Перевел с AFL в Lua для робота, еще один фигатор типа «тренд», куда проще предыдущего, 10 строчек. Прогнал бэктест роботом на том же интервале… Эээ чего-то совсем не сходится...

Посмотрел на исходный AFL повнимательнее. Чорд, впопыхах неаккуратно написал. Нельзя же выставлять заявку на том же баре, на котором медиану взял.

было:
M = (H + L)*0.5;
BlaBlaMagic(M);

стало:
M = Ref((H + L)*0.5, -1); // сдвиг вектора на 1 бар назад
BlaBlaMagic(M);

Результат немного поменялся:
Заглядывание в будущее

Всего 1 минутный бар, а какая разительная разница!

Пока придется подождать с приобретением яхты…

TesterDashboard - эффективное привлечение эволюционной интеллектуальной машины к поиску закономерностей.

    • 14 октября 2021, 02:30
    • |
    • fxsaber
  • Еще

Идея не нова, вопрос был только в реализации.

Платформа MetaTrader 5 обладает возможностями автоматизации Тестера. Расчет огромного количества данных на истории реальных тиков — обыденность.

Проверка адаптивности ТС — аналогично.


Обработка расчетов.


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

Это можно делать двумя способами:

  1. Создать автоматический критерий, который отфильтрует что-то стОящее от вычислительной шелухи.
  2. Перебрать руками каждый кусочек цифровой кучи, доверяя фильтрацию мощной интеллектуальной машине — головному мозгу человека.


В первом случае получается быстро, но можно легко что-то упустить, действительно, важное.

Во втором случае все гораздо тщательнее, но очень много времени на это уходит. Элементарно утомить природную машину настолько, что больше никогда не захочется к этому возвращаться.



( Читать дальше )

51 757% на пересечении простых скользящих средних в 2021 году

— две простые скользящие средние 10 и 20 дней
— дневной таймфрейм
— комиссия 0.05% за сделку
— вход: короткая скользящая оказывает выше длинной
— выход: короткая скользящая средняя ниже длинной, то есть только лонг
— каждый раз входим на 95% от капитала

49 тикеров с 2005 года:

— топ 10 по капитализации из SP500: AAPL, MSFT, AMZN, FB, GOOGL, GOOG, TSLA, NVDA, JPM, JNJ
— топ 10 по капитализации американских ETF: SPY, IVV, VTI, VOO, QQQ, VEA, IEFA, AGG, VTV, VUG
— MOEX10: MAGN, GMKN, POLY, GAZP, SBER, YNDX, LKOH, ROSN, AFKS, TATN
— фьючерсы с мосбиржи: Si, RTS, BR, GOLD, SBRF
— топ 10 крипты по стоимости: BTCUSDT, ETHUSDT, BNBUSDT, ADAUSDT, XRPUSDT, DOGEUSDT, DOTUSDT, SOLUSDT, UNIUSDT, LINKUSDT, LTCUSDT, LUNAUSDT, MATICUSDT, ICPUSDT

Я сейчас ковыряю backtrader, поэтому на нём и тестировал. Посмотрим что там у нас получилось. Вот топ 10 тикеров по доходности. Доходность в процентах.

51 757% на пересечении простых скользящих средних в 2021 году
Топ 10 тикеров по доходности. Неплохо для элементарной стратегии.


Что видим? В топах крипта. Собственно не удивительно, с такой волатильностью.

( Читать дальше )

Как быстро оценить свой портфель

Привет всем. Чтобы не изобретать велосипеды #софты для просмотра структуры портфеля#.

Скачиваем R, RStduio. В RStudio устанавливаем библиотеки: rusquant, PerformanceAnalytics, PerformanceAnalytics.
Добавляем следующий код в RStudio.

Подключаем библиотеки:

library(rusquant)
library(PerformanceAnalytics)
library(PortfolioAnalytics)

Задаем тикеры, веса, начальную дату и просто переменную куда вытянем цены.

tickers <- c("FXGD","IRAO")
weights <- c(.5,.5)
start_data <- "2014-01-01"
PortPrices <- NULL

Вытягиваем данные с финама, есть и другие источники mfd,alor(вроде)

for(curr in tickers) {
               PortPrices <- cbind(PortPrices, getSymbols(curr, src = 'Finam', auto.assign = FALSE)[,4])
}

Тянем значения индекса, очищаем от пропущенных значения, считаем дневную доходность.

benchmark <- getSymbols("MICEX", src = "Finam", auto.assign = FALSE)[,4]
benchmarkRet <- na.omit(ROC(benchmark))
Тоже самое для портфеля акций, плюс считаем портфель и включаем ребалансировку каждый месяц.

PortReturn <- na.omit(ROC(PortPrices))
PortRet <- Return.portfolio(PortReturn, weights = weights, rebalance_on = "month")
PortCum <- cumsum(PortRet)
Micex <- cumsum(benchmarkRet)


( Читать дальше )

TesterReport - ощути всю мощь MT5-тестера в один клик!

    • 07 октября 2021, 09:57
    • |
    • fxsaber
  • Еще
После MT4 идет неприятие MT5 из-за непонятной ордерной системы. Особенно это сказывается в Тестере стратегий: отчет MT4 интуитивно понятен, в отличие от MT5.По этой причине, когда заходит речь о публикации, например, на форуме отчета очередного советника в виде html-файла, то делают либо MT4-отчет, либо ничего. 

Ничего удивительного, когда MT5-версия советника проверяется на реальных тиках в MT5-тестере, но отчет выкладывается из MT4, где котировки совсем другие. Въехать в стиль торговли советника возможно только по MT4-statement.

TesterReport - ощути всю мощь MT5-тестера в один клик!

Предлагаю использовать скрипт TesterReport, который создает html-отчет для одиночного прогона MT5-тестера.

 

Инструкция:

  1. Скачайте любой интересуемый MT5-советник (EX5-файл). Например, из Маркета можно взять бесплатно любой продаваемый советник.
  2. Запустите одиночный проход советника (после оптимизации или сразу).


( Читать дальше )

Оптимизация робастного. Без WFT.

Оптимизирую трендовуху по одному параметру. Получился вот такой график.
Оптимизация робастного. Без WFT.
Y годовая доходность, X значение параметра. Видно что зона оптимума широкая и понятная, надо скорее перелезть через оптимум на плато чем не долезть. Причем оптимум был найден одним! простым прогоном брута на всей истории и оценкой еквити/прибылей за периоды.  Картинка с оптимизацией по периодам для перфекционизма. Когда в стратегии есть идея (не натянуть индик на ценовой ряд и подгонять период) получается как то так.

Нужен тут отдельный WFT? При устойчивости по периодам незачем.

Имхо.

Остальные посты в моем телеграм канале. Но я его еще не завел, так что пока так.

....все тэги
UPDONW
Новый дизайн