Thinkorswim

Сайт продукта: https://www.thinkorswim.com/t/innovation.html
Thinkorswim — американский торговый терминал компании Ameritrade
  1. Опционы через thinkorswim TD Ameritrade
    Кто-нибудь торгует опционы через thinkorswim TD Ameritrade? Интересует стоимость трансакций. У них на странице указано $6.95 + $0.75 fee per contract, но не понятно есть ли ещё какие-то затраты вроде Exchange Fees и т. д. У IB к их $0.7 ещё почти столько же набегает, но они об этом пишут, а эти нет. 
    Заранее благодарен.

    Авто-репост. Читать в блоге >>>
  2. Скрипт #ThinkOrSwim для #watchlist

    Скрипт #ThinkOrSwim для #watchlist

    Сигналит, когда акция проторговалась за сегодня больше чем в среднем за несколько предыдущих дней. Можно настроить число дней для подсчета среднего значения.

    Скрипт #ThinkOrSwim для #watchlist

    #AvgVolume_Limit.Подсвечивает зеленым, если проторгованно больше среднего объема за N дней.
    #Aggregation — Day

    def iDays = 10; #число дней для подсчета среднего объема
    plot out = volume >= Average (volume, iDays);
    AssignBackgroundColor (if out then Color.LIGHT_GREEN else Color.current);

    Полная библиотека индикаторов в нашем блоге goo.gl/9JRWUi




    читать дальше на смартлабе
  3. Скрипт #ThinkOrSwim для #watchlist

    Изменение цены от открытия в %.
    И конечно подсвечивает цветом.

    Скрипт #ThinkOrSwim для #watchlist

    #Colume:ChFO
    #by thetrader.pro
    plot Change = Round((close-open)/open*100,1);
    AssignBackgroundColor(if(Change < 1 and Change > -1)then Color.BLACK else if(Change>0) then Color.DARK_GREEN else Color.DARK_RED);

    Скрипт #ThinkOrSwim для #watchlist


    читать дальше на смартлабе
  4. Скрипт #ThinkOrSwim для #watchlist

    Скрипт #ThinkOrSwim для #watchlist .

    Скрипт #ThinkOrSwim для #watchlist

    Поиск проторговок на любом ценовом уровне. Имеет две настройки: 1.Максимальное отклонение от уровня базы. Показывает качество проторговки и удержания уровня. 2 Число баров для просмотра. Показывает, сколько баров база должна простоять минимально, чтоб нарисовался сигнал.

    #Base.Скрипт ищет базы из N последних свечей, на любых уровнях

    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 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 = if bBaseLow then 1 else if bBaseHigh 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


    читать дальше на смартлабе
  5. Thinkorswim TOS Фильтр для watchlist

    Показывает IQ акции.
    Чем больше показатель IQ у акции, тем больше денег она позволяет в себя распихать))! 
    Кто торгует большие объемы — тому может пригодиться.
    Thinkorswim TOS Фильтр для watchlist

    Полная библиотека индикаторов, фильтров и и сканеров для 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);

    читать дальше на смартлабе
  6. Thinkorswim realtime паттерны на графике

    Паттерн “Внешний бар”
    Показывает на графике стрелочками те бары, которые переписали и хай и лоу предыдущего бара. 
    Очень помогает находить переломные моменты, особенно если ставить на ТФ D1.
    Thinkorswim realtime паттерны на графике

    #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

     


    читать дальше на смартлабе
  7. Thinkorswim. Как изменить цвет графика в определенное время?

    Практически все трейдеры знают в какое время торговой сессии они зарабатывают, а в какое попусту теряют время или даже теряют.
    К примеру у меня это открытие рынка, закрытие и обед. И чтобы не забываться, я на график накладываю индикатор, который визуально мне подсвечивает то время, в которое меня не должно быть у терминала. Очень помогает не забыть о времени. Настраивается очень легко, можно поменять и цвет подсветки, и время которое нужно подсветить.

    Thinkorswim. Как изменить цвет графика в определенное время?

    #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



    читать дальше на смартлабе
  8. Скрипт ThinkOrSwim для watchlist

    Скрипт ThinkOrSwim для watchlist

    Очень полезный индикатор для ThinkORSwim для тестирования стратегий и проверки гипотез.

    При помощи него можно проверить гипотезу, как работает паттерн в акциях с разным значением относительного объема .

    Примеру: К примеру мой паттер в 10:30 и он классно отрабатывает только когда относительный объем больше 30%.

    #Study:VolPlay
    #by thetrader.pro

    declare on_volume;
    declare once_per_bar;

    input length = 65;
    def AvgVolume = Average(Volume (Period = aggregationPeriod.DAY)[1], length);

    def yyyyMmDd = GetYYYYMMDD();
    def Vol = if yyyyMmDd > yyyyMmDd[1] then volume else volume + Vol[1];

    plot VolPlay = Round (Vol/AvgVolume,2);
    VolPlay.SetDefaultColor(color = Color.GRAY);


    Полная библиотека индикаторов в нашем блоге goo.gl/9JRWUi
    читать дальше на смартлабе
  9. Индикатор ThinkOrSwim рисует на графике линии вчерашних Hi, Low, Close, Open и сегодняшнего Open

    Рисует линии вчерашних Hi, Low, Close, Open и сегодняшнего Open на графике
    Очень удобно, наглядно показывает важные уровни вчерашнего дня.
    Индикатор ThinkOrSwim рисует на графике линии вчерашних Hi, Low, Close, Open и сегодняшнего Open

    #Thinkorswim studies 
    #Рисует линии вчерашних Hi, Low, Close, Open и сегодняшнего Open на графике.
    #Thinkorswim  https://radchenkovy.com/thinkorswim-live
    
    input sPeroid = {default DAY, WEEK, MONTH};
    input iHigh = {default "yes", "no"};
    input iLow = {default "yes", "no"};
    input iClose = {default "yes", "no"};
    input iOpen = {default "yes", "no"};
    input iTodayOpen = {default "yes", "no"};
    plot pHigh = if !iHigh then high(period = sPeroid)[1] else Double.NaN;
    plot pLow = if !iLow then low(period = sPeroid)[1] else Double.NaN;
    plot pClose = if !iClose then close(period = sPeroid)[1] else Double.NaN;
    plot pOpen = if !iOpen then open(period = sPeroid)[1] else Double.NaN;
    plot pTodayOpen = if !iTodayOpen then open(period = sPeroid)[0] else Double.NaN;
    
    pHigh.SetDefaultColor (Color.GREEN);
    pHigh.SetPaintingStrategy(PaintingStrategy.DASHES);
    pLow.SetDefaultColor(Color.RED);
    pLow.SetPaintingStrategy(PaintingStrategy.DASHES);
    pClose.SetDefaultColor (Color.GRAY);
    pClose.SetPaintingStrategy(PaintingStrategy.DASHES);
    pOpen.SetDefaultColor (Color.WHITE);
    pOpen.SetPaintingStrategy(PaintingStrategy.DASHES);
    pTodayOpen.SetDefaultColor (Color.WHITE);
    pTodayOpen.SetPaintingStrategy(PaintingStrategy.DASHES);;

    Полная библиотека индикаторов, фильтров и сканеров для Thinkorswim в этом блоге  bit.ly/2vKq4F8


    читать дальше на смартлабе
  10. Скрипт ThinkOrSwim для watchlist

    Скрипт ThinkOrSwim для watchlist

    Ищет ситуации, когда базы на круглых уровнях пробиваются. В этом случае сигнал показывается до тех пор, пока цена не уходит слишком далеко от пробития. Указать нужное расстояние ухода цены можно в дополнительной настройке — Максимальное отклонения для пробития.

    #BaseBreakout.Ищет только что пробитые базы из N последних свечей, на уровнях 50 и 100 центов.
    #Cнять галочку Include Extended Session

    def iDiff = 0.01; # максимальное отклонение для базы в центах
    def iDiff2 = 0.40; # максимальное отклонение для пробития в центах
    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;


    читать дальше на смартлабе
  11. Скрипт ThinkOrSwim для watchlist

    Скрипт ThinkOrSwim для watchlist

    Свечная модель «Двойной внутренний бар» появляется на графике, и фильтр начинает сигналить.

    #Double_Inside_bar.Показывает паттерн «Двойной внутренний бар»
    #Cнять галочку Include Extended Session

    def bSignalDown = high[2]>high[1] and high[1]>high and low[2]<low[1] and low[1]<low;
    def bSignalUp = 0;
    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


    читать дальше на смартлабе
  12. Скрипт ThinkOrSwim для watchlist

    Скрипт ThinkOrSwim для watchlist


    Скрипт #ThinkOrSwim для #watchlist

    Свечная модель «Двойной внутренний бар» появляется на графике, и фильтр начинает сигналить.

    #Double_Inside_bar.Показывает паттерн «Двойной внутренний бар»
    #Cнять галочку Include Extended Session

    def bSignalDown = high[2]>high[1] and high[1]>high and low[2]<low[1] and low[1]<low;
    def bSignalUp = 0;
    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


    читать дальше на смартлабе
  13. Индикатор ThinkOrSwim устанавливающий фоном график любого символа

    Устанавливает фоном график любого символа
    В данном примере поверх открытого графика наложен график SPY серым цветом.
    Индикатор ThinkOrSwim устанавливающий фоном график любого символа

    #Thinkorswim studies 
    #Устанавливает фоном график любого символа
    #В данном примере поверх открытого графика наложен график SPY серым цветом
    #Thinkorswim  https://RadchenkoVY.com /TOS
    
    declare lower;
    input symbol = "spy"; #ввести нужный символ
    plot Line = close (symbol);
    Line.SetDefaultColor (Color.GRAY);

    Полная библиотека индикаторов, фильтрови и сканеров для Thinkorswim в этом блоге  http://bit.ly/2vKq4F8




    читать дальше на смартлабе
  14. Минутка юмора

    Минутка юмора

    Скрипт #ThinkOrSwim для #watchlist

    Поиск формации «Внешний бар» на графике.

    #Inside_Bar.Показывает паттерн «Внутренний бар»
    #Cнять галочку Include Extended Session

    def bSignalDown = open[1]>close[1] and open<close and high<high[1] and low>low[1];
    def bSignalUp = open[1]<close[1] and open>close and high<high[1] and low>low[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


    читать дальше на смартлабе
  15. Скрипт ThinkOrSwim для watchlist

    Скрипт ThinkOrSwim для watchlist



    Показывает две формации, образованные на графике. «Тройное дно» или «Тройная вершина». Сигналы разделены на покупку и продажу.

    #ThreeHighLow. Показывает паттерн «три бара с тройной вершиной\тройным дном»
    #Cнять галочку Include Extended Session

    def bSignalUp = high[2]==high[1] and high[1]==high;
    def bSignalDown = low[2]==low[1] and low[1]==low;
    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


    читать дальше на смартлабе
  16. Скрипт ThinkOrSwim для watchlist

    Скрипт ThinkOrSwim для watchlist

    Интересная свечная модель «Трехбарный разворот», позволяющая получать новые идеи для торговли.

    #ThreeBarReverse.Показывает паттерн «Трехбарный разворот»

    def bSignalDown = open[2]<close[2] and low[1]>low[2] and low[1]<high[2] and high[1]>high[2] and high<high[1] and close[1]<low[1];
    def bSignalUp = open[2]>close[2] and low[1]<low[2] and low[2]<high[1] and low[1]<low[2] and low>low[1] and low<high[1] and close>high[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


    читать дальше на смартлабе
  17. Формулы для ThinkOrSwim (TOS). Фибоначчи на графике

    Показывает на графике уровни Фибоначчи по предыдущему недельному бару
    Формулы для ThinkOrSwim (TOS). Фибоначчи на графике


    Мне очень помогает увидеть важные уровни с прошлой недели часто отрабатывающиеся по фибоначчи. Раньше приходилось вручную выставлять уровни, теперь это автоматически с помощью след формулы:

    #Thinkorswim studies 
    #FIBO по прошлой неделе
    #Показывает на графике уровни Фибоначчи по предыдущему недельному бару
    #Thinkorswim  https://RadchenkoVY.com/TOS
    
    input price = close;
    input showOnlyToday = yes;
    input ShowLabels = no;
    input period = AggregationPeriod.WEEK; # если нужно чтобы показывало Фибоначчи по бару не предыдущей недели, а вчерашнего дня, то измените здесь просто на AggregationPeriod.DAY;
    input displace = 1;
    
    
    def prevHigh = if (showOnlyToday and !IsNaN(close(period = period)[-1])) or isnan(close[1]) then double.nan else high(period = period)[displace];
    def prevLow = if (showOnlyToday and !IsNaN(close(period = period)[-1])) or isnan(close[1]) then double.nan else low(period = period)[displace];
    def shouldplot = yes;
    
    
    plot pivot = if shouldPlot then (prevHigh) else Double.NaN;
    pivot.SetStyle(Curve.FIRM);
    pivot.SetDefaultColor(Color.yelLOW);
    
    
    
    plot h7 = if shouldPlot then pivot + 2 * (prevHigh - prevLow) else Double.NaN;
    h7.SetStyle(Curve.FIRM);
    h7.SetDefaultColor(Color.Green);
    
    plot h8 = if shouldPlot then pivot + 1.764 * (prevHigh - prevLow) else Double.NaN;
    h8.SetStyle(Curve.FIRM);
    h8.SetDefaultColor(Color.gRAY);
    
    plot h9 = if shouldPlot then pivot + 1.618 * (prevHigh - prevLow) else Double.NaN;
    h9.SetStyle(Curve.FIRM);
    h9.SetDefaultColor(Color.gRAY);
    
    plot h10 = if shouldPlot then pivot + 1.5 * (prevHigh - prevLow) else Double.NaN;
    h10.SetStyle(Curve.FIRM);
    h10.SetDefaultColor(Color.gRAY);
    
    plot h11 = if shouldPlot then pivot + 1.382 * (prevHigh - prevLow) else Double.NaN;
    h11.SetStyle(Curve.FIRM);
    h11.SetDefaultColor(Color.gRAY);
    
    plot h12 = if shouldPlot then pivot + 1.214 * (prevHigh - prevLow) else Double.NaN;
    h12.SetStyle(Curve.FIRM);
    h12.SetDefaultColor(Color.gRAY);
    
    
    
    
    plot h1 = if shouldPlot then pivot + 1 * (prevHigh - prevLow) else Double.NaN;
    h1.SetStyle(Curve.FIRM);
    h1.SetDefaultColor(Color.GREEN);
    
    plot h2 = if shouldPlot then pivot + 0.764 * (prevHigh - prevLow) else Double.NaN;
    h2.SetStyle(Curve.FIRM);
    h2.SetDefaultColor(Color.gRAY);
    
    plot h3 = if shouldPlot then pivot + 0.618 * (prevHigh - prevLow) else Double.NaN;
    h3.SetStyle(Curve.FIRM);
    h3.SetDefaultColor(Color.gRAY);
    
    plot h4 = if shouldPlot then pivot + 0.5 * (prevHigh - prevLow) else Double.NaN;
    h4.SetStyle(Curve.FIRM);
    h4.SetDefaultColor(Color.gRAY);
    
    plot h5 = if shouldPlot then pivot + 0.382 * (prevHigh - prevLow) else Double.NaN;
    h5.SetStyle(Curve.FIRM);
    h5.SetDefaultColor(Color.gRAY);
    
    plot h6 = if shouldPlot then pivot + 0.214 * (prevHigh - prevLow) else Double.NaN;
    h6.SetStyle(Curve.FIRM);
    h6.SetDefaultColor(Color.gRAY);
    
    
    
    
    
    plot l1 = if shouldPlot then pivot - 1 * (prevHigh - prevLow) else Double.NaN;
    l1.SetStyle(Curve.FIRM);
    l1.SetDefaultColor(Color.yelLOW);
    
    plot l2 = if shouldPlot then pivot - 0.764 * (prevHigh - prevLow) else Double.NaN;
    l2.SetStyle(Curve.FIRM);
    l2.SetDefaultColor(Color.gRAY);
    
    plot l3 = if shouldPlot then pivot - 0.618 * (prevHigh - prevLow) else Double.NaN;
    l3.SetStyle(Curve.FIRM);
    l3.SetDefaultColor(Color.gRAY);
    
    plot l4 = if shouldPlot then pivot - 0.5 * (prevHigh - prevLow) else Double.NaN;
    l4.SetStyle(Curve.FIRM);
    l4.SetDefaultColor(Color.gRAY);
    
    plot l5 = if shouldPlot then pivot - 0.382 * (prevHigh - prevLow) else Double.NaN;
    l5.SetStyle(Curve.FIRM);
    l5.SetDefaultColor(Color.gRAY);
    
    plot l6 = if shouldPlot then pivot - 0.214 * (prevHigh - prevLow) else Double.NaN;
    l6.SetStyle(Curve.FIRM);
    l6.SetDefaultColor(Color.gRAY);
    
    
    plot l7 = if shouldPlot then pivot - 2 * (prevHigh - prevLow) else Double.NaN;
    l7.SetStyle(Curve.FIRM);
    l7.SetDefaultColor(Color.RED);
    
    plot l8 = if shouldPlot then pivot - 1.764 * (prevHigh - prevLow) else Double.NaN;
    l8.SetStyle(Curve.FIRM);
    l8.SetDefaultColor(Color.gRAY);
    
    plot l9 = if shouldPlot then pivot - 1.618 * (prevHigh - prevLow) else Double.NaN;
    l9.SetStyle(Curve.FIRM);
    l9.SetDefaultColor(Color.gRAY);
    
    plot l10 = if shouldPlot then pivot - 1.5 * (prevHigh - prevLow) else Double.NaN;
    l10.SetStyle(Curve.FIRM);
    l10.SetDefaultColor(Color.gRAY);
    
    plot l11 = if shouldPlot then pivot - 1.382 * (prevHigh - prevLow) else Double.NaN;
    l11.SetStyle(Curve.FIRM);
    l11.SetDefaultColor(Color.gRAY);
    
    plot l12 = if shouldPlot then pivot - 1.214 * (prevHigh - prevLow) else Double.NaN;
    l12.SetStyle(Curve.FIRM);
    l12.SetDefaultColor(Color.gRAY);
    Полная библиотека индикаторов, фильтров и и сканеров для Thinkorswim в этом блоге  http://bit.ly/2vKq4F8
    читать дальше на смартлабе
  18. Скрипт ThinkOrSwim для watchlist

    Скрипт ThinkOrSwim для watchlist

    Ищет базы на круглых уровнях, кратных 10 центам или на вчерашних ценовых экстремумах дня. Имеет 4 сигнала для индикации.

    #Base_Level_PrevHiLow.Ищет базу, на уровнях 10-20-30 или на вчерашних HiLow

    def iDiff = 0.01; #максимальное отклонение в центах
    def iBars = 4; #число баров для просмотра
    def iLowest = lowest(low,iBars);
    def iHighest = highest(high,iBars);
    def iHiPrevDay = high(period = «DAY»)[1];
    def iLowPrevDay = Low(period = «DAY»)[1];
    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 iLevelLow = fold LLbar = 0 to iBars with LLsumm do if (low[LLbar] == roundDown(low[LLbar],1)) then LLsumm+1 else LLsumm;
    def iLevelHigh = fold LHbar = 0 to iBars with LHsumm do if (high[LHbar] == roundUp(High[LHbar],1)) then LHsumm+1 else LHsumm;
    def iDayLow = fold DLbar = 0 to iBars with DLsumm do if (Low[DLbar] == iHiPrevDay) then DLsumm+1 else DLsumm;
    def iDayHigh = fold DHbar = 0 to iBars with DHsumm do if (High[DHbar] == iLowPrevDay) then DHsumm+1 else DHsumm;
    plot bBase = if (bBaseLow and iLevelLow ) then 1 else if (bBaseHigh and iLevelHigh ) then 2 else if (bBaseLow and iDayLow) then 3 else if (bBaseHigh and iDayHigh) then 4 else 100;
    AssignBackgroundColor (if (bBase == 1 or bBase == 3) then Color.LIGHT_GREEN else if (bBase == 2 or bBase == 4) then Color.LIGHT_RED else Color.black);

    Полная библиотека индикаторов в нашем блоге goo.gl/9JRWUi
    читать дальше на смартлабе
  19. Поиск баз (проторговок) в Thinkorswim TOS

    <strong>#Ищет базу на любых уровнях.</strong>
    #Cнять галочку Include Extended Session
    #Thinkorswim  https://RadchenkoVY.com/TOS
    
    
    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 = if bBaseLow then 1 else if bBaseHigh 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);

    Поиск баз (проторговок) в Thinkorswim TOS



    <strong>#Ищет базу на уровнях кратным 50 центам.</strong>
    #Cнять галочку Include Extended Session
    #Thinkorswim  https://RadchenkoVY.com/TOS
    
    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 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);

    читать дальше на смартлабе
  20. Скрипт ThinkOrSwim для watchlist

    Скрипт ThinkOrSwim для watchlist


    Ищет на графике свечную модель «Внешний бар». Без настроек. Просто установите и пользуйтесь.

    #Outside_Bar.Показывает паттерн «Внешний бар»
    #Cнять галочку Include Extended Session

    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 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


    читать дальше на смартлабе
Чтобы купить акции, выберите надежного брокера: