Xtreme Vortex Bundle Indicator for ThinkorSwim

chewie76

chewie76

Active member
VIP
VIP Enthusiast
This is TOS's standard Vortex Indicator with a new XTREME twist.

What's new? I added a yellow midline. I added upper and lower gray target lines that you can change in the input settings based on your trading style. Default settings are 0.80 for the lower target and 1.15 for the upper target. When the Vortex lines have extended past the target lines, you will see these dots on the midline. There are 4 colored dots. Pink = caution sell, red = sell, light green = caution buy, and green = buy. The "caution" dots can be turned on/off in the input settings. In the upper indictor, instead of dots, they are arrows. The "caution" arrows can be turned on/off in the input settings of the upper chart.

There are also colored candles included with this indicator that can be turned on/off in the input settings. There are 4 colors. Green is strong buying, light green is weak buying, red is strong selling and yellow is weak selling.

NOTE: No indicator is perfect. You will notice when there is MAJOR buying or MAJOR selling, you will see reversal signals, yet the stock will continue going in the direction of the trend. In this case, placing a sell order below the previous candle's low on an uptrend and a buy order above the previous candle's high on a downtrend may be a good entry strategy.

Here is an example of /ES. The first picture includes the caution signals, the second picture removes the caution signals.





Upper Indicator Code:
http://tos.mx/LQi09gj

Lower Indicator Code:
http://tos.mx/kd5erZ0

The next question people ask is, "Can you send a Watchlist Column?" Yes, here you go. Default setting is 15 minutes. To change the time, click on heading and select Edit Formula. The "caution" indicators can also be turned on/off in the input settings.

Watchlist Column:
http://tos.mx/JqMuz0P



The next question people ask is, "Can you send a Scan?" Yes, here you go.

Buy Scan:
http://tos.mx/YMMcu1E



Sell Scan:
http://tos.mx/8n5jQgH



Enjoy!
 
S

stockscouter87

New member
thanks for your hard work......I am having only ONE issue. On the scan part, the buy or sell does not come up. everything else works fine!

NVM.......i figured it out!!!! thanks man!!! awesome work!
 
Last edited by a moderator:
rad14733

rad14733

Well-known member
VIP
@chewie76 I swear our minds work too much in unison because every indicator I am working on you are tinkering with as well... I just started utilizing and tweaking VortexIndicator over the weekend and have been implementing it this week... Crazy...!!!

Nice work...!!! (y)
 
B

Bhai

New member
during SCAN the last column not appearing. i used the scan link shared above.
 
A

APOT7

Member
VIP
@chewie76 What are the blue channel lines on the charts above?
 
M

mdtn

Member
VIP
@chewie76 For CSELL, SELL, CBUY, BUY. Which has more weighted? Thanks!!
 
chewie76

chewie76

Active member
VIP
VIP Enthusiast
@chewie76 For CSELL, SELL, CBUY, BUY. Which has more weighted? Thanks!!
Caution just indicates an extreme buying or selling pressure. The red and green indicate the pressure is ending. The pressure could reverse, or it could continue.
 
P

pkcfc

New member
VIP
Wow I've been through many indicators on this site, and this just might be one of my favorites. Thanks @chewie76 for your contribution to the Thinkscript Community! We couldn't do it without you 😀
 
bamafamily333

bamafamily333

New member
VIP
Very nice @chewie76 !! Im going to have to put this one through its paces..... TY
 
E

ESMINTON

New member
VIP
Imported all three items and I still do not see a buy/sell tab, is there something else I need to do?
 
H

henry1224

Member
VIP
Here is a version Where I added Multi Time Frames

