Watchlist Levels Code

  • Home
  • /
  • Watchlist Levels Code

Thinkorswim

# Last Updated at 2023-02-02 09:10:17 EST
# License: Copyright 2020-2022 Edumomo LLC. All rights reserved.  
# Permission is hereby granted to any person obtaining this software and associated documentation (the "Software") through authorized channels to use the software and modified for personal use only.  The software may not be modified for any other purpose. The software may not be copied, shared, or redistributed without written authorization. 
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS, CONTRIBUTORS, OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.            
                   
# HOW TO SETUP https://youtu.be/NmrVME8LBBg
declare hide_on_daily;
declare once_per_bar;
def buffer = 0.001;
def iws;  
input levels_width = 2;
DefineGlobalColor("Label_Color", CreateColor(25, 180, 243));
DefineGlobalColor("Level_Color", CreateColor(25, 180, 243));

        
plot previous_close =  close(period = AggregationPeriod.DAY)[1];
previous_close.SetDefaultColor(GlobalColor("Level_Color"));
previous_close.setLineWeight(levels_width);


def level1;
def condition1;
def level2;
def condition2;
def level3;
def condition3;
def level4;
def condition4;
def level5;
def condition5;
def level6;
def condition6;
def level7;
def condition7;
def level8;
def condition8;
def level9;
def condition9;
def level10;
def condition10;
def level11;
def condition11;
def level12;
def condition12;
def level13;
def condition13;
def level14;
def condition14;
def level15;
def condition15;          
if GetSymbol() equals "AAPL" {  
iws=1;
level1 = 143.30;
level2 = 145;
level3 = 147;
level4 = 148;
level5 = 149.50;
level6 = 151.50;
level7 = 153.50;
level8 = 155;
level9 = 0;
level10 = 0;
level11 = 0;
level12 = 0;
level13 = 0;
level14 = 0;
level15 = 0;
}
else          
if GetSymbol() equals "ALGN" {  
iws=1;
level1 = 260;
level2 = 282;
level3 = 310;
level4 = 312;
level5 = 320;
level6 = 327.50;
level7 = 334;
level8 = 340;
level9 = 358;
level10 = 374;
level11 = 0;
level12 = 0;
level13 = 0;
level14 = 0;
level15 = 0;
}
else          
if GetSymbol() equals "AMZN" {  
iws=1;
level1 = 90;
level2 = 92;
level3 = 93.50;
level4 = 95;
level5 = 97;
level6 = 99.20;
level7 = 100;
level8 = 102;
level9 = 105;
level10 = 0;
level11 = 0;
level12 = 0;
level13 = 0;
level14 = 0;
level15 = 0;
}
else          
if GetSymbol() equals "ENPH" {  
iws=1;
level1 = 185;
level2 = 200;
level3 = 202;
level4 = 225;
level5 = 230;
level6 = 237;
level7 = 245;
level8 = 247;
level9 = 259;
level10 = 263;
level11 = 0;
level12 = 0;
level13 = 0;
level14 = 0;
level15 = 0;
}
else          
if GetSymbol() equals "META" {  
iws=1;
level1 = 160;
level2 = 171.50;
level3 = 178.50;
level4 = 180;
level5 = 182.50;
level6 = 184.50;
level7 = 186;
level8 = 189.60;
level9 = 196.50;
level10 = 200;
level11 = 208;
level12 = 0;
level13 = 0;
level14 = 0;
level15 = 0;
}
else          
if GetSymbol() equals "MSFT" {  
iws=1;
level1 = 242;
level2 = 247;
level3 = 250;
level4 = 251.50;
level5 = 254;
level6 = 256.50;
level7 = 261;
level8 = 0;
level9 = 0;
level10 = 0;
level11 = 0;
level12 = 0;
level13 = 0;
level14 = 0;
level15 = 0;
}
else          
if GetSymbol() equals "NFLX" {  
iws=1;
level1 = 332;
level2 = 336.60;
level3 = 340;
level4 = 344;
level5 = 346.60;
level6 = 351.50;
level7 = 357;
level8 = 360.80;
level9 = 362.30;
level10 = 366.50;
level11 = 369;
level12 = 375;
level13 = 390;
level14 = 0;
level15 = 0;
}
else          
if GetSymbol() equals "NVDA" {  
iws=1;
level1 = 175;
level2 = 182;
level3 = 188;
level4 = 193;
level5 = 196;
level6 = 201;
level7 = 203.60;
level8 = 206;
level9 = 208.50;
level10 = 211.50;
level11 = 216;
level12 = 221;
level13 = 0;
level14 = 0;
level15 = 0;
}
else          
if GetSymbol() equals "QQQ" {  
iws=1;
level1 = 290;
level2 = 292;
level3 = 294.30;
level4 = 296.30;
level5 = 298;
level6 = 301;
level7 = 308.20;
level8 = 311;
level9 = 312.80;
level10 = 320;
level11 = 0;
level12 = 0;
level13 = 0;
level14 = 0;
level15 = 0;
}
else          
if GetSymbol() equals "RACE" {  
iws=1;
level1 = 240;
level2 = 245;
level3 = 249.50;
level4 = 253.30;
level5 = 257.50;
level6 = 261;
level7 = 269;
level8 = 271;
level9 = 275;
level10 = 285;
level11 = 0;
level12 = 0;
level13 = 0;
level14 = 0;
level15 = 0;
}
else          
if GetSymbol() equals "SPY" {  
iws=1;
level1 = 396;
level2 = 398.60;
level3 = 400.35;
level4 = 401.80;
level5 = 403.50;
level6 = 406.50;
level7 = 408;
level8 = 408.50;
level9 = 410.80;
level10 = 414;
level11 = 416.40;
level12 = 420.50;
level13 = 422;
level14 = 425;
level15 = 432;
}
else          
if GetSymbol() equals "TSLA" {  
iws=1;
level1 = 165;
level2 = 174.50;
level3 = 178.50;
level4 = 180;
level5 = 186.50;
level6 = 190;
level7 = 195;
level8 = 200;
level9 = 209.50;
level10 = 220;
level11 = 0;
level12 = 0;
level13 = 0;
level14 = 0;
level15 = 0;
}
else {
 iws=0;
level1=0;
level2=0;
level3=0;
level4=0;
level5=0;
level6=0;
level7=0;
level8=0;
level9=0;
level10=0;
level11=0;
level12=0;
level13=0;
level14=0;
level15=0;
}
plot pLevel1 = level1;
if pLevel1>0 {    
    condition1 = Crosses(close, (pLevel1+(buffer*pLevel1)),CrossingDirection.ANY) OR Crosses(close, (pLevel1-(buffer*pLevel1)),CrossingDirection.ANY);
} else {
    condition1 =0;
}
pLevel1.SetStyle(Curve.SHORT_DASH);
pLevel1.SetDefaultColor(GlobalColor("Level_Color"));
pLevel1.setHiding(level1 equals 0 or getAggregationPeriod()>AggregationPeriod.WEEK);
pLevel1.SetLineWeight(levels_width);
plot pLevel2 = level2;
if pLevel2>0 {    
    condition2 = Crosses(close, (pLevel2+(buffer*pLevel2)),CrossingDirection.ANY) OR Crosses(close, (pLevel2-(buffer*pLevel2)),CrossingDirection.ANY);
} else {
    condition2 =0;
}
pLevel2.SetStyle(Curve.SHORT_DASH);
pLevel2.SetDefaultColor(GlobalColor("Level_Color"));
pLevel2.setHiding(level2 equals 0 or getAggregationPeriod()>AggregationPeriod.WEEK);
pLevel2.SetLineWeight(levels_width);
plot pLevel3 = level3;
if pLevel3>0 {    
    condition3 = Crosses(close, (pLevel3+(buffer*pLevel3)),CrossingDirection.ANY) OR Crosses(close, (pLevel3-(buffer*pLevel3)),CrossingDirection.ANY);
} else {
    condition3 =0;
}
pLevel3.SetStyle(Curve.SHORT_DASH);
pLevel3.SetDefaultColor(GlobalColor("Level_Color"));
pLevel3.setHiding(level3 equals 0 or getAggregationPeriod()>AggregationPeriod.WEEK);
pLevel3.SetLineWeight(levels_width);
plot pLevel4 = level4;
if pLevel4>0 {    
    condition4 = Crosses(close, (pLevel4+(buffer*pLevel4)),CrossingDirection.ANY) OR Crosses(close, (pLevel4-(buffer*pLevel4)),CrossingDirection.ANY);
} else {
    condition4 =0;
}
pLevel4.SetStyle(Curve.SHORT_DASH);
pLevel4.SetDefaultColor(GlobalColor("Level_Color"));
pLevel4.setHiding(level4 equals 0 or getAggregationPeriod()>AggregationPeriod.WEEK);
pLevel4.SetLineWeight(levels_width);
plot pLevel5 = level5;
if pLevel5>0 {    
    condition5 = Crosses(close, (pLevel5+(buffer*pLevel5)),CrossingDirection.ANY) OR Crosses(close, (pLevel5-(buffer*pLevel5)),CrossingDirection.ANY);
} else {
    condition5 =0;
}
pLevel5.SetStyle(Curve.SHORT_DASH);
pLevel5.SetDefaultColor(GlobalColor("Level_Color"));
pLevel5.setHiding(level5 equals 0 or getAggregationPeriod()>AggregationPeriod.WEEK);
pLevel5.SetLineWeight(levels_width);
plot pLevel6 = level6;
if pLevel6>0 {    
    condition6 = Crosses(close, (pLevel6+(buffer*pLevel6)),CrossingDirection.ANY) OR Crosses(close, (pLevel6-(buffer*pLevel6)),CrossingDirection.ANY);
} else {
    condition6 =0;
}
pLevel6.SetStyle(Curve.SHORT_DASH);
pLevel6.SetDefaultColor(GlobalColor("Level_Color"));
pLevel6.setHiding(level6 equals 0 or getAggregationPeriod()>AggregationPeriod.WEEK);
pLevel6.SetLineWeight(levels_width);
plot pLevel7 = level7;
if pLevel7>0 {    
    condition7 = Crosses(close, (pLevel7+(buffer*pLevel7)),CrossingDirection.ANY) OR Crosses(close, (pLevel7-(buffer*pLevel7)),CrossingDirection.ANY);
} else {
    condition7 =0;
}
pLevel7.SetStyle(Curve.SHORT_DASH);
pLevel7.SetDefaultColor(GlobalColor("Level_Color"));
pLevel7.setHiding(level7 equals 0 or getAggregationPeriod()>AggregationPeriod.WEEK);
pLevel7.SetLineWeight(levels_width);
plot pLevel8 = level8;
if pLevel8>0 {    
    condition8 = Crosses(close, (pLevel8+(buffer*pLevel8)),CrossingDirection.ANY) OR Crosses(close, (pLevel8-(buffer*pLevel8)),CrossingDirection.ANY);
} else {
    condition8 =0;
}
pLevel8.SetStyle(Curve.SHORT_DASH);
pLevel8.SetDefaultColor(GlobalColor("Level_Color"));
pLevel8.setHiding(level8 equals 0 or getAggregationPeriod()>AggregationPeriod.WEEK);
pLevel8.SetLineWeight(levels_width);
plot pLevel9 = level9;
if pLevel9>0 {    
    condition9 = Crosses(close, (pLevel9+(buffer*pLevel9)),CrossingDirection.ANY) OR Crosses(close, (pLevel9-(buffer*pLevel9)),CrossingDirection.ANY);
} else {
    condition9 =0;
}
pLevel9.SetStyle(Curve.SHORT_DASH);
pLevel9.SetDefaultColor(GlobalColor("Level_Color"));
pLevel9.setHiding(level9 equals 0 or getAggregationPeriod()>AggregationPeriod.WEEK);
pLevel9.SetLineWeight(levels_width);
plot pLevel10 = level10;
if pLevel10>0 {    
    condition10 = Crosses(close, (pLevel10+(buffer*pLevel10)),CrossingDirection.ANY) OR Crosses(close, (pLevel10-(buffer*pLevel10)),CrossingDirection.ANY);
} else {
    condition10 =0;
}
pLevel10.SetStyle(Curve.SHORT_DASH);
pLevel10.SetDefaultColor(GlobalColor("Level_Color"));
pLevel10.setHiding(level10 equals 0 or getAggregationPeriod()>AggregationPeriod.WEEK);
pLevel10.SetLineWeight(levels_width);
plot pLevel11 = level11;
if pLevel11>0 {    
    condition11 = Crosses(close, (pLevel11+(buffer*pLevel11)),CrossingDirection.ANY) OR Crosses(close, (pLevel11-(buffer*pLevel11)),CrossingDirection.ANY);
} else {
    condition11 =0;
}
pLevel11.SetStyle(Curve.SHORT_DASH);
pLevel11.SetDefaultColor(GlobalColor("Level_Color"));
pLevel11.setHiding(level11 equals 0 or getAggregationPeriod()>AggregationPeriod.WEEK);
pLevel11.SetLineWeight(levels_width);
plot pLevel12 = level12;
if pLevel12>0 {    
    condition12 = Crosses(close, (pLevel12+(buffer*pLevel12)),CrossingDirection.ANY) OR Crosses(close, (pLevel12-(buffer*pLevel12)),CrossingDirection.ANY);
} else {
    condition12 =0;
}
pLevel12.SetStyle(Curve.SHORT_DASH);
pLevel12.SetDefaultColor(GlobalColor("Level_Color"));
pLevel12.setHiding(level12 equals 0 or getAggregationPeriod()>AggregationPeriod.WEEK);
pLevel12.SetLineWeight(levels_width);
plot pLevel13 = level13;
if pLevel13>0 {    
    condition13 = Crosses(close, (pLevel13+(buffer*pLevel13)),CrossingDirection.ANY) OR Crosses(close, (pLevel13-(buffer*pLevel13)),CrossingDirection.ANY);
} else {
    condition13 =0;
}
pLevel13.SetStyle(Curve.SHORT_DASH);
pLevel13.SetDefaultColor(GlobalColor("Level_Color"));
pLevel13.setHiding(level13 equals 0 or getAggregationPeriod()>AggregationPeriod.WEEK);
pLevel13.SetLineWeight(levels_width);
plot pLevel14 = level14;
if pLevel14>0 {    
    condition14 = Crosses(close, (pLevel14+(buffer*pLevel14)),CrossingDirection.ANY) OR Crosses(close, (pLevel14-(buffer*pLevel14)),CrossingDirection.ANY);
} else {
    condition14 =0;
}
pLevel14.SetStyle(Curve.SHORT_DASH);
pLevel14.SetDefaultColor(GlobalColor("Level_Color"));
pLevel14.setHiding(level14 equals 0 or getAggregationPeriod()>AggregationPeriod.WEEK);
pLevel14.SetLineWeight(levels_width);
plot pLevel15 = level15;
if pLevel15>0 {    
    condition15 = Crosses(close, (pLevel15+(buffer*pLevel15)),CrossingDirection.ANY) OR Crosses(close, (pLevel15-(buffer*pLevel15)),CrossingDirection.ANY);
} else {
    condition15 =0;
}
pLevel15.SetStyle(Curve.SHORT_DASH);
pLevel15.SetDefaultColor(GlobalColor("Level_Color"));
pLevel15.setHiding(level15 equals 0 or getAggregationPeriod()>AggregationPeriod.WEEK);
pLevel15.SetLineWeight(levels_width);

