Best Day Trading Strategy / Indicators For ThinkorSwim

Zedd

New member
Can someone share me with a day trading strategy that has worked for them. I have tried many strategies and used many indicators but ended up losing trades or the strategy didn't work good enough backtesting.
 
RSI divergence, TTM Squeezeclouds, Fib retracements, TMO, 1min 200EMA & VWAP. Those are a good starting point.

1 or 2 min chart for scalping and 5min for trend trading.
 

Join useThinkScript to post your question to a community of 21,000+ developers and traders.

@cabe1332 Love your charts.. squeezepro is that the default TTMsqueeze that is available in TOS? if not can u point me to where i can get that? actually how do i get all your indicators :)

@rad14733, @zeek, @Tripod-2020, @greenalert20. Does this strategy also work for long.. I figured I might stick to long trading (i.e.) holding stock for 2-3 days etc., as opposed to getting in/out several times a day.. so are there any techniques/tips/tricks that we can use for going long?

The examples for studies i gave will of course work both for long and short. If you're a long trader, the 200EMA on 1min will work well as support as can be seen on this TSLA chart below but also as resistance if you're looking for the short. The reason is it's a institutional EMA so big hands will be buying at those levels. I suggest you study price action with some known indicators on your charts and see how price reacts at certain levels whether it's EMAs, VWAP or something else. Once you see repetitive patterns emerging at the levels, all you need to do is wait for price to come there.

If your trading horizon is 2-3 days, i would look at either a 5min or 10min chart and also a 1 hour to see the longer term trend.
if you want to scalp intraday, i suggest using a lower timeframe like 1min or 2min with a 89EMA to catch bottoms.

Good luck!

 
@cabe1332 Love your charts.. squeezepro is that the default TTMsqueeze that is available in TOS? if not can u point me to where i can get that? actually how do i get all your indicators :)

@rad14733, @zeek, @Tripod-2020, @greenalert20. Does this strategy also work for long.. I figured I might stick to long trading (i.e.) holding stock for 2-3 days etc., as opposed to getting in/out several times a day.. so are there any techniques/tips/tricks that we can use for going long?
Hi @sunnybabu, I hope your trading has been profitable. All the indicators are available and you will find them here @usethinkscript.com. Just takes a little work for you to search and understand.

I like to keep things simple and easy systematically. Someone mentioned in the list "better entry" or "how can I avoid bad entry". Well, I wrote a script below I can share that may help all or at least the early traders. Yes, I do have a lot of indicators on my chart, but my consolidated decision (or AI) does a good job telling me to avoid entry or when certain situations to get out of the position. The label maybe will save you chart space and $$$ on all timeframes whether short or long trades. I have attached some screenshots of how it looks. I hope this helps you. Just let me know what you think and feedback or just thank you is appreciated. Good luck! @cabe1332

Code:
#PosEntry & Warning Label
# by cabe@1332

# Start of code

######### EMA21 - price below 21 ma
def dprice = close;
def dlength = 21;
def ddisplace = 0;
def EMA21 = MovingAverage(AverageType.eXPONENTIAL, dprice, dlength)[-ddisplace];
def v = if EMA21 > EMA21[1] then 1 else 0;

######### EMA50 - price below 50 ma
def eprice = close;
def elength = 50;
def edisplace = 0;
def EMA50 = MovingAverage(AverageType.eXPONENTIAL, eprice, elength)[-edisplace];
def x = if EMA50 > EMA50[1] then 1 else 0;

######### EMA200 - price below 200 ma - losing stock don't buy
def fprice = close;
def flength = 200;
def fdisplace = 0;
def EMA200 = MovingAverage(AverageType.eXPONENTIAL, fprice, flength)[-fdisplace];
def t = if EMA200 > EMA200[1] then 1 else 0;

############ HMA
def hprice = close;
def hlength = 20;
def displace = 0;
def HMA = MovingAverage(AverageType.HULL, hprice, hlength)[-displace];
def y = if HMA > HMA[1] then 1 else 0;

