#57265 - Mon Aug 12 2013 04:01 PM
В 1.2.8.21 скорректирован индикатор StDev
|
member
Registered: Tue Jul 21 2009
Записи: 152
|
В 1.2.8.21 скорректирован индикатор StDev - должен считаться точнее на коротких периодах.
|
Наверх
|
|
|
|
#57273 - Mon Aug 12 2013 05:32 PM
Re: В 1.2.8.21 скорректирован индикатор StDev
[Re: Denis]
|
veteran
Registered: Thu Sep 29 2011
Записи: 1446
|
это серьёзно. можно точнее описать изменения? для осознания возможных последствий для существующих скриптов.
|
Наверх
|
|
|
|
#57276 - Mon Aug 12 2013 05:42 PM
Re: В 1.2.8.21 скорректирован индикатор StDev
[Re: uuzzeerr]
|
member
Registered: Tue Jul 21 2009
Записи: 152
|
Uncorrected sample standard deviation сменили на Corrected sample standard deviation
для длинных периодов разница незаметна. Для коротких есть, но не должна быть очень большой
|
Наверх
|
|
|
|
#57288 - Tue Aug 13 2013 09:04 AM
Re: В 1.2.8.21 скорректирован индикатор StDev
[Re: Denis]
|
veteran
Registered: Thu Sep 29 2011
Записи: 1446
|
если вас не затруднит , прошу выложить исходный код обоих индикаторов. очень важно знать в чем же разница в расчетах.
|
Наверх
|
|
|
|
#57289 - Tue Aug 13 2013 09:40 AM
Re: В 1.2.8.21 скорректирован индикатор StDev
[Re: uuzzeerr]
|
Carpal Tunnel
Registered: Thu Sep 27 2012
Записи: 2860
|
если вас не затруднит , прошу выложить исходный код обоих индикаторов. очень важно знать в чем же разница в расчетах. Разница в том что в предыдущем варианте в знаменателе стояло n, теперь там стоит n-1. То есть расчет идет по Выборке. А раньше по Ген совокупности что не совсем верно. Чем меньше период расчета, то есть чем меньше элементов в вашей выборке, тем больше будет различие между предыдущим вариантом и текущим. Формула http://ru.wikipedia.org/wiki/%D0%A1%D1%80%D0%B5%D0%B4%D0%BD%D0%B5%D0%BA%D0%B2%D0%B0%D0%B4%D1%80%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B5_%D0%BE%D1%82%D0%BA%D0%BB%D0%BE%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5 То что называется Сандартное отклонение и реализовано сейчас. Раньше было Среднеквадратичное отклонение. У буржуев они зовутся так как написал Денис.
_________________________
__
|
Наверх
|
|
|
|
#57319 - Tue Aug 13 2013 05:53 PM
Re: В 1.2.8.21 скорректирован индикатор StDev
[Re: Denis]
|
member
Registered: Fri Apr 22 2011
Записи: 137
|
В 1.2.8.21 скорректирован индикатор StDev - должен считаться точнее на коротких периодах. Спорное решение. Надо было сделать новый индикатор, с другим названием.
|
Наверх
|
|
|
|
#57335 - Wed Aug 14 2013 12:18 PM
Re: В 1.2.8.21 скорректирован индикатор StDev
[Re: Gji]
|
veteran
Registered: Thu Sep 29 2011
Записи: 1446
|
поддерживаю Gji, решение спорное. где взять исх код старого индикатора?
|
Наверх
|
|
|
|
#57349 - Wed Aug 14 2013 04:01 PM
Re: В 1.2.8.21 скорректирован индикатор StDev
[Re: uuzzeerr]
|
Carpal Tunnel
Registered: Thu Sep 27 2012
Записи: 2860
|
поддерживаю Gji, решение спорное. где взять исх код старого индикатора? полагаю что сделают их два. Но насчет спорности тут можно поспорить. В стандартных инструкциях как раз и советуеют брать ст дев который сейчас то есть по выборке
_________________________
__
|
Наверх
|
|
|
|
#57353 - Wed Aug 14 2013 05:50 PM
Re: В 1.2.8.21 скорректирован индикатор StDev
[Re: ra81]
|
member
Registered: Fri Apr 22 2011
Записи: 137
|
Но насчет спорности тут можно поспорить. Не спорю. Можно даже поспорить насчет возможности поспорить по поводу спорности чего-либо, но не буду.
|
Наверх
|
|
|
|
#57362 - Wed Aug 14 2013 11:50 PM
Re: В 1.2.8.21 скорректирован индикатор StDev
[Re: Gji]
|
veteran
Registered: Thu Sep 29 2011
Записи: 1446
|
самый железобетонный аргумент у меня - у меня в бою алгоритм в котором непоследнее место занимает это индикатор, а по тому как на его отладку было потрачено многое количество машиночасов ( не говоря про человекочасы) я настороженно отношусь к возникающим изменениям.
|
Наверх
|
|
|
|
#57401 - Fri Aug 16 2013 01:20 PM
Re: В 1.2.8.21 скорректирован индикатор StDev
[Re: uuzzeerr]
|
member
Registered: Fri Apr 22 2011
Записи: 137
|
Забавно, что новую версию индикатора разработчики даже толком не протестировали. Там на первой итерации возникает деление на 0 и результат расчета, соответственно, NaN. Бу-га-га.
В Quik, TA-Lib (исп-ся в OEC Trader), NinjaTrader используется как раз версия расчета аналогичная старой. В статистических пакетах, конечно, и тот и другой варианты расчета есть. А вот в WealthLab способ расчета задается параметром, думаю, и в TSLab надо так же сделать.
Хотя, лично я, для себя, свою версию индикатора сделал, она еще и считается почти в два раза быстрее.
|
Наверх
|
|
|
|
#57404 - Fri Aug 16 2013 01:36 PM
Re: В 1.2.8.21 скорректирован индикатор StDev
[Re: Gji]
|
veteran
Registered: Thu Sep 29 2011
Записи: 1446
|
Хотя, лично я, для себя, свою версию индикатора сделал, она еще и считается почти в два раза быстрее.
похвастай, а лучще поделись исходником. вот старый код
public static double StDev(IList<double> candles, IList<double> SMAs, int curbar, int period)
{
int start = curbar - period + 1;
if (start < 0)
{
start = 0;
}
period = curbar - start + 1;
double sum = 0;
while (start <= curbar && start < candles.Count)
{
var s = candles[start] - SMAs[curbar];
sum += s*s;
start++;
}
var n = Math.Min(period, curbar + 1);
return Math.Sqrt(sum/n);
}
и что в нем изменили?
|
Наверх
|
|
|
|
#57407 - Fri Aug 16 2013 03:11 PM
Re: В 1.2.8.21 скорректирован индикатор StDev
[Re: uuzzeerr]
|
member
Registered: Tue Jul 21 2009
Записи: 152
|
return Math.Sqrt(sum/(n-1));
|
Наверх
|
|
|
|
#57408 - Fri Aug 16 2013 03:13 PM
Re: В 1.2.8.21 скорректирован индикатор StDev
[Re: Denis]
|
member
Registered: Tue Jul 21 2009
Записи: 152
|
Первый бар прошляпили, да
Подправили
Отредактировано Denis (Fri Aug 16 2013 03:43 PM)
|
Наверх
|
|
|
|
#57410 - Fri Aug 16 2013 06:09 PM
Re: В 1.2.8.21 скорректирован индикатор StDev
[Re: Denis]
|
member
Registered: Fri Apr 22 2011
Записи: 137
|
Молодцы! Приятно видеть адекватную реакцию. to usseerr: using System;
using System.Collections.Generic;
using TSLab.Script.Handlers;
namespace MyIndicators {
//[HandlerCategory("Indicators")]
public class StDeviation : BasePeriodIndicatorHandler, IDouble2DoubleHandler {
[HandlerParameter(true, "false", NotOptimized = true)]
public bool Corrected { get; set; }
public IList<double> Execute(IList<double> source) {
int count = source.Count;
var values = new double[count];
int offs = Corrected ? 1 : 0;
int period = Period - 1;
for (int i = offs; i < count; i++) {
int j = i - period;
if (j < 0)
j = 0;
int n = i - j + 1;
double sx = 0, sxx = 0;
for (; j <= i; j++) {
var x = source[j];
sx += x;
sxx += x*x;
}
values[i] = Math.Sqrt((sxx - (sx * sx / n)) / (n - offs));
}
return values;
}
}
}
Attachments
StDeviation.rar (232 downloads)
|
Наверх
|
|
|
|
#57411 - Fri Aug 16 2013 06:23 PM
Re: В 1.2.8.21 скорректирован индикатор StDev
[Re: Gji]
|
veteran
Registered: Thu Sep 29 2011
Записи: 1446
|
благодаю, очень интересно
|
Наверх
|
|
|
|
#57416 - Sat Aug 17 2013 04:11 PM
Re: В 1.2.8.21 скорректирован индикатор StDev
[Re: Gji]
|
Carpal Tunnel
Registered: Thu Sep 27 2012
Записи: 2860
|
Хотя, лично я, для себя, свою версию индикатора сделал, она еще и считается почти в два раза быстрее.
На первый взгляд быстрее не выглядит. цикл в цикле... не повышает скорости.
_________________________
__
|
Наверх
|
|
|
|
#57443 - Mon Aug 19 2013 12:22 PM
Re: В 1.2.8.21 скорректирован индикатор StDev
[Re: ra81]
|
member
Registered: Fri Apr 22 2011
Записи: 137
|
На второй взгляд Вы, возможно, заметите, что uzzeeerr привел не весь код расчета StDev, а только его часть. В оставшейся части есть еще три цикла.
|
Наверх
|
|
|
|
|
|