Сигналит, когда цена приближается к таким важным ценовым уровням, как максимум, минимум или закрытие вчерашнего дня. Можно настроить расстояние для срабатывания сигнала, как снизу уровня, так и сверху.
#PrewDayHiLowCloseRange.Подсвечивает, когда цена рядом с вчерашним Hi, Low или Close
#Cнять галочку Include Extended Session
def iDiffDown = 0.15; #Максимальное отклонение вниз от уровня
def iDiffUp = 0.15; #Максимальное отклонение вверх от уровня
def iHiPrevDay = high(period = «DAY»)[1];
def iLowPrevDay = Low(period = «DAY»)[1];
def iClosePrevDay = Close(period = «DAY»)[1];
def bHiRange = (iHiPrevDay-close>=-iDiffDown) and (iHiPrevDay-close<=iDiffUp);
def bLowRange = (iLowPrevDay-close>=-iDiffDown) and (iLowPrevDay-close<=iDiffUp);
def bCloseRange = (iClosePrevDay-close>=-iDiffDown) and (iClosePrevDay-close<=iDiffUp);
plot bSignal = if bHiRange then 1 else if bLowRange then 2 else if bCloseRange then 3 else 100;
AssignBackgroundColor (if (bSignal == 1) then Color.LIGHT_GREEN else if (bSignal == 2) then Color.LIGHT_RED else if (bSignal == 3) then Color.BLUE else Color.black);
Полная библиотека индикаторов в нашем блоге goo.gl/9JRWUi
Похожий, на предыдущий, фильтр. Указывает, когда цена приближается к цене вчерашнего закрытия дня. Можно указать сигнальное расстояние до закрытия, в центах.
#Diff_PrevClose.подсвечивает, когда цена подходит к вчерашнему закрытию ближе указанного расстояния
#Cнять галочку Include Extended Session
def iDiff = 0.05; #максимальное расстояние от вчерашнего close
plot iDiffClose = absValue(close(period = «DAY»)[1] — close)<=iDiff;
Полная библиотека индикаторов в нашем блоге goo.gl/9JRWUi
Сигналит когда объем текущей свечи (любого периода) превышает средний объем за несколько предыдущих свечей на Х процентов. Позволяет увидеть всплеск объема в акции. Настроить можно число тех самых «предыдущих свечей» для подсчета среднего объема, а так же процент, на который объем свечи должен подняться.
#AvgVolumeBreak.показывает сигнал, когда объем последней свечи превысит средний объем за N предыдущих свечей на Х процентов.
#Cнять галочку Include Extended Session
Полная библиотека индикаторов в нашем блоге goo.gl/9JRWUi
Скрипт #ThinkOrSwim для #watchlist
Показывает число свечных моделей, которые найдены одновременно среди последних свечей графика. Своих настроек не имеет. Больших значений не будет, не позволит отслеживать, когда хотя бы одна свечная модель из группы появится на графике. Для понимания того, что за модель высветилась, нужно поставить индикаторы свечных моделей из соседнего подраздела. Поиск ведется именно среди паттернов с этого диска.
#Patterns.Показывает число одновременно найденных паттернов на графике (по последней свече)
#Cнять галочку Include Extended Session
def h1Bh2 = high[1]>high[2];def h1Mh2 = high[1]<high[2];def low25 = ((high — low) / 100) * 25;def cBh1 = close>high[1];def hMh1 = high<high[1];def hBh1 = high>high[1];def o1Bc1 = open[1]>close[1];def c1Bo1 = close[1]>open[1];def lBl1 = low>low[1];def lMl1 = low<low[1];def l1Ml2 = low[1]<low[2];def l1Bl2 = low[1]>low[2];def oMc = open<close;def oBc = open>close;def cMl1 = close<low[1];def h1Rh = high[1]==high;def l1Rl = low[1]==low;
def bRevers = (h1Bh2 and close[1]>high[2] and open>high[1] and close<close[1]) or (h1Mh2 and close[1]<low[2] and open<low[1] and close>close[1]);
def ThreeHighLow = (high[2]==high[1] and h1Rh) or (low[2]==low[1] and l1Rl);
def bBody_overlapping = (c1Bo1 and open>close[1] and close<open[1]) or (o1Bc1 and open<close[1] and close>open[1]);
def Pin = (o1Bc1 and high-open < low25 and high-close < low25)or(c1Bo1 and open-low < low25 and close-low<low25);
def Outside_Bar = (c1Bo1 and hBh1 and cMl1 or o1Bc1 and hBh1 and cMl1) or (o1Bc1 and lMl1 and cBh1 or c1Bo1 and lMl1 and cBh1);
def Inside_Bar = (o1Bc1 and oMc and hMh1 and lBl1) or (c1Bo1 and oBc and hMh1 and lBl1);
def Double_Outside_bar = high[2]<high[1] and hBh1 and l1Ml2 and lMl1 and close>high[1];
def Double_Inside_bar = h1Mh2 and hMh1 and l1Bl2 and lBl1;
def ThreeBarReverse = (open[2]<close[2] and l1Bl2 and low[1]<high[2] and h1Bh2 and hMh1 and close[1]<low[1]) or (open[2]>close[2] and l1Ml2 and low[2]<high[1] and l1Ml2 and lBl1 and low<high[1] and close>high[1]);
def DoubleBars = (c1Bo1 and h1Rh and oBc and close<high[1]) or (o1Bc1 and l1Rl and oMc and close>high[1]);
Скрипт #ThinkOrSwim для #watchlist
Сигналит, когда акция проторговалась за сегодня больше чем в среднем за несколько предыдущих дней. Можно настроить число дней для подсчета среднего значения.
def iDays = 10; #число дней для подсчета среднего объема
plot out = volume >= Average (volume, iDays);
AssignBackgroundColor (if out then Color.LIGHT_GREEN else Color.current);
Полная библиотека индикаторов в нашем блоге goo.gl/9JRWUi
Скрипт #ThinkOrSwim для #watchlist
Показывает позицию акции в процентах между максимум и минимум дня. Настроек не имеет.
Показывает позицию акции в процентах, на определенном периоде свечей. Период можно настроить. Позволяет смотреть позицию на больших дневных диапазонах.
#PositionD.Показывает позицию акции в % внутри определенного числа свечей.
def iPeriod = 180; # число свечей, среди которых считать позицию.
plot iPositionD = round((close-lowest(low,iPeriod))/(highest(high,iPeriod)-lowest(low,iPeriod))*100,0);
Полная библиотека индикаторов в нашем блоге goo.gl/9JRWUi
Включает оба предыдущих фильтра. Сигналит, когда акция находится близко к экстремумам как на долгосрочном периоде, так и внутри дня. Настроить можно процент отклонения от экстремумов и число свечей для подсчета позиции в долгосрочном периоде по дневке.
#POS.Показывает когда акция находится на хай/лоу по дневке + внутри дня.
#Aggregation — Day
def PrecentDiff = 2; #процент отклонения от экстремума
def iPeriod = 180; #число свечей для подсчета позиции по дневке
def iPositionS = (close-low)/(high-low)*100;
def iPositionD = round((close-lowest(low,iPeriod))/(highest(high,iPeriod)-lowest(low,iPeriod))*100,0);
def PosLong = iPositionS >=100-PrecentDiff and iPositionD >=100-PrecentDiff;
def PosShort = iPositionS <=PrecentDiff and iPositionD <=PrecentDiff;
AddLabel (PosLong,»Up», color.Green);
AddLabel (PosShort,»Down», color.Red);
Полная библиотека индикаторов в нашем блоге goo.gl/9JRWUi
Скрипт #ThinkOrSwim для #watchlist
Фильтр считает число зеленых и красных свечей на графике. Мы указываем число последних свечей, среди которых нужно искать, минимальное число свечей для сигнала и ждем. Какого цвета больше, тот сигнал и нарисуется в колонке.
#CountBullBearBars.Показывает 1, когда число зеленых свечей в течении последних X свечей достигает указанного, и 2 для красных свечей.
#Cнять галочку Include Extended Session
def iMinBars = 5; #минимальное число на счетчике одноцветных свечей
def iNumberBars = 65; #число свечей, среди которых искать
def iSummUpBar = fold SUbar = 0 to iNumberBars with SUsumm do if (close[SUbar]>open[SUbar]) then SUsumm+1 else SUsumm;
def iSummDownBar = fold SDbar = 0 to iNumberBars with SDsumm do if (open[SDbar]>close[SDbar]) then SDsumm+1 else SDsumm;
def bUpBars = (iSummUpBar>=iMinBars) and (iSummUpBar>=iSummDownBar);
def bDownBars = (iSummDownBar>=iMinBars) and (iSummUpBar<=iSummDownBar);
plot out = (if bUpBars then 1 else if bDownBars then 2 else 100);
AssignBackgroundColor (if (out == 1 ) then Color.LIGHT_GREEN else if (out == 2) then Color.LIGHT_RED else Color.black);
Полная библиотека индикаторов в нашем блоге goo.gl/9JRWUi