plot watchlistSymbol = iws;
watchlistSymbol.setHiding(1);       
plot  breakout = if condition1 or condition2 or condition3 or condition4 or condition5 or condition6 or condition7 or condition8 or condition9 or condition10 or condition11 or condition12 or condition13 or condition14 or condition15  then  1 else 0; 
breakout.setHiding(1);
AddLabel(GetSymbol() equals "AAPL"," watch for trend", GlobalColor("Label_Color"));
AddLabel(GetSymbol() equals "ALGN"," global uncertainty and no guidance", GlobalColor("Label_Color"));
AddLabel(GetSymbol() equals "AMZN"," watch for trend, 99", GlobalColor("Label_Color"));
AddLabel(GetSymbol() equals "ENPH"," watching for back test 224 to come for 240C into e/r next week", GlobalColor("Label_Color"));
AddLabel(GetSymbol() equals "META"," beast mode", GlobalColor("Label_Color"));
AddLabel(GetSymbol() equals "MSFT"," watch for trend", GlobalColor("Label_Color"));
AddLabel(GetSymbol() equals "NFLX"," watch for trend", GlobalColor("Label_Color"));
AddLabel(GetSymbol() equals "NVDA"," watch for trend", GlobalColor("Label_Color"));
AddLabel(GetSymbol() equals "QQQ"," watch for trend", GlobalColor("Label_Color"));
AddLabel(GetSymbol() equals "RACE"," great e/r near all time highs!?", GlobalColor("Label_Color"));
AddLabel(GetSymbol() equals "SPY"," watch for short entry on large gap and then possible long. watch for trend", GlobalColor("Label_Color"));
AddLabel(GetSymbol() equals "TSLA"," ripping hard thinking 195 by tomorrow doable", GlobalColor("Label_Color"));
Alert(condition1  or condition2  or condition3  or condition4  or condition5  or condition6  or condition7  or condition8  or condition9  or condition10  or condition11  or condition12  or condition13  or condition14  or condition15 ,  GetSymbol() +" Key Level_Crossed!", Alert.ONCE,Sound.Ding);