############ EMAs Stacked - a must for a good setup and entry
def stackedUp = MovAvgExponential("length" = 8)."AvgExp" is greater than MovAvgExponential("length" = 21)."AvgExp"
and MovAvgExponential("length" = 21)."AvgExp" is greater than MovAvgExponential("length" = 34)."AvgExp"
and MovAvgExponential("length" = 34)."AvgExp" is greater than MovAvgExponential("length" = 55)."AvgExp"
and MovAvgExponential("length" = 55)."AvgExp" is greater than MovAvgExponential("length" = 89)."AvgExp";
def e = if stackedUp then 1 else 0;

####### TTM_Squeeze - momo must be light blue
def H = reference TTM_Squeeze().Histogram;
def tt = if H > 0 and H > H[1] then 1 else 0;

#VWAPvalue
def vwapValue = reference VWAP();
def vw = if close > vwapValue then 1 else 0;

############ RSI
def rsilength = 5;
def rsi = reference RSI(length = rsilength)."RSI";
def rsioversold = if rsi < 20 then 1 else 0;
def rsioverbought = if rsi > 80 then 1 else 0;
def r = if rsioversold or rsioverbought then 1 else 0;

############ Label
def z = if tt== 1 and x == 1 and y == 1 and e and 1 and r == 0 and t == 1 and vw == 1 then 1 else 0;

addlabel(yes, if z == 1 then "You're good. Good Luck!" else " Watch it!  " + (if e == 0 then "-EMAs not stacked " else "")  + (if v == 0 then "-Price below EMA21 " else "") + (if t == 0 then "-Price below EMA200 " else "") + (if vw == 0 then "-Price below VWAP " else "")+ (if x == 0 then "-Declining EMA50 " else "") + (if y == 0 then "-Declining HMA " else "") + (if tt == 0 then "-Declining MoMo " else "") + (if rsioversold == 1 then "-Oversold " else "") + (if rsioverbought == 1 then "-Overbought " else ""), if z == 1 then color.green else color.orange);

#End of code
 
Last edited by a moderator:
Hi @sunnybabu, I hope your trading has been profitable. All the indicators are available and you will find them here @usethinkscript.com. Just takes a little work for you to search and understand.

I like to keep things simple and easy systematically. Someone mentioned in the list "better entry" or "how can I avoid bad entry". Well, I wrote a script below I can share that may help all or at least the early traders. Yes, I do have a lot of indicators on my chart, but my consolidated decision (or AI) does a good job telling me to avoid entry or when certain situations to get out of the position. The label maybe will save you chart space and $$$ on all timeframes whether short or long trades. I have attached some screenshots of how it looks. I hope this helps you. Just let me know what you think and feedback or just thank you is appreciated. Good luck! @cabe1332

Code:
#PosEntry & Warning Label
# by cabe@1332

# Start of code

######### EMA21 - price below 21 ma
def dprice = close;
def dlength = 21;
def ddisplace = 0;
def EMA21 = MovingAverage(AverageType.eXPONENTIAL, dprice, dlength)[-ddisplace];
def v = if EMA21 > EMA21[1] then 1 else 0;

######### EMA50 - price below 50 ma
def eprice = close;
def elength = 50;
def edisplace = 0;
def EMA50 = MovingAverage(AverageType.eXPONENTIAL, eprice, elength)[-edisplace];
def x = if EMA50 > EMA50[1] then 1 else 0;

######### EMA200 - price below 200 ma - losing stock don't buy
def fprice = close;
def flength = 200;
def fdisplace = 0;
def EMA200 = MovingAverage(AverageType.eXPONENTIAL, fprice, flength)[-fdisplace];
def t = if EMA200 > EMA200[1] then 1 else 0;

############ HMA
def hprice = close;
def hlength = 20;
def displace = 0;
def HMA = MovingAverage(AverageType.HULL, hprice, hlength)[-displace];
def y = if HMA > HMA[1] then 1 else 0;

