Формулы для индикаторов Thinkorswim (TOS)

Разница максимумов:
plot Diff = round((high-high[1]),2)*100;
Diff.AssignValueColor(if Diff >= 0 then Color.GREEN else Color.ORANGE);
AssignBackgroundColor(if open — high[1] > 0.1 then Color.DARK_GRAY else Color.BLACK);
 
Разница минимумов:
plot Diff = round((low[1] — low),2)*100;
Diff.AssignValueColor(if Diff >= 0 then Color.RED else Color.ORANGE);
AssignBackgroundColor(if low[1] — open > 0.1 then Color.DARK_GRAY else Color.BLACK);
 
Местонахождение последнего значения цены к максимуму 
(подсвечивает при приближении к максимуму на 15 центов):
plot Diff = round((close-high[1]),2)*100;
Diff.AssignValueColor(if Diff >= 0 then Color.GREEN else Color.ORANGE);
AssignBackgroundColor(if Diff >= (high — high[1] — 0.15)*100 then Color.DARK_GREEN else Color.BLACK);
 
Местонахождение последнего значения цены к минимуму 
(подсвечивает при приближении к минимуму на 15 центов):
plot Diff = round((low[1] — close),2)*100;
Diff.AssignValueColor(if Diff >= 0 then Color.RED else Color.ORANGE);
AssignBackgroundColor(if Diff >= (low[1] — low -0.15)*100 then Color.DARK_RED else Color.BLACK);

 

Максимум:
plot Diff = high;
AssignBackgroundColor(if Diff > close then Color.BLACK else Color.GREEN);
 
Минимум:
plot Diff = low;
AssignBackgroundColor(if Diff < close then Color.Black else Color.RED);
Расстояние до минимума, за последние 150 свечей
(Подсвечивает, если оно меньше 10 центов):
plot h = Lowest (low, 150)-close; assignBackgroundColor (if Lowest (low, 150)-close then color.DARK_rED else color.BLACK);
 
Расстояние до максимума, за последние 150 свечей
(Подсвечивает, если оно меньше 10 центов):
plot h = Highest (high, 150) — high; assignBackgroundColor (if highest (high,150) — close <0.1 then color.DARK_GREEN else color.BLACK);

 

База
цифра 5 обозначает количество свечей взятых в базу, ее можно менять (Agrigation 1m):
Plot base = Highest(high, 5) — lowest (low, 5);
 
База на максимуме или минимуме:
(Agrigation D):
High-low — plot Diff = (close-high[1])*100>= (high — high[1] — 0.08)*100 or (low[1] — close)*100 >= (low[1] — low -0.08)*100 or close >= high or close >= high; AssignBackgroundColor( if close >= high then Color.Green else if close <= low then Color.RED else Color.BLACK);
 
Уровни на подобии фигур технического анализа таких как «треугольник» и «чашка с ручкой»:
plot hi = (highest(high,120)[5]+0.01)- close <=0.05 and (highest(high,120)[5]+0.01) >=highest (high, 6) or close — (lowest(low, 120)[5]-0.01) <=0.05 and (lowest(low, 120)[5]-0.01) <=lowest (low,6); AssignBackgroundColor (if (highest(high,120)[5]+0.01)- close <=0.02 and (highest(high,120)[5]+0.01) >=highest (high, 6) then color.GREEN else if close — (lowest(low, 120)[5]-0.01) <=0.02 and (lowest(low, 120)[5]-0.01) <=lowest (low,6) then color.RED else color.BLACK);

 

Спред:
plot Diff = round((Ask — Bid), 2) * 100;
Diff.AssignValueColor(if Diff <= 5 then Color.PINK else Color.BLUE);
 