TradingView

// Last Updated at 2023-02-02 09:10:17 EST
// License Copyright 2020-2022 Edumomo LLC. All rights reserved.  
// Permission is hereby granted to any person obtaining this software and associated documentation (the "Software") through authorized channels to use the software and modified for personal use only.  The software may not be modified for any other purpose. The software may not be copied, shared, or redistributed without written authorization. 
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS, CONTRIBUTORS, OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.            
        
//@version=4
//TO Use: https://youtu.be/Nb2q1ihtcGY
study("Spectre Watchlist Levels", overlay=true, shorttitle="SpectreLVLS")
src = input(close)
// Constants colours that include fully non-transparent option.
gold = color.yellow
green = color.green
blue = color.blue
aqua = color.aqua
red = color.red
fuchsia = color.fuchsia
purple = color.purple
silver = color.silver
gray = color.gray
orange = color.orange
black = color.black
dashed = hline.style_dashed
solid = hline.style_solid
ticker = syminfo.ticker
crossshape = shape.square
// Create series vars marking six SR prices for each pair
plotHLines = input(title="plotHLines", type=input.bool, defval=true)
//timeperiod = input(title="timeframe", type=input.string)
hlineStyle = solid
hlineWidth = 3
hlineColor = blue
    
level1 = 1.23456
level1 := na
            