############ EMAs Stacked - a must for a good setup and entry
def stackedUp = MovAvgExponential("length" = 8)."AvgExp" is greater than MovAvgExponential("length" = 21)."AvgExp"
and MovAvgExponential("length" = 21)."AvgExp" is greater than MovAvgExponential("length" = 34)."AvgExp"
and MovAvgExponential("length" = 34)."AvgExp" is greater than MovAvgExponential("length" = 55)."AvgExp"
and MovAvgExponential("length" = 55)."AvgExp" is greater than MovAvgExponential("length" = 89)."AvgExp";
def e = if stackedUp then 1 else 0;

####### TTM_Squeeze - momo must be light blue
def H = reference TTM_Squeeze().Histogram;
def tt = if H > 0 and H > H[1] then 1 else 0;

#VWAPvalue
def vwapValue = reference VWAP();
def vw = if close > vwapValue then 1 else 0;

############ RSI
def rsilength = 5;
def rsi = reference RSI(length = rsilength)."RSI";
def rsioversold = if rsi < 20 then 1 else 0;
def rsioverbought = if rsi > 80 then 1 else 0;
def r = if rsioversold or rsioverbought then 1 else 0;

############ Label
def z = if tt== 1 and x == 1 and y == 1 and e and 1 and r == 0 and t == 1 and vw == 1 then 1 else 0;

addlabel(yes, if z == 1 then "You're good. Good Luck!" else " Watch it!  " + (if e == 0 then "-EMAs not stacked " else "")  + (if v == 0 then "-Price below EMA21 " else "") + (if t == 0 then "-Price below EMA200 " else "") + (if vw == 0 then "-Price below VWAP " else "")+ (if x == 0 then "-Declining EMA50 " else "") + (if y == 0 then "-Declining HMA " else "") + (if tt == 0 then "-Declining MoMo " else "") + (if rsioversold == 1 then "-Oversold " else "") + (if rsioverbought == 1 then "-Overbought " else ""), if z == 1 then color.green else color.orange);

#End of code

r6hIMFs.png


hkbzWWD.png


7Z3fwXI.png

Does this repaint? Honestly, this doesn't really seem that simple. It just seems like there is too much going on here, a lot of colors. I am referring specifically to your upper chart.
 
Does this repaint? Honestly, this doesn't really seem that simple. It just seems like there is too much going on here, a lot of colors. I am referring specifically to your upper chart.
Hi @greenalert20, thanks for the reply and feedback. If you're referring to false signals repaint or lagging signals, no I don't have to worry much. The only signal I have encountered on some equity is the "Sell" signal on TrendReversal study lags or delayed, which I have disabled from my chart or commented out the sell label on the TrendReversal script. The "Buy" signal is great on TrendReversal to enter the bottom on reversal or pullback.

Like I have mentioned in my previous post, I like what I see and not trade with emotions. I let go of the mouse or away from the buy button until all the stars are aligned to get the high probability entry, and I have my stoploss and target exit (4:1) label to manage risk. Like what @MerryDay has posted, no single indicator will show a high probability of trading success, a multiple indicator is a must.

I've seen indicators from the great coders here that are fancy and very complex. I have difficulty understanding at times or how it works until I apply and test. NOT ALL indicators or strategies works for you or anyone, you have to find and develop strategies for you to help you succeed in every trade. You've mentioned, "it seems like there is too much going on here, a lot of colors". The colors, stock data, and indicators allow me to avoid bad trades (RED) and wait to buy on GREEN. I trade with "what I see" and not what I think. You have to see when to hold or fold on a position. I am happy that TOS allows us to be creative and the chance of knowing UseThinkScript.com with all the great shared knowledge and help from leaders and collaborators here. The number of shared items and work UseThinkScript.com has provided over the years is priceless.

Again, my trading rules:
1. Trade with "what you See" and not what you Think...
2. Manage your risk with a stop loss or an entry/exit plan...
3. Do 1 and 2, profits will take care of themselves.

In addition:
4. Never chase.
5. Never panic sell.
6. When in doubt, hold until the position retraces.
7. Wait for reversals before buying or selling.

Don't take things personally, just objectively. Good luck! @cabe1332
 
Last edited:
Hi @sunnybabu, I hope your trading has been profitable. All the indicators are available and you will find them here @usethinkscript.com. Just takes a little work for you to search and understand.

