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

бэктестинг


Голая МАшка

    • 26 августа 2020, 00:13
    • |
    • GOLD
      Популярный автор
  • Еще
Делюсь бэктестом голой МАшки.

Беру миллион пятиминутных свечей ришки, сишки, брента и сбера. Накладываю простую МАшку. Получаю до боли известную картину:

Голая МАшка
Если MAшка идет вверх, открываю лонг на открытии каждой свечи.
Если MAшка идет вниз, открываю шорт на открытии каждой свечи.
Закрываю сделку на закрытии каждой свечи.
Простой и заманчивый (для новичков) алгоритм.

Бектест перебирает период MAшки от 3 до 500 и складывает все сделки (их чуть меньше миллиона). Естественно, по каждому фьючу выбираю самый прибыльный вариант. 

Результаты этого простого упражнения выглядят примерно так:

Голая МАшка

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

Как измерить качество бэктеста?

Неоднократно попадались такие споры в комментариях:

«Я проверял на прошлых данных такую-то стратегию или семейство стратегий — она не работает».

«Я тоже проверял — всё работает».

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

Получается, мы выходим на такие темы как:

1. Разные методологии проверки на прошлых данных.

2. Разное качество такой проверки, зависящее от знаний проверяющего.

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

И ставить алготрейдерам оценки от 1 до 5, в зависимости от соответствия проводимых ими проверок идеальной модели.

Вопрос: вывел ли уже кто-то такую идеальную модель бэктеста?

И где её найти?


Почему все Граали в моих руках становятся плохими? По следам "Как вы з..ли с этой монеткой (дарю Грааль)"

Источник 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

Чем меньше риск, тем больше доходность. Fact and fiction о риске и доходности на Московской бирже. Большой бэктест

Привет, выражение «чем выше риск, тем выше доходность» внешне выглядит логично, но не находит подтверждения на практике.  По акциям США и Европы на длинных горизонтах уже доказано, что акции с наименьшим риском приносят больше доходности, чем высокорискованные даже без поправки на риск. В качестве меры риска принято использовать рыночную бету, но сегодня мы будем тестировать волатильность (стандартное отклонение) дневной доходности, а бету оставим для будущих экспериментов.

За основу мы возьмем работу Нэда Бейкера и Роберта Хогена «Low Risk Stocks Outperform within All Observable Markets of the World» (2012). Авторы просто посчитали волатильность для каждой акции за последние 24 месяца, сформировали по 2 портфеля из 10% акций с наибольшей и наименьшей волой и повторяли это каждый месяц. Да, это академическая работа, но она написана не теоретиками и носит важные практические выводы. Очень рекомендую почитать в оригинале. Вот, что получили авторы по рынкам развитых стран:
Чем меньше риск, тем больше доходность. Fact and fiction о риске и доходности на Московской бирже. Большой бэктест



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

Имеет ли смысл прогнозировать прибыль компаний на Мосбирже? Большой бэктест для идеальных финансовых прогнозов от хрустального шара

Привет, новая неделя – новый бэктест. В этот раз мы проверим, может ли аналитик с хрустальным шаром обогнать рынок.
Имеет ли смысл прогнозировать прибыль компаний на Мосбирже? Большой бэктест для идеальных финансовых прогнозов от хрустального шара

Прогнозировать будущие цены не под силу даже этому шару, и он «всего лишь» выдает список из 25% ликвидных компаний с наибольшим ростом чистой прибыли по отношению к прошлому году. На 3 месяца раньше рынка. Хрустальный шар MOEX Edition заботливо оберегает владельца от неликвидных шлаков и начинает исправно служить с января 2012 по январь 2020гг.

 

Немного размышлений о ценности финансовых прогнозов и мода на аналитику с середины 2010-х

 

Переход популярности от технического анализа к фундаментальному знаком тому, кто тоже был новичком в 2014-2015гг и жадно искал идеи и грааль. В сравнении с привыкшими к работе с боковиком 2012-2013гг технарями, идеи фундаменталистов было правда интересно изучать новичку. Не знаю выходит ли эта передача сейчас, но тогда она была популярна среди новичков:

Имеет ли смысл прогнозировать прибыль компаний на Мосбирже? Большой бэктест для идеальных финансовых прогнозов от хрустального шара



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