level2 = 1.23456
level2 := na
            
level3 = 1.23456
level3 := na
            
level4 = 1.23456
level4 := na
            
level5 = 1.23456
level5 := na
            
level6 = 1.23456
level6 := na
            
level7 = 1.23456
level7 := na
            
level8 = 1.23456
level8 := na
            
level9 = 1.23456
level9 := na
            
level10 = 1.23456
level10 := na
            
level11 = 1.23456
level11 := na
            
level12 = 1.23456
level12 := na
            
level13 = 1.23456
level13 := na
            
level14 = 1.23456
level14 := na
            
level15 = 1.23456
level15 := na
            
// if condition is true then the hline plots
// --------------------------------       
        
if ( ticker == "AAPL" and plotHLines and timeframe.isintraday )              
    level1 := 143.30
    level2 := 145
    level3 := 147
    level4 := 148
    level5 := 149.50
    level6 := 151.50
    level7 := 153.50
    level8 := 155
if ( ticker == "ALGN" and plotHLines and timeframe.isintraday )              
    level1 := 260
    level2 := 282
    level3 := 310
    level4 := 312
    level5 := 320
    level6 := 327.50
    level7 := 334
    level8 := 340
    level9 := 358
    level10 := 374
if ( ticker == "AMZN" and plotHLines and timeframe.isintraday )              
    level1 := 90
    level2 := 92
    level3 := 93.50
    level4 := 95
    level5 := 97
    level6 := 99.20
    level7 := 100
    level8 := 102
    level9 := 105