Code:
Declare Lower;
input agg1 = AggregationPeriod.FIVE_MIN;
input agg2 = AggregationPeriod.Thirty_MIN;
input agg3 = AggregationPeriod. Hour;
input length = 14;
input Lower = 0.80;
input Upper = 1.2;
input Caution = yes;
input Price_Color = yes;
Def AC = Close(Period = Agg1);
Def BC = Close(Period = Agg2);
Def CC = Close(Period = Agg3);
Def AH = High(Period = Agg1);
Def BH = High(Period = Agg2);
Def CH = High(Period = Agg3);
Def AL = Low(Period = Agg1);
Def BL = Low(Period = Agg2);
Def CL = Low(Period = Agg3);
def trSumA = sum(TrueRange(AH, AC, AL), length);
plot "AVI+" = if trSumA == 0 then 0 else sum(AbsValue(AH - AL[1]), length) / trSumA;
plot "AVI-" = if trSumA == 0 then 0 else sum(AbsValue(AL - AH[1]), length) / trSumA;
def trSumB = sum(TrueRange(BH, BC, BL), length);
plot "BVI+" = if trSumB == 0 then 0 else sum(AbsValue(BH - BL[1]), length) / trSumB;
plot "BVI-" = if trSumB == 0 then 0 else sum(AbsValue(BL - BH[1]), length) / trSumB;
def trSumC = sum(TrueRange(CH, CC, CL), length);
plot "CVI+" = if trSumC == 0 then 0 else sum(AbsValue(CH - CL[1]), length) / trSumC;
plot "CVI-" = if trSumC == 0 then 0 else sum(AbsValue(CL - CH[1]), length) / trSumC;
"AVI+".SetDefaultColor(Color.GREEN);
"AVI+".SetLineWeight(2);
"AVI-".SetDefaultColor(Color.RED);
"AVI-".SetLineWeight(2);
"BVI+".SetDefaultColor(Color.GREEN);
"BVI+".SetLineWeight(3);
"BVI-".SetDefaultColor(Color.RED);
"BVI-".SetLineWeight(3);
"CVI+".SetDefaultColor(Color.GREEN);
"CVI+".SetLineWeight(4);
"CVI-".SetDefaultColor(Color.RED);
"CVI-".SetLineWeight(4);

plot LOW = LOWER;
LOW.SetDefaultColor(Color.GRAY);
plot HIGH = UPPER;
HIGH.SetDefaultColor(Color.GRAY);
plot MIDDLE = 1;
MIDDLE.SetDefaultColor(Color.YELLOW);

#clouds
AddCloud("AVI-", "AVI+", Color.Dark_RED, Color.CURRENT);
AddCloud("AVI+", "AVI-", Color.Dark_GREEN, Color.CURRENT);
AddCloud("BVI-", "BVI+", Color.Dark_RED, Color.CURRENT);
AddCloud("BVI+", "BVI-", Color.Dark_GREEN, Color.CURRENT);
AddCloud("CVI-", "CVI+", Color.Dark_RED, Color.CURRENT);
AddCloud("CVI+", "CVI-", Color.Dark_GREEN, Color.CURRENT);
#Candle Colors
assignpriceColor(if Price_Color AND "AVI+" > "AVI-" then color.dark_green else color.current);
assignpriceColor(if Price_Color AND "AVI+" < "AVI-" then color.red else color.current);
assignpriceColor(if Price_Color AND "AVI+" > "AVI-" AND "AVI+" < "AVI+"[1] then color.light_green else color.current);
assignpriceColor(if Price_Color AND "AVI+" < "AVI-" AND "AVI-" < "AVI-"[1] then color.yellow else color.current);

def condition1A = "AVI+" <= lower and "AVI-" >= upper and "AVI+" > "AVI+"[1] and "AVI-" < "AVI-"[1];
def condition2A = "AVI-" <= lower and "AVI+" >= upper and "AVI-" > "AVI-"[1] and "AVI+" < "AVI+"[1];
def condition3A = "AVI+" <= lower and "AVI-" >= upper;
def condition4A = "AVI-" <= lower and "AVI+" >= upper;

# Plot DOTS
plot BUYA = if condition1A then condition1A else Double.NaN;
BUYA.SetPaintingStrategy(PaintingStrategy.POINTS);
BUYA.SetDefaultColor(Color.DARK_GREEN);
BUYA.setLineWeight(4);

plot SELLA = if condition2A then condition2A else Double.NaN;
SELLA.SetPaintingStrategy(PaintingStrategy.POINTS);
SELLA.SetDefaultColor(Color.red);
SELLA.setLineWeight(4);

plot CAUTIONBUYA = if caution and condition3A then condition3A else Double.NaN;
CAUTIONBUYA.SetPaintingStrategy(PaintingStrategy.POINTS);
CAUTIONBUYA.SetDefaultColor(Color.LIGHT_GREEN);
CAUTIONBUYA.setLineWeight(4);

plot CAUTIONSELLA = if caution and condition4A then condition4A else Double.NaN;
CAUTIONSELLA.SetPaintingStrategy(PaintingStrategy.POINTS);
CAUTIONSELLA.SetDefaultColor(Color.PINK);
CAUTIONSELLA.setLineWeight(4);
 
E

ESMINTON

New member
VIP
Good Day Henry, where do I upload this script?

Copy and paste the code, click on the beaker button on a chart, it will open a box, click on create, then paste the code and give it a name, click ok

How do you get this to show in the watch list?
 
Last edited by a moderator:
BenTen

BenTen

Administrative
Staff
VIP
@ESMINTON Go over the second half of the video below. It's for a different watchlist column but the process is the same.

 
E

ESMINTON

New member
VIP
For the buy/sell tab inside the watch list, which timeframe is this best used for?
 
Top