Избранное трейдера WooDoo




// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
//@version=4
study("Historical Volatility")
// Настройки окон
HVPeriod1 = input(17, minval=1, title="Окно 1")
HVPeriod2 = input(34, minval=1, title="Окно 2")
HVPeriod3 = input(51, minval=1, title="Окно 3")
HVPeriod4 = input(85, minval=1, title="Окно 4")
// Настройка периода для сглаживания
EMAPeriod = input(17, minval=2, title="Период сглаживания")
// Собственно индикатор
// мультипликатор, для нормирования к году
mul = 252 * 1210 / timeframe.multiplier
//приращение за бар
ch = log(close) - log(close[1])
// Историческая волатильность в окнах
HV1 = ema(sqrt(sum(ch * ch, HVPeriod1) * mul / HVPeriod1) * 100, EMAPeriod)
HV2 = ema(sqrt(sum(ch * ch, HVPeriod2) * mul / HVPeriod2) * 100, EMAPeriod)
HV3 = ema(sqrt(sum(ch * ch, HVPeriod3) * mul / HVPeriod3) * 100, EMAPeriod)
HV4 = ema(sqrt(sum(ch * ch, HVPeriod4) * mul / HVPeriod4) * 100, EMAPeriod)
// Рисуем красивое
plot(HV1, color=#cccccc)
plot(HV2, color=#ffcccc)
plot(HV3, color=#ff9999)
plot(HV4, color=#ff0000)
Чтобы использовать, копируем, в TradingView открываем Редактор Pine, создаем там новый индикатор (Открыть -> Новый индикатор), удаляем все что там в скрипте по умолчанию и вставляем этот код. Жмем Сохранить. Дальше скрипт будет доступен в выпадающем списке над графиком под кнопкой Индикаторы во вкладке Мои скрипты. Модно, быстро и удобно )
Идея не нова, вопрос был только в реализации.
Платформа MetaTrader 5 обладает возможностями автоматизации Тестера. Расчет огромного количества данных на истории реальных тиков — обыденность.
Проверка адаптивности ТС — аналогично.
Однако, при большом количестве уже проведенных вычислений требуется разобрать эту кучу данных и найти в ней что-то, действительно, интересное.
Это можно делать двумя способами:
В первом случае получается быстро, но можно легко что-то упустить, действительно, важное.
Во втором случае все гораздо тщательнее, но очень много времени на это уходит. Элементарно утомить природную машину настолько, что больше никогда не захочется к этому возвращаться.
Привет всем. Чтобы не изобретать велосипеды #софты для просмотра структуры портфеля#.
Скачиваем 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 <- NULLfor(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)


Это исследование я сделал под влиянием бурной дискуссии на форуме о распределении «хвостов» приращений логарифмов цен, возникшей, казалось, на «пустом месте»: насколько корректны доверительные интервалы для оценок параметров линейной регрессии в альфа-бета модели?
Кроме указанной ссылки, дискуссия продолжилась в еще двух ветках: тут и тут.
Действительно, эти оценки в классическом случае строятся на основе центральной предельной теоремы для статистик оценок параметров линейной регрессии. Однако, как я уже писал на смартлабе, необходимым условием которой является скорость роста дисперсии суммы слагаемых как О(N), N – число слагаемых, а для быстрой сходимости в центральной области еще и требуется конечность абсолютного третьего момента любого слагаемого (если говорить о сходимости на всей прямой, включая «большие уклонения», то еще требуется и конечность всех моментов отдельных слагаемых). Однако эти условия не выполняются для части распределений Парето и Стьюдента с полиномиальной скоростью убывания «хвостов» и поэтому для «хорошего» приближения суммы таких слагаемых нормальным законом требуется очень большое число испытаний, которых, как правило, в альфа-бета модели, построенной на дневных данных, нет. А значит традиционные методы построения доверительных интервалов для оценок параметров этой модели «не работают».