if ( ticker == "ENPH" and plotHLines and timeframe.isintraday )              
    level1 := 185
    level2 := 200
    level3 := 202
    level4 := 225
    level5 := 230
    level6 := 237
    level7 := 245
    level8 := 247
    level9 := 259
    level10 := 263
if ( ticker == "META" and plotHLines and timeframe.isintraday )              
    level1 := 160
    level2 := 171.50
    level3 := 178.50
    level4 := 180
    level5 := 182.50
    level6 := 184.50
    level7 := 186
    level8 := 189.60
    level9 := 196.50
    level10 := 200
    level11 := 208
if ( ticker == "MSFT" and plotHLines and timeframe.isintraday )              
    level1 := 242
    level2 := 247
    level3 := 250
    level4 := 251.50
    level5 := 254
    level6 := 256.50
    level7 := 261
if ( ticker == "NFLX" and plotHLines and timeframe.isintraday )              
    level1 := 332
    level2 := 336.60
    level3 := 340
    level4 := 344
    level5 := 346.60
    level6 := 351.50
    level7 := 357
    level8 := 360.80
    level9 := 362.30
    level10 := 366.50
    level11 := 369
    level12 := 375
    level13 := 390
if ( ticker == "NVDA" and plotHLines and timeframe.isintraday )              
    level1 := 175
    level2 := 182
    level3 := 188
    level4 := 193
    level5 := 196
    level6 := 201
    level7 := 203.60
    level8 := 206
    level9 := 208.50
    level10 := 211.50
    level11 := 216
    level12 := 221