I like to keep things simple and easy systematically. Someone mentioned in the list "better entry" or "how can I avoid bad entry". Well, I wrote a script below I can share that may help all or at least the early traders. Yes, I do have a lot of indicators on my chart, but my consolidated decision (or AI) does a good job telling me to avoid entry or when certain situations to get out of the position. The label maybe will save you chart space and $$$ on all timeframes whether short or long trades. I have attached some screenshots of how it looks. I hope this helps you. Just let me know what you think and feedback or just thank you is appreciated. Good luck! @cabe1332

Code:
#PosEntry & Warning Label
# by cabe@1332

# Start of code

######### EMA21 - price below 21 ma
def dprice = close;
def dlength = 21;
def ddisplace = 0;
def EMA21 = MovingAverage(AverageType.eXPONENTIAL, dprice, dlength)[-ddisplace];
def v = if EMA21 > EMA21[1] then 1 else 0;

######### EMA50 - price below 50 ma
def eprice = close;
def elength = 50;
def edisplace = 0;
def EMA50 = MovingAverage(AverageType.eXPONENTIAL, eprice, elength)[-edisplace];
def x = if EMA50 > EMA50[1] then 1 else 0;

######### EMA200 - price below 200 ma - losing stock don't buy
def fprice = close;
def flength = 200;
def fdisplace = 0;
def EMA200 = MovingAverage(AverageType.eXPONENTIAL, fprice, flength)[-fdisplace];
def t = if EMA200 > EMA200[1] then 1 else 0;

############ HMA
def hprice = close;
def hlength = 20;
def displace = 0;
def HMA = MovingAverage(AverageType.HULL, hprice, hlength)[-displace];
def y = if HMA > HMA[1] then 1 else 0;

############ EMAs Stacked - a must for a good setup and entry
def stackedUp = MovAvgExponential("length" = 8)."AvgExp" is greater than MovAvgExponential("length" = 21)."AvgExp"
and MovAvgExponential("length" = 21)."AvgExp" is greater than MovAvgExponential("length" = 34)."AvgExp"
and MovAvgExponential("length" = 34)."AvgExp" is greater than MovAvgExponential("length" = 55)."AvgExp"
and MovAvgExponential("length" = 55)."AvgExp" is greater than MovAvgExponential("length" = 89)."AvgExp";
def e = if stackedUp then 1 else 0;

####### TTM_Squeeze - momo must be light blue
def H = reference TTM_Squeeze().Histogram;
def tt = if H > 0 and H > H[1] then 1 else 0;

#VWAPvalue
def vwapValue = reference VWAP();
def vw = if close > vwapValue then 1 else 0;

############ RSI
def rsilength = 5;
def rsi = reference RSI(length = rsilength)."RSI";
def rsioversold = if rsi < 20 then 1 else 0;
def rsioverbought = if rsi > 80 then 1 else 0;
def r = if rsioversold or rsioverbought then 1 else 0;

############ Label
def z = if tt== 1 and x == 1 and y == 1 and e == 1 and v == 1 and r == 0 and t == 1 and vw == 1 then 1 else 0;

addlabel(yes, if z == 1 then "You're good. Good Luck!" else " Watch it!  " + (if e == 0 then "-EMAs not stacked " else "")  + (if v == 0 then "-Price below EMA21 " else "") + (if t == 0 then "-Price below EMA200 " else "") + (if vw == 0 then "-Price below VWAP " else "")+ (if x == 0 then "-Declining EMA50 " else "") + (if y == 0 then "-Declining HMA " else "") + (if tt == 0 then "-Declining MoMo " else "") + (if rsioversold == 1 then "-Oversold " else "") + (if rsioverbought == 1 then "-Overbought " else ""), if z == 1 then color.green else color.orange);

#End of code

r6hIMFs.png


hkbzWWD.png


7Z3fwXI.png

Let me add that the same script can be used to scan high probability entries, see below. Add your price and volume and the script below as a study filter into your scan at any aggregation and timeframe. Let me know if that helps. Good luck! @cabe1332.

Code:
#Scan for good probability entry
# by cabe@1332

# Start of code

