Прошу помощи в борьбе с перекрашиванием с помощью индикаторов от Алекса Гровера - PullRequest
0 голосов
/ 25 января 2020

Имеется 3 индикатора из одного семейства "прямоугольных волн" (трендовый степпер).

  1. Первый имеет необходимые характеристики, но имеет перекрашивание! Они помогли мне исправить это, добавив функцию «lookahead», но это не очень хорошо, потому что происходит потеря данных fre sh, и все не работает так, как я хотел.
  2. Есть 2 почти идентичных индикаторы «Эффективный трендовый шаг» и «Тренстеп» Алекса Гровера (Tradingview). У них разные характеристики, но самое главное, они не перекрашиваются и работают почти без задержек, мне кажется! И нет функции «lookahead», которая показывает способность обходиться без перерисовки.

Моя задача - попросить вас помочь мне объединить необходимые характеристики (1) первого индикатора с необходимой особенностью отсутствия перекраски без задержки (2) двух индикаторов, как это можно решить? спасибо

1.индикатор

study("1 long indicator ABCSStudy",overlay=true)
long_timeframe = input(title="Long timeframe", type=resolution, defval="1440")
step_shift = input(0,"Step Shift")
ha_symbol = heikinashi(tickerid)
long_ha_close = security(ha_symbol, long_timeframe, hlc3)
long_step = ema(long_ha_close[step_shift],1)
plot(long_step,title="LongStep",color=white,linewidth=2,style=line)

2.индикатор

//@version=4
study("Efficient Trend Step",overlay=true)
length = input(100),fast = input(50),slow = input(200),src = input(close)
//
er = abs(change(src,length))/sum(abs(change(src)),length)
dev = er*stdev(src*2,fast) + (1-er)*stdev(src*2,slow)
a=0.,a := src > nz(a[1],src) + dev ? src : src < nz(a[1],src) - dev ? src : nz(a[1],src)
//
css = fixnan(a > a[1] ? #2E9AFE : a < a[1] ? #e65100 : na)
plot(a,color=css,transp=0,linewidth = 3)


//@version=3
study("Trend Step",overlay=true)
length = input(50)
//
src = close
dev = stdev(src,length)*2
a = 0.
a := n < length ? src : src > nz(a[1],src) + dev ? src : src < nz(a[1],src) - dev ? src : a[1]
css = fixnan(a > a[1] ? #2196f3 : a < a[1] ? #e65100 : na)
plot(a,color=css,linewidth=2,transp=0)

1 Ответ

0 голосов
/ 25 января 2020

Вы найдете всю информацию, необходимую для решения этих проблем с перекрашиванием, в описаниях 2 сценариев: Как избежать перекраски, когда НЕ используется security () и Как избежать перекраски при использовании security () - Часто задаваемые вопросы по PineCoders .

В руководстве пользователя также есть хороший текст по перерисовке.

...