if ( ticker == "QQQ" and plotHLines and timeframe.isintraday )              
    level1 := 290
    level2 := 292
    level3 := 294.30
    level4 := 296.30
    level5 := 298
    level6 := 301
    level7 := 308.20
    level8 := 311
    level9 := 312.80
    level10 := 320
if ( ticker == "RACE" and plotHLines and timeframe.isintraday )              
    level1 := 240
    level2 := 245
    level3 := 249.50
    level4 := 253.30
    level5 := 257.50
    level6 := 261
    level7 := 269
    level8 := 271
    level9 := 275
    level10 := 285
if ( ticker == "SPY" and plotHLines and timeframe.isintraday )              
    level1 := 396
    level2 := 398.60
    level3 := 400.35
    level4 := 401.80
    level5 := 403.50
    level6 := 406.50
    level7 := 408
    level8 := 408.50
    level9 := 410.80
    level10 := 414
    level11 := 416.40
    level12 := 420.50
    level13 := 422
    level14 := 425
    level15 := 432
if ( ticker == "TSLA" and plotHLines and timeframe.isintraday )              
    level1 := 165
    level2 := 174.50
    level3 := 178.50
    level4 := 180
    level5 := 186.50
    level6 := 190
    level7 := 195
    level8 := 200
    level9 := 209.50
    level10 := 220
isUp = close >= open
        