Получаем котировки MOEX ETF для калькулятора портфелей

Не вдохновлено ссылками ниже, но напомнило о выкладывании в публичный доступ.
smart-lab.ru/blog/620330.php
smart-lab.ru/blog/616708.php
Всем привет!
В ходе тестов калькулятора портфелей
github.com/Oppositus/CalculatorAA
возникло понимание, что его внутренние инструменты импорта котировок уже не работают. Так давайте напишем скрипт, который будет получать их через MOEX ISS API. Вывод скрипта-CSV файл.
Репозиторий github.com/helpau/MOEX_ETFs/blob/master/main.py
Тот же код:

tickers=["FXGD","FXUS","FXIT","SBSP","FXRL","FXRB","FXRU","SBCB","SBGB","SBRB"]
import requests
import apimoex
import pandas as pd
df=pd.DataFrame()
for ticker in tickers:
    with requests.Session() as session:
        data = apimoex.get_board_history(session, ticker,board="TQTF")
        df1 = pd.DataFrame(data)
        df1.set_index('TRADEDATE', inplace=True)
        df.info()
        df[ticker]=df1["CLOSE"]
df.to_csv("your_table.csv",sep=";")


P.S. Касательно самого калькулятора портфелей-полученный файл необходимо дополнительно обработать, чтобы на 1 год для 1 ETF было 12 записей. Особо пытливые могут исследовать, в какой день лучше проводить ребалансировку.


Как рассчитать размер депозита для торговли?

Может вопрос двоечника в школе, но все таки...

Например, планируется к торговле инструмент с текущей ценой 100 руб.
Бэктест стратегии показал максимальную историческую просадку 20%.

Как рассчитать размер депозита, чтобы не слить его на просадке?
Ясное дело, что в будущем просадка может быть и больше, но тем не менее…

Несистемные выбросы

В мониторингах счетов увидел часто повторяющуюся одну и ту же картину слития счетов.

Это не обвал индексов или нефти, а валютный рынок. Поэтому куда интереснее.

Вот несколько скринов с разных счетов. Многих неплохих скальперов-роботов уничтожило.
Несистемные выбросы



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

бэктесты как проводить инвестору

    • 18 февраля 2020, 13:38
    • |
    • Gregori
  • Еще

Ответ на многие вопросы которые  у меня возникают  по хорошему надо искать с бомощью бэктестов.
О бэктестах я слышал в первую очередь в связи с ротобами -Wealth-Lab/TSLab. но мне не совсем понятно-  обязательно ли их покупать и изучать или есть альтернативные варианты. тем более для роботов не важно какие там p/e у акции и что у неё с дивидендами. 

Вопрос- какие варианты есть бэктеста?

вариант в лоб- где то надыбать исторические данные (где? можно ли через квик выгрузить)- причём желательно не только что бы курс акций был, но и другие данные используемые в принятии решений. Допустим проверить стратегию «ежегодная ребалансировка портфеля с включением 7 акций с наибольшей средней дивидендной доходностью за последние 3 года при условии что за последний год p/e изменился на более чем на NN,  с равным распределением долей между этими акциями в портфеле» или сравнить «купи и держи» с «купил и лови тэйк профит/или выходит по стоп-лосу. ну и далее на основе этих данных в базе писать ручками программу которая моделирует входы/выходы/ получение дивидендов/изменение счёта.  самый трудозатратный и гибкий подход.

Насколько понимаю есть также онлайн сервисы „оценки портфолио акций“. насколько там гибко можно описывать стратегию- мне неведомо.



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

Как за полминуты протестировать идею на 150 миллионах тиков

    • 31 января 2020, 19:24
    • |
    • r0man
  • Еще

Тестировать будем крипту на Bitmex, так как там можно без проблем достать тики с направлениями на халяву.
Собственно, идея очень простая:
— покупаем, если сумма объемов последних 5 сделок больше 500,000
— продаем, если сумма объемов последних 5 сделок меньше -500,000
Торгуем одним условным битком (тикер XBTUSD).
Использовать будем R и пакет QuantTools.
Пишем немножко кода:
Как за полминуты протестировать идею на 150 миллионах тиков

Результаты:
Как за полминуты протестировать идею на 150 миллионах тиков



( Читать дальше )
  • обсудить на форуме:
  • bitmex

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