######### EMA21 - price below 21 ma
def dprice = close;
def dlength = 21;
def ddisplace = 0;
def EMA21 = MovingAverage(AverageType.eXPONENTIAL, dprice, dlength)[-ddisplace];
def v = if EMA21 > EMA21[1] then 1 else 0;

######### EMA50 - price below 50 ma
def eprice = close;
def elength = 50;
def edisplace = 0;
def EMA50 = MovingAverage(AverageType.eXPONENTIAL, eprice, elength)[-edisplace];
def x = if EMA50 > EMA50[1] then 1 else 0;

######### EMA200 - price below 200 ma - losing stock don't buy
def fprice = close;
def flength = 200;
def fdisplace = 0;
def EMA200 = MovingAverage(AverageType.eXPONENTIAL, fprice, flength)[-fdisplace];
def t = if EMA200 > EMA200[1] then 1 else 0;

############ HMA
def hprice = close;
def hlength = 20;
def displace = 0;
def HMA = MovingAverage(AverageType.HULL, hprice, hlength)[-displace];
def y = if HMA > HMA[1] then 1 else 0;

############ EMAs Stacked - a must for a good setup and entry
def stackedUp = MovAvgExponential("length" = 8)."AvgExp" is greater than MovAvgExponential("length" = 21)."AvgExp"
and MovAvgExponential("length" = 21)."AvgExp" is greater than MovAvgExponential("length" = 34)."AvgExp"
and MovAvgExponential("length" = 34)."AvgExp" is greater than MovAvgExponential("length" = 55)."AvgExp"
and MovAvgExponential("length" = 55)."AvgExp" is greater than MovAvgExponential("length" = 89)."AvgExp";
def e = if stackedUp then 1 else 0;

####### TTM_Squeeze - momo must be light blue
def H = reference TTM_Squeeze().Histogram;
def tt = if H > 0 and H > H[1] then 1 else 0;

#VWAPvalue
def vwapValue = reference VWAP();
def vw = if close > vwapValue then 1 else 0;

############ RSI
def rsilength = 5;
def rsi = reference RSI(length = rsilength)."RSI";
def rsioversold = if rsi < 20 then 1 else 0;
def rsioverbought = if rsi > 80 then 1 else 0;
def r = if rsioversold or rsioverbought then 1 else 0;

############ plot

plot z = if tt== 1 and x == 1 and y == 1 and e == 1 and v == 1 and r == 0 and t == 1 and vw == 1 then 1 else 0;

#End of code
 
Last edited:
to me best strategie is to trade options on stocks with big ATR value. stocks like SHOP, NETFIX AND AMAZON only trade calls when market is green and puts when market is red. and only trade when volatility is low and going up. you can use the ATR indicator that come with thinkorswing. i make over 1k every time the market is super green or super red.
 
Let me add that the same script can be used to scan high probability entries, see below. Add your price and volume and the script below as a study filter into your scan at any aggregation and timeframe. Let me know if that helps. Good luck! @cabe1332.

Code:
#Scan for good probability entry
# by cabe@1332

# Start of code

######### EMA21 - price below 21 ma
def dprice = close;
def dlength = 21;
def ddisplace = 0;
def EMA21 = MovingAverage(AverageType.eXPONENTIAL, dprice, dlength)[-ddisplace];
def v = if EMA21 > EMA21[1] then 1 else 0;

######### EMA50 - price below 50 ma
def eprice = close;
def elength = 50;
def edisplace = 0;
def EMA50 = MovingAverage(AverageType.eXPONENTIAL, eprice, elength)[-edisplace];
def x = if EMA50 > EMA50[1] then 1 else 0;

######### EMA200 - price below 200 ma - losing stock don't buy
def fprice = close;
def flength = 200;
def fdisplace = 0;
def EMA200 = MovingAverage(AverageType.eXPONENTIAL, fprice, flength)[-fdisplace];
def t = if EMA200 > EMA200[1] then 1 else 0;

############ HMA
def hprice = close;
def hlength = 20;
def displace = 0;
def HMA = MovingAverage(AverageType.HULL, hprice, hlength)[-displace];
def y = if HMA > HMA[1] then 1 else 0;