Определение плавности акции:
(Если последние 11 свечек акции имеют размер менее 10 центов каждая, то показывает «1». Подсвечивает если максимум/минимум последних 5 свечей больше или равен максимуму/минимуму за последние 200 свечей. Ставится на М1 или М5 для определения плавности акции, в которой уже была высокая активность): 
plot bu = high-low < 0.1 and high[1]-low[1] < 0.1 and high[2]-low[2] < 0.1 and high[3]-low[3] < 0.1 and high[4]-low[4] < 0.1 and high[5]-low[5] < 0.1 and high[6]-low[6] < 0.1 and high[7]-low[7] < 0.1 and high[8]-low[8] < 0.1 and high[9]-low[9] < 0.1 and high[10]-low[10] < 0.1 and high[11]-low[11] < 0.1 and high[12]-low[12] < 0.1; bu.assignValueColor (if high-low < 0.1 and high[1]-low[1] < 0.1 and high[2]-low[2] < 0.1 and high[3]-low[3] < 0.1 and high[4]-low[4] < 0.1 and high[5]-low[5] < 0.1 and high[6]-low[6] < 0.1 and high[7]-low[7] < 0.1 and high[8]-low[8] < 0.1 and high[9]-low[9] < 0.1 and high[10]-low[10] < 0.1 and high[11]-low[11] < 0.1 and high[12]-low[12] < 0.1 then color.WHITE else color.BLACK); assignBackgroundColor (if highest(high, 5) >= highest (high,200) then color.DARK_GREEN else if lowest (low,5) <= lowest (low,200) then color.DARK_RED else color.BLACK);

 

Изменение объема:
plot Diff = (if volume > 10000 then round ((((high — low)/(AverageTrueRange(ATRLength = 10) ) 100 ))-100, 2) else 0);
 
Разница объемов в thinkorswim
(Подсвечивает если цена акции обновила максимум/минимум за 30 свечек на повышенном объеме): 
plot Diff=round((volume-volume[1])/1000); Diff.AssignValueColor(if volume-volume[1] >= 0 then Color.white else Color.gray); AssignBackgroundColor (if volume > volume[1] and high-low>=0.1 and high == highest (high, 30) or volume > volume[1] and high-low>=0.1 and low ==lowest (low, 30) then color.VIOLET else Color.black);
 
Разница между текущим объемом и прошлым 
(Подсвечивает всплески объема с движением):
plot Diff=round((volume-volume[1])/1000); Diff.AssignValueColor(if volume-volume[1] >= 0 then Color.white else Color.gray); AssignBackgroundColor (if volume > volume[1] and high-low>=0.1 then color.VIOLET else Color.black);

 

Сортировка по максимумам/минимумам
(Подсвечивает обновление максимума/минимума. Aggregation: D):
plot Diff = (close-high[1])100>= (high — high[1] — 0.08)100 or (low[1] — close)100 >= (low[1] — low -0.08)100 or close >= high or close >= high; AssignBackgroundColor( if close >= high then Color.Green else if close <= low then Color.RED else Color.BLACK);
 
Цена возле максимума/минимума за последние 50 свечек 
(В пределах 10 центов при условии что текущая цена не выше хай/лоу последних 10 свечек + текущий объем более 30000 и текущий хай/лоу еще не обновил хай/лоу за 50 свечек. + подсвечивает сигналы соответствующим цветом. Aggregation: D):
plot Diff = Highest(high, 50)[1]-close <=0.1 and close < Highest(high, 10)[1]+0.06 and high < Highest(high, 50)[1] and volume > 30000 or close- lowest(low, 50)[1] <=0.1 and close > lowest(low, 50)[1]-0.06 and low > lowest(low, 50)[1]-0.06 and volume > 30000; AssignBackgroundColor (if Highest(high, 10)[1]-close <=0.1 and close < Highest(high, 10)[1]+0.06 and high < Highest(high, 10)[1] then color.DARK_green else if close- lowest(low, 10)[1] <=0.1 and close > lowest(low, 10)[1]-0.06 and low > lowest(low, 10)[1]-0.06 then color.DARK_RED else color.BLACK);
 
Разница движения за 10 свечей и текущей свечки 
(Подсвечивает приближение цены к максимуму или минимуму. Aggregation: D):
plot Diff = round ((AverageTrueRange(ATRLength = 10) — (high — low)), 2) * 100; AssignBackgroundColor(if (close-high[1])100>= (high — high[1] — 0.08)100 then Color.DARK_GREEN else if (low[1] — close)100 >= (low[1] — low -0.08)100 then Color.DARK_RED else Color.BLACK);

Будьте в курсе всех важных событий United Traders — подписывайтесь на наш телеграм-канал

  • thinkorswim
  • ameritrade
  • формулы
  • ТОС

Похожие публикации

Комментарии (18)

Чтобы оставить комментарий, вам необходимо войти или зарегистрироваться
UP