plot(level1, 'level1',hlineColor,hlineWidth,hlineStyle,offset=0)
plotshape(cross(open,level1), color=isUp ? color.lime : color.red, text="", textcolor=isUp ? color.black : color.white, style=crossshape, location=location.abovebar)
plot(level2, 'level2',hlineColor,hlineWidth,hlineStyle,offset=0)
plotshape(cross(open,level2), color=isUp ? color.lime : color.red, text="", textcolor=isUp ? color.black : color.white, style=crossshape, location=location.abovebar)
plot(level3, 'level3',hlineColor,hlineWidth,hlineStyle,offset=0)
plotshape(cross(open,level3), color=isUp ? color.lime : color.red, text="", textcolor=isUp ? color.black : color.white, style=crossshape, location=location.abovebar)
plot(level4, 'level4',hlineColor,hlineWidth,hlineStyle,offset=0)
plotshape(cross(open,level4), color=isUp ? color.lime : color.red, text="", textcolor=isUp ? color.black : color.white, style=crossshape, location=location.abovebar)
plot(level5, 'level5',hlineColor,hlineWidth,hlineStyle,offset=0)
plotshape(cross(open,level5), color=isUp ? color.lime : color.red, text="", textcolor=isUp ? color.black : color.white, style=crossshape, location=location.abovebar)
plot(level6, 'level6',hlineColor,hlineWidth,hlineStyle,offset=0)
plotshape(cross(open,level6), color=isUp ? color.lime : color.red, text="", textcolor=isUp ? color.black : color.white, style=crossshape, location=location.abovebar)
plot(level7, 'level7',hlineColor,hlineWidth,hlineStyle,offset=0)
plotshape(cross(open,level7), color=isUp ? color.lime : color.red, text="", textcolor=isUp ? color.black : color.white, style=crossshape, location=location.abovebar)
plot(level8, 'level8',hlineColor,hlineWidth,hlineStyle,offset=0)
plotshape(cross(open,level8), color=isUp ? color.lime : color.red, text="", textcolor=isUp ? color.black : color.white, style=crossshape, location=location.abovebar)
plot(level9, 'level9',hlineColor,hlineWidth,hlineStyle,offset=0)
plotshape(cross(open,level9), color=isUp ? color.lime : color.red, text="", textcolor=isUp ? color.black : color.white, style=crossshape, location=location.abovebar)
plot(level10, 'level10',hlineColor,hlineWidth,hlineStyle,offset=0)
plotshape(cross(open,level10), color=isUp ? color.lime : color.red, text="", textcolor=isUp ? color.black : color.white, style=crossshape, location=location.abovebar)
plot(level11, 'level11',hlineColor,hlineWidth,hlineStyle,offset=0)
plotshape(cross(open,level11), color=isUp ? color.lime : color.red, text="", textcolor=isUp ? color.black : color.white, style=crossshape, location=location.abovebar)
plot(level12, 'level12',hlineColor,hlineWidth,hlineStyle,offset=0)
plotshape(cross(open,level12), color=isUp ? color.lime : color.red, text="", textcolor=isUp ? color.black : color.white, style=crossshape, location=location.abovebar)
plot(level13, 'level13',hlineColor,hlineWidth,hlineStyle,offset=0)
plotshape(cross(open,level13), color=isUp ? color.lime : color.red, text="", textcolor=isUp ? color.black : color.white, style=crossshape, location=location.abovebar)
plot(level14, 'level14',hlineColor,hlineWidth,hlineStyle,offset=0)
plotshape(cross(open,level14), color=isUp ? color.lime : color.red, text="", textcolor=isUp ? color.black : color.white, style=crossshape, location=location.abovebar)
plot(level15, 'level15',hlineColor,hlineWidth,hlineStyle,offset=0)
plotshape(cross(open,level15), color=isUp ? color.lime : color.red, text="", textcolor=isUp ? color.black : color.white, style=crossshape, location=location.abovebar)

Watchlist tickers

 AAPL ALGN AMZN ENPH META MSFT NFLX NVDA QQQ RACE SPY TSLA
Easy Video Reviews

{{startingCount}}
{{time(finishingCount)}}
{{trans(`You have no camera installed on your device or the device is currently being used by other application`)}}
{{trans(`Please try visiting this page with a valid SSL certificate`)}}
{{trans(`You can record up to %s minutes, don't worry you will review your video before sending`, time(preference.max_video_length))}}
{{trans('Seconds')}}
{{trans(`You can record up to %s minutes, don't worry you will review your video before sending`, time(preference.limits))}}
{{trans('Uploading video...')}}
{{send.message}}

{{trans('Upload video')}}

{{trans('Drag your files here or click in this area')}}
{{uploader.file}} {{uploader.size}} x
>