Показывает IQ акции.
Чем больше показатель IQ у акции, тем больше денег она позволяет в себя распихать))!
Кто торгует большие объемы — тому может пригодиться.
Полная библиотека индикаторов, фильтров и и сканеров для Thinkorswim в этом блоге http://bit.ly/2vKq4F8
#Thinkorswim filter for Watchlist #Показывает IQ акции #Thinkorswim https://RadchenkoVY.com/TOS def length = 14; # сколько дней учитывать при расчетах показателей input AvgVolume = {default "1", "0"}; input ATR = {default "1", "0"}; def iATR = Round((Average(high(period = "DAY"), length ) - Average(low(period = "DAY"), length )), 2); def iAvgVolume = Round(Average (volume(period = "DAY")[1], length), 1); plot IQ = round ((iAvgVolume/390*iATR/1000),0);
Скрипт #ThinkOrSwim для #watchlist
Ищет базы на фигурах, т.е ценах, кратных 50 и 100 центам. Настройки такие же, как и в первом фильтре баз. Такие уровни более значимые, поэтому сигналы будут наиболее надежные.
#Base50100.Скрипт ищет базы из N последних свечей, привязанные к уровням 50 и 100 центов.
def iDiff = 0.01; #максимальное отклонение в центах
def iBars = 4; #число баров для просмотра
def iLowest = lowest(low,iBars);
def iHighest = highest(high,iBars);
def bBaseLow = fold Lbar = 0 to iBars with Lsumm=1 do if ((low[Lbar]-iLowest)<=iDiff) then Lsumm*1 else Lsumm*0;
def bBaseHigh = fold Hbar = 0 to iBars with Hsumm=1 do if ((iHighest-high[Hbar])<=iDiff) then Hsumm*1 else Hsumm*0;
def iFigureLow = fold FLbar = 1 to iBars+1 with FLsumm do if (low[FLbar] == (Floor(low[FLbar]*2))/2) then FLsumm+1 else FLsumm;
def iFigureHigh = fold FHbar = 1 to iBars+1 with FHsumm do if (high[FHbar] == (Ceil(high[FHbar]*2))/2) then FHsumm+1 else FHsumm;
plot bBase = if (bBaseLow and iFigureLow) then 1 else if (bBaseHigh and iFigureHigh) then 2 else 100;
AssignBackgroundColor (if (bBase == 1) then Color.LIGHT_GREEN else if (bBase == 2) then Color.LIGHT_RED else Color.black);
bBase.AssignValueColor (if bBase <> 100 then Color.black else Color.CURRENT);
Полная библиотека индикаторов в нашем блоге goo.gl/9JRWUi
Паттерн “Внешний бар”
Показывает на графике стрелочками те бары, которые переписали и хай и лоу предыдущего бара.
Очень помогает находить переломные моменты, особенно если ставить на ТФ D1.
#Thinkorswim studies #Паттерн "Внешний бар" #Показывает на графике стрелочками те бары, которые переписали и хай и лоу предыдущего бара. #Thinkorswim https://radchenkovy.com/thinkorswim-live/ def bSignalDown=open[1]<close[1]and high>high[1] and close<low[1] or open[1]>close[1] and high>high[1] and close<low[1]; def bSignalUp = open[1]>close[1] and low<low[1] and close>high[1] or open[1]<close[1] and low<low[1] and close>high[1]; plot down = if bSignalDown then high else double.NaN; plot up = if bSignalUp then high else double.NaN; up.SetPaintingStrategy(paintingStrategy.BOOLEAN_ARROW_up); down.SetPaintingStrategy(paintingStrategy.BOOLEAN_ARROW_down); up.setDefaultColor(color.LIGHT_green); down.setDefaultColor(color.LIGHT_red);
Полная библиотека индикаторов, фильтров и и сканеров для Thinkorswim в этом блоге bit.ly/2vKq4F8
Скрипт ищет на графике свечную модель «Реверсивный разворот». Собственных настроек не имеет.
#Revers.Показывает паттерн «Реверсивный разворот»
#Cнять галочку Include Extended Session
def bSignalUp = high[1]>high[2] and close[1]>high[2] and open>high[1] and close<close[1];
def bSignalDown = high[1]<high[2] and close[1]<low[2] and open<low[1] and close>close[1];
plot out = if bSignalUp then 1 else if bSignalDown then 2 else 100;
AssignBackgroundColor (if (out == 1) then Color.LIGHT_GREEN else if (out == 2) then Color.LIGHT_RED else Color.black);
out.AssignValueColor (if out <> 100 then Color.black else Color.CURRENT);
Полная библиотека индикаторов в нашем блоге goo.gl/9JRWUi
#Thinkorswim studies #Меняет цвет свечей на белый в указанное время по NY. #В данном примере будет подсвечивать первый час с открытия, а так же обеденное время и последний час торговой сессии. #Thinkorswim https://radchenkovy.com/thinkorswim-live input Start_Time1 = 0930; input End_Time1 = 1030; input Start_Time2 = 1200; input End_Time2 = 1300; input Start_Time3 = 1500; input End_Time3 = 1600; def Open1 = SecondsTillTime(Start_Time1) <= 0; def Close1 = SecondsTillTime(End_Time1) <= 0; def Open2 = SecondsTillTime(Start_Time2) <= 0; def Close2 = SecondsTillTime(End_Time2) <= 0; def Open3 = SecondsTillTime(Start_Time3) <= 0; def Close3 = SecondsTillTime(End_Time3) <= 0; def Off_Time = Open1 and !Close1 or Open2 and !Close2 or Open3 and !Close3; AssignPriceColor( if Off_Time then Color.WHITE else Color.CURRENT);Полная библиотека индикаторов, фильтров и и сканеров для Thinkorswim в этом блоге bit.ly/2vKq4F8
#Spike. Показывает акции, в которых объем последней свечи превысит средний объем
# за N предыдущих свечей на Х процентов.
# и держит взведённым сигнал X свечей
# by theTrader.pro
def iBars = 10; #число предыдущих свечей для подсчета среднего объема
def iHistory = 2; #сколько свечей держать флаг после спайка
def iPrecent = 500; #процент превышения объема
def iVolumeBreak = (volume[0]/Average(volume,iBars)[1]*100);
def b = fold index = 0 to iHistory with a = 0 do max(a,GetValue(iVolumeBreak,index));
def Signal = b > iPrecent and volume>=50000;
plot vol = volume/1000;
AssignBackgroundColor (if (Signal) then Color.Blue else Color.BLACK);
#Spike. Показывает акции, в которых объем последней свечи превысит средний объем
# за N предыдущих свечей на Х процентов.
# и держит взведённым сигнал X свечей
# by theTrader.pro
Сканер акций, которые недавно обновили свои экстремумы. Глубину истории (сколько держать сигнал) можно регулировать.
#Сканер NewHigh / New Low
#Aggregation 1m
#by thetrader.pro
input iHistory = 5; #сколько свечей держать сигнал
input marketOpen = 930;
input marketClose = 1600;
def OpenCounter = SecondsFromTime(marketOpen);
def CloseCounter = SecondsTillTime(marketClose);
def MarketHours = if OpenCounter >= 0 and CloseCounter >= 0 then 1 else 0;
def Today = if GetDay() != GetDay()[1] then 1 else 0;
rec DailyHigh ;
rec DailyLow ;
DailyHigh = if Today then high else if MarketHours then if high > DailyHigh[1] then high else DailyHigh[1] else high;
DailyLow = if Today then low else if MarketHours then if low < DailyLow[1] then low else DailyLow[1] else low;
def Signal1 = DailyHigh > DailyHigh[1] or DailyLow < DailyLow[1];
plot Signal = fold index1 = 0 to iHistory with a1 = No do max(a1,GetValue(Signal1 ,index1));
Полная библиотека индикаторов в нашем блоге goo.gl/9JRWUi
#Thinkorswim scanner # Сканер ищет базы на любых уровнях #Thinkorswim https://radchenkovy.com/thinkorswim-live def iDiff = 0.00; #максимальное отклонение в центах def iBars = 4; #число баров для просмотра def iLowest = lowest(low,iBars); def iHighest = highest(high,iBars); def bBaseLow = fold Lbar = 0 to iBars with Ls=1 do if ((low[Lbar]-iLowest)<=iDiff) then Ls*1 else Ls*0; def bBaseHigh = fold Hbar = 0 to iBars with Hs=1 do if ((iHighest-high[Hbar])<=iDiff) then Hs*1 else Hs*0; plot bBase = bBaseLow or bBaseHigh;Полная библиотека индикаторов, фильтров и и сканеров для Thinkorswim в этом блоге http://bit.ly/2vKq4F8