############ EMAs Stacked - a must for a good setup and entry
def stackedUp = MovAvgExponential("length" = 8)."AvgExp" is greater than MovAvgExponential("length" = 21)."AvgExp"
and MovAvgExponential("length" = 21)."AvgExp" is greater than MovAvgExponential("length" = 34)."AvgExp"
and MovAvgExponential("length" = 34)."AvgExp" is greater than MovAvgExponential("length" = 55)."AvgExp"
and MovAvgExponential("length" = 55)."AvgExp" is greater than MovAvgExponential("length" = 89)."AvgExp";
def e = if stackedUp then 1 else 0;

####### TTM_Squeeze - momo must be light blue
def H = reference TTM_Squeeze().Histogram;
def tt = if H > 0 and H > H[1] then 1 else 0;

#VWAPvalue
def vwapValue = reference VWAP();
def vw = if close > vwapValue then 1 else 0;

############ RSI
def rsilength = 5;
def rsi = reference RSI(length = rsilength)."RSI";
def rsioversold = if rsi < 20 then 1 else 0;
def rsioverbought = if rsi > 80 then 1 else 0;
def r = if rsioversold or rsioverbought then 1 else 0;

############ plot

plot z = if tt== 1 and x == 1 and y == 1 and e and 1 and r == 0 and t == 1 and vw == 1 then 1 else 0;

#End of code
Good one...does it scan for the stocks which will display "You're good. Good Luck!" label on the chart?

because I just scanned with this scan script and found few..but I am getting "Watch it!-Declining MoMo" label when I opened the stock in the chart...
one request - would you mind sharing the clouds one from your chart-red/green. THANKS.
 
Good one...does it scan for the stocks which will display "You're good. Good Luck!" label on the chart?

because I just scanned with this scan script and found few..but I am getting "Watch it!-Declining MoMo" label when I opened the stock in the chart...
one request - would you mind sharing the clouds one from your chart-red/green. THANKS.

Hey @royalrock, glad you like it. Yes, it scanned to the finest tooth and provides you with a good setup entry. When you get "Watch it!-Declining MoMo" this on the label it means the momentum/price action has changed or moving downwards. Per your request, the script for the cloud MA below.

Good luck! @cabe1332

Code:
# Code - Cloud Overlay v3, 3-2020, credit to Paul Townsend
# works on tick and range charts. you can modify the fast and slow length to your liking.

input fastLength = 30;
input slowLength = 90;
input smooth = 4;
input averageType = AverageType.hull;

def price = hl2;

plot fastAvg = MovingAverage(averageType, price, fastLength);
plot slowAvg = MovingAverage(averageType, price, slowLength);
fastAvg.hide();
slowAvg.hide();
fastAvg.setlineWeight(3);
slowAvg.setlineWeight(3);

fastAvg.assignValueColor(color.white);
slowAvg.assignValueColor(color.orange);

addcloud(fastAvg,slowAvg,color.green,color.red);

#end of code
 
Last edited:
Hey @royalrock, glad you like it. Yes, it scanned to the finest tooth and provides you with a good setup entry. When you get "Watch it!-Declining MoMo" this on the label it means the momentum/price action has changed or moving downwards. Per your request, the script for the cloud MA below.

Good luck! @cabe1332

# Code - Cloud Overlay v3, 3-2020, credit to Paul Townsend
# works on tick and range charts. you can modify the fast and slow length to your liking.

input fastLength = 30;
input slowLength = 90;
input smooth = 4;
input averageType = AverageType.hull;

def price = hl2;

plot fastAvg = MovingAverage(averageType, price, fastLength);
plot slowAvg = MovingAverage(averageType, price, slowLength);
fastAvg.hide();
slowAvg.hide();
fastAvg.setlineWeight(3);
slowAvg.setlineWeight(3);

fastAvg.assignValueColor(color.white);
slowAvg.assignValueColor(color.orange);

addcloud(fastAvg,slowAvg,color.downtick,color.uptick);
#addcloud(fastAvg,slowAvg,color.green,color.red);
#addlabel(yes,fastLength + "/" + slowLength,color.white);

