dmitrytkachev
NYSE-трейдер
Thinkorswim формулы и фильтры для ТОС
разница хаев:
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);
местонахождение ласта к хаю (при приближении к хаю на 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);
хай:
plot Diff = high;
AssignBackgroundColor(if Diff > close then Color.BLACK else Color.GREEN);
спред:
plot Diff = round((Ask - Bid), 2) * 100;
Diff.AssignValueColor(if Diff <= 5 then Color.PINK else Color.BLUE);
Спред 2
plot Diff = round((Ask - Bid), 2) * 100;
Diff.AssignValueColor(if Diff <= 5 then Color.YELLOW else Color.RED);
разница лоу:
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);
ласт-лоу:
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 = low;
AssignBackgroundColor(if Diff < close then Color.Black else Color.RED);
База
Plot base = Highest(high, 5) - lowest (low, 5); ( cтавим Agrigation 1 m). (цифра 5 это количество баров взятых в базу,можно ее менять)
База на хай или лоу
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); (Agrigation ставим D)
Формула для опеределения плавности в акции :
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);
1- показывает если последние 11 свечек акции имеют размер менее 10 центов каждая. +подсвечивает если хай/лоу последних 5 свечей больше или равен хаю/лоу за последние 200 свечей.. Ставится на М5, М1, для определения плавности акции, в которой уже была обнаружена сверх-активность..
Сортировка списка по хай/лоу.
Подсветит обновления хай/лоу. Агригейшн дневка.
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 Diff = (if volume > 10000 then round ((((high - low)/(AverageTrueRange(ATRLength = 10) ) 100 ))-100, 2) else 0);
Формула показывает уровни, по типу чашек с ручками и треугольники
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);
Показывает цену возле хая/лоу за последние 50 свечек в пределах 10 центов при условии что текущая цена не выше хай/лоу последних 10 свечек + текущий объем более 30000 и текущий хай/лоу еще не обновил хай/лоу за 50 свечек. + подсвечивает сигналы соответствующим цветом . Агригейшн 1 день -
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);
Показывает разницу объемов в 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);
Показывает разницу движения за 10 свечей и текущей свечки + подсвечивает, когда цена приближается а хай или лоу. агригейшн 1 день
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);
Разница между текущим обьемом и прошлым + подсвечивает всплески обьема с движением.
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);
Расстояние до лоу, за последние 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);
Берет размер текущей свечи и отнимает это значение от размера среднедневного движения. В итоге если текщая свеча получается больше чем средние свечи за последнее время, то можно утверждать, что в текущей свече интерес трейдеров больше чем обычно. Ставим на дневку и можем в реальном времени отслеживать все самые интересные акции за сегодняшний день з нашего списка. Зеленым цветом подсвечивает формацию "внутренний день". Т.е. если у акции был рост и хай/лоу сегодняшнего дня находятся в пределах хай/лоу вчерашнего дня, то оно будет его подсвечивать Зеленым и красным цветами соответственно.
AssignBackgroundColor (if low>low[1] and high<high[1] and high[2]>=highest (high, 20) then color.GREEN else if low>low[1] and high<high[1] and low[2]<=lowest (low, 20) then color.RED else color.BLACK);
Сколько прошла акция от среднего значения
plot Diff = (if volume > 10000 then round ((((high - low)/(AverageTrueRange(ATRLength = 10) ) *100 ))-100, 2) else 0);
Подсвечивает, когда стохастик заходит в зоны перепроданности перекупленности
Plot s = stochasticFull(DPeriod = 3, KPeriod = 8, smoothingType = "EMA"; AssignBackgroundColor (if s >= 80 then color.DARK_RED else if s <=20 then color.DARK_GREEN else color.BLACK); ..... DPeriod, KPeriod,
smoothingType можно менять по своему усмотрению.
разница хаев:
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);
местонахождение ласта к хаю (при приближении к хаю на 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);
хай:
plot Diff = high;
AssignBackgroundColor(if Diff > close then Color.BLACK else Color.GREEN);
спред:
plot Diff = round((Ask - Bid), 2) * 100;
Diff.AssignValueColor(if Diff <= 5 then Color.PINK else Color.BLUE);
Спред 2
plot Diff = round((Ask - Bid), 2) * 100;
Diff.AssignValueColor(if Diff <= 5 then Color.YELLOW else Color.RED);
разница лоу:
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);
ласт-лоу:
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 = low;
AssignBackgroundColor(if Diff < close then Color.Black else Color.RED);
База
Plot base = Highest(high, 5) - lowest (low, 5); ( cтавим Agrigation 1 m). (цифра 5 это количество баров взятых в базу,можно ее менять)
База на хай или лоу
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); (Agrigation ставим D)
Формула для опеределения плавности в акции :
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);
1- показывает если последние 11 свечек акции имеют размер менее 10 центов каждая. +подсвечивает если хай/лоу последних 5 свечей больше или равен хаю/лоу за последние 200 свечей.. Ставится на М5, М1, для определения плавности акции, в которой уже была обнаружена сверх-активность..
Сортировка списка по хай/лоу.
Подсветит обновления хай/лоу. Агригейшн дневка.
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 Diff = (if volume > 10000 then round ((((high - low)/(AverageTrueRange(ATRLength = 10) ) 100 ))-100, 2) else 0);
Формула показывает уровни, по типу чашек с ручками и треугольники
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);
Показывает цену возле хая/лоу за последние 50 свечек в пределах 10 центов при условии что текущая цена не выше хай/лоу последних 10 свечек + текущий объем более 30000 и текущий хай/лоу еще не обновил хай/лоу за 50 свечек. + подсвечивает сигналы соответствующим цветом . Агригейшн 1 день -
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);
Показывает разницу объемов в 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);
Показывает разницу движения за 10 свечей и текущей свечки + подсвечивает, когда цена приближается а хай или лоу. агригейшн 1 день
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);
Разница между текущим обьемом и прошлым + подсвечивает всплески обьема с движением.
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);
Расстояние до лоу, за последние 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);
Берет размер текущей свечи и отнимает это значение от размера среднедневного движения. В итоге если текщая свеча получается больше чем средние свечи за последнее время, то можно утверждать, что в текущей свече интерес трейдеров больше чем обычно. Ставим на дневку и можем в реальном времени отслеживать все самые интересные акции за сегодняшний день з нашего списка. Зеленым цветом подсвечивает формацию "внутренний день". Т.е. если у акции был рост и хай/лоу сегодняшнего дня находятся в пределах хай/лоу вчерашнего дня, то оно будет его подсвечивать Зеленым и красным цветами соответственно.
AssignBackgroundColor (if low>low[1] and high<high[1] and high[2]>=highest (high, 20) then color.GREEN else if low>low[1] and high<high[1] and low[2]<=lowest (low, 20) then color.RED else color.BLACK);
Сколько прошла акция от среднего значения
plot Diff = (if volume > 10000 then round ((((high - low)/(AverageTrueRange(ATRLength = 10) ) *100 ))-100, 2) else 0);
Подсвечивает, когда стохастик заходит в зоны перепроданности перекупленности
Plot s = stochasticFull(DPeriod = 3, KPeriod = 8, smoothingType = "EMA"; AssignBackgroundColor (if s >= 80 then color.DARK_RED else if s <=20 then color.DARK_GREEN else color.BLACK); ..... DPeriod, KPeriod,
smoothingType можно менять по своему усмотрению.