#end of code
Thanks a ton

how to use this...

above cloud - Buy, below cloud - sell? THANKS
 
Thanks a ton

how to use this...

above cloud - Buy, below cloud - sell? THANKS
Hey @royalrock, the clouds just indicate trending MA. Good for scalping and helps when to get in and out. Buy on the green, sell on red. I recently updated the code above to reflect a green/red cloud. My input set with fast length = 9, slow length = 21, smooth =4, and average type = HULL. Sample chart below. I hope that helps. Good luck! @cabe1332
 
Last edited by a moderator:
Hey @royalrock, the clouds just indicate trending MA. Good for scalping and helps when to get in and out. Buy on the green, sell on red. I recently updated the code above to reflect a green/red cloud. My input set with fast length = 9, slow length = 21, smooth =4, and average type = HULL. Sample chart below. I hope that helps. Good luck! @cabe1332

zRlNEcF.png
above shared script is doing completely the other way :)
i getting red cloud for uptrend..using with candles..dont see Buy and sell labels.

Thanks
 
above shared script is doing completely the other way :)
i getting red cloud for uptrend..using with candles..dont see Buy and sell labels.

Thanks
I updated the code script above yesterday. You can use below code also.

Code:
# Code - Cloud Overlay v3, 3-2020, credit to Paul Townsend
# works on tick and range charts. you can modify the fast and slow length to your liking.

input fastLength = 30;
input slowLength = 90;
input smooth = 4;
input averageType = AverageType.hull;

def price = hl2;

plot fastAvg = MovingAverage(averageType, price, fastLength);
plot slowAvg = MovingAverage(averageType, price, slowLength);
fastAvg.hide();
slowAvg.hide();
fastAvg.setlineWeight(3);
slowAvg.setlineWeight(3);

fastAvg.assignValueColor(color.white);
slowAvg.assignValueColor(color.orange);

addcloud(fastAvg,slowAvg,color.green,color.red);

#end of code
 
@Jun Wu when you're customizing columns, search for momentum & add it twice, set one to D aggregation & another to whatever minute you like & check the box next to ext. It's built in tos now. You can also search volume & check out related scripts such as volume rate of change, volume accumulation etc. Hope that helps!
 
Last edited:
Hello, new here. i tried searching but came up empty. What are your favorite indicators for day trading? Also favorite scans?

I am currently just trading a few stocks and learn their patterns, and use vwap and just previous days action.

What are others using that is more powerful than just getting lucky?
 
Hi @sunnybabu, I hope your trading has been profitable. All the indicators are available and you will find them here @usethinkscript.com. Just takes a little work for you to search and understand.

I like to keep things simple and easy systematically. Someone mentioned in the list "better entry" or "how can I avoid bad entry". Well, I wrote a script below I can share that may help all or at least the early traders. Yes, I do have a lot of indicators on my chart, but my consolidated decision (or AI) does a good job telling me to avoid entry or when certain situations to get out of the position. The label maybe will save you chart space and $$$ on all timeframes whether short or long trades. I have attached some screenshots of how it looks. I hope this helps you. Just let me know what you think and feedback or just thank you is appreciated. Good luck! @cabe1332

Code:
#PosEntry & Warning Label
# by cabe@1332

# Start of code

######### EMA21 - price below 21 ma
def dprice = close;
def dlength = 21;
def ddisplace = 0;
def EMA21 = MovingAverage(AverageType.eXPONENTIAL, dprice, dlength)[-ddisplace];
def v = if EMA21 > EMA21[1] then 1 else 0;

######### EMA50 - price below 50 ma
def eprice = close;
def elength = 50;
def edisplace = 0;
def EMA50 = MovingAverage(AverageType.eXPONENTIAL, eprice, elength)[-edisplace];
def x = if EMA50 > EMA50[1] then 1 else 0;

######### EMA200 - price below 200 ma - losing stock don't buy
def fprice = close;
def flength = 200;
def fdisplace = 0;
def EMA200 = MovingAverage(AverageType.eXPONENTIAL, fprice, flength)[-fdisplace];
def t = if EMA200 > EMA200[1] then 1 else 0;

############ HMA
def hprice = close;
def hlength = 20;
def displace = 0;
def HMA = MovingAverage(AverageType.HULL, hprice, hlength)[-displace];
def y = if HMA > HMA[1] then 1 else 0;

############ EMAs Stacked - a must for a good setup and entry
def stackedUp = MovAvgExponential("length" = 8)."AvgExp" is greater than MovAvgExponential("length" = 21)."AvgExp"
and MovAvgExponential("length" = 21)."AvgExp" is greater than MovAvgExponential("length" = 34)."AvgExp"
and MovAvgExponential("length" = 34)."AvgExp" is greater than MovAvgExponential("length" = 55)."AvgExp"
and MovAvgExponential("length" = 55)."AvgExp" is greater than MovAvgExponential("length" = 89)."AvgExp";
def e = if stackedUp then 1 else 0;

####### TTM_Squeeze - momo must be light blue
def H = reference TTM_Squeeze().Histogram;
def tt = if H > 0 and H > H[1] then 1 else 0;

#VWAPvalue
def vwapValue = reference VWAP();
def vw = if close > vwapValue then 1 else 0;

############ RSI
def rsilength = 5;
def rsi = reference RSI(length = rsilength)."RSI";
def rsioversold = if rsi < 20 then 1 else 0;
def rsioverbought = if rsi > 80 then 1 else 0;
def r = if rsioversold or rsioverbought then 1 else 0;

############ Label
def z = if tt== 1 and x == 1 and y == 1 and e and 1 and r == 0 and t == 1 and vw == 1 then 1 else 0;

addlabel(yes, if z == 1 then "You're good. Good Luck!" else " Watch it!  " + (if e == 0 then "-EMAs not stacked " else "")  + (if v == 0 then "-Price below EMA21 " else "") + (if t == 0 then "-Price below EMA200 " else "") + (if vw == 0 then "-Price below VWAP " else "")+ (if x == 0 then "-Declining EMA50 " else "") + (if y == 0 then "-Declining HMA " else "") + (if tt == 0 then "-Declining MoMo " else "") + (if rsioversold == 1 then "-Oversold " else "") + (if rsioverbought == 1 then "-Overbought " else ""), if z == 1 then color.green else color.orange);

#End of code

r6hIMFs.png


hkbzWWD.png


7Z3fwXI.png

Thank you for the explanation and label! I was curious if you were willing to share your workspace so we could try more of the labels and indicators? Would love to try them out on SPX options. Thank you so much!
 

Similar threads

Not the exact question you're looking for?

Start a new thread and receive assistance from our community.

87k+ Posts
259 Online
Create Post

Similar threads

Similar threads

The Market Trading Game Changer

Join 2,500+ subscribers inside the useThinkScript VIP Membership Club
  • Exclusive indicators
  • Proven strategies & setups
  • Private Discord community
  • ‘Buy The Dip’ signal alerts
  • Exclusive members-only content
  • Add-ons and resources
  • 1 full year of unlimited support

Frequently Asked Questions

What is useThinkScript?

useThinkScript is the #1 community of stock market investors using indicators and other tools to power their trading strategies. Traders of all skill levels use our forums to learn about scripting and indicators, help each other, and discover new ways to gain an edge in the markets.

How do I get started?

We get it. Our forum can be intimidating, if not overwhelming. With thousands of topics, tens of thousands of posts, our community has created an incredibly deep knowledge base for stock traders. No one can ever exhaust every resource provided on our site.

If you are new, or just looking for guidance, here are some helpful links to get you started.

What are the benefits of VIP Membership?
VIP members get exclusive access to these proven and tested premium indicators: Buy the Dip, Advanced Market Moves 2.0, Take Profit, and Volatility Trading Range. In addition, VIP members get access to over 50 VIP-only custom indicators, add-ons, and strategies, private VIP-only forums, private Discord channel to discuss trades and strategies in real-time, customer support, trade alerts, and much more. Learn all about VIP membership here.
How can I access the premium indicators?
To access the premium indicators, which are plug and play ready, sign up for VIP membership here.
Back
Top