Selection Criteria for Options to Day Trade and favorite timeframes

Vanas08

New member
I've been having issues lately on stock selections. I use Thinkorswim as my charting platform. My preference is to day trade options with weekly expirations and I'm usually Long biased (preference for buying Calls over puts). My usual method for scanning and finding options has been a minimum market cap of $2Billion and the contracts should have an Open Interest of at least 1000. I sort the stock symbols by Mark % and usually look for ones that have a Mark % change of around 3%. I sometimes go lower if I can't find anything and I don't often look at at tickers that have outrageous Mark % gains, for example 20%. This has worked well for me up until about the last 4 weeks. It seems the stocks that I pick, that usually fit my criteria end up becoming all day fades or downright tank.

I've tried 2 minute time frames, but I wasn't really a fan. I have mostly been using my 5 minute candles and am now trying 10 minute candles.
On my charts I have the version of the RAF indicator that was made here on usethinkscript, SVE Pivot points, Wolfe Waves, Cloud Crossovers, and I use Fibonacci drawings as well.
For anyone who has consistency in day trading options, I'd love to hear how you choose what tickers to trade and what your favorite timeframes are. Thank you :)
 
Solution
Fufi007.. good one.. I'm sure you have tested these and working well with your trading style. Thanks for sharing. Is your list dynamic or you keep it updated based on momentum of the day/week/month. What's expiration Options you trade? Front weekend or longer term one to avoid theta/IV Crush?
I update my watchlist when I see a new stock that is worthy of inclusion. For that matter, I have a subscription with Investors Business Daily which among many things, maintain several ratings on every stock in the market and out of those ratings, generate a Composite Rating. So when I see a new stock I can trade and its Composite Rating (SmartSelect called) is equal/above 85 (85 means is beating 85% of the stocks in the market), I look at...
@Vanas08 We all go through trading slumps at times, whether market related or otherwise and I feel your pain... I also trade options, and have exclusively for quite some time... I have had conversations with several members via the Discord channel and have stressed that setting up a short list of symbols that are active in the options market works best... It seems my mantra has become "Let the trades come to you!"...

We could spin out wheels every morning hunting for ideal setups or we can just wait for the symbols we have gotten to know well to present good entries... My current watchlist only contains 22 symbols and some of those are only for gauging the market... Which symbols you choose depends on your trading style and comfort zone... I've become partial to SPY because it always has plenty of open interests and volume... Most days it's possible to take advantage of several $1 moves or greater... Other traders like SPX but I find the price to play to be too high, and the same goes for TSLA...

If I was to give a short list of symbols to watch it would include AAPL, MU, SPY, TWTR... I'm not fond of AMD as it has unpredictable price movement patterns... Beyond the concept of having ample open interests and volume, I find that it helps to insure that the underlying has decent Daily Average Movement, or DAM as my watchlist column is labeled... I also want decent Bar Average Movement, or BAM... Beyond that I'm mainly concerned with Delta... We don't need much else for scalping or day trading options... I pay attention to implied volatility it a very minor extent but can do fine without it...

I short, the more we complicate it, and expend energy on it, the more the act of trading feels like tedious work... It's not a race so why not just wait for good setups to present themselves... A day with no trades is just a day we didn't try to force something to happen that more often than not doesn't work out as expected...

Feel free to look me up on Discord if you'd like to compare notes... Good luck...
 

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

@Vanas08 We all go through trading slumps at times, whether market related or otherwise and I feel your pain... I also trade options, and have exclusively for quite some time... I have had conversations with several members via the Discord channel and have stressed that setting up a short list of symbols that are active in the options market works best... It seems my mantra has become "Let the trades come to you!"...

We could spin out wheels every morning hunting for ideal setups or we can just wait for the symbols we have gotten to know well to present good entries... My current watchlist only contains 22 symbols and some of those are only for gauging the market... Which symbols you choose depends on your trading style and comfort zone... I've become partial to SPY because it always has plenty of open interests and volume... Most days it's possible to take advantage of several $1 moves or greater... Other traders like SPX but I find the price to play to be too high, and the same goes for TSLA...

If I was to give a short list of symbols to watch it would include AAPL, MU, SPY, TWTR... I'm not fond of AMD as it has unpredictable price movement patterns... Beyond the concept of having ample open interests and volume, I find that it helps to insure that the underlying has decent Daily Average Movement, or DAM as my watchlist column is labeled... I also want decent Bar Average Movement, or BAM... Beyond that I'm mainly concerned with Delta... We don't need much else for scalping or day trading options... I pay attention to implied volatility it a very minor extent but can do fine without it...

I short, the more we complicate it, and expend energy on it, the more the act of trading feels like tedious work... It's not a race so why not just wait for good setups to present themselves... A day with no trades is just a day we didn't try to force something to happen that more often than not doesn't work out as expected...

Feel free to look me up on Discord if you'd like to compare notes... Good luck...
Thank you so much for the response! What you said makes sense and my prior "good choices" could very much have to do with how the market is overall at that time. I'll be looking at SPY more as, like you mentioned, SPX is pretty pricey. I mostly keep SPX on my list just to see how the market is moving, but I don't trade it. I'll look more at Delta as well. Delta has always been something I take into account, but it hasn't been at the forefront like other criteria, so I will work on changing that :)
I will be sure to jump on Discord, I don't spend enough time there to compare notes and get feedback. Also, though it may sound silly, thank you for the stocks that you did mention, such as SPY and TWTR. For some reason I always forget to look at trading options on ETFs and just stick with stocks, which could be a potential downfall.
 
I've been having issues lately on stock selections. I use Thinkorswim as my charting platform. My preference is to day trade options with weekly expirations and I'm usually Long biased (preference for buying Calls over puts). My usual method for scanning and finding options has been a minimum market cap of $2Billion and the contracts should have an Open Interest of at least 1000. I sort the stock symbols by Mark % and usually look for ones that have a Mark % change of around 3%. I sometimes go lower if I can't find anything and I don't often look at at tickers that have outrageous Mark % gains, for example 20%. This has worked well for me up until about the last 4 weeks. It seems the stocks that I pick, that usually fit my criteria end up becoming all day fades or downright tank.

I've tried 2 minute time frames, but I wasn't really a fan. I have mostly been using my 5 minute candles and am now trying 10 minute candles.
On my charts I have the version of the RAF indicator that was made here on usethinkscript, SVE Pivot points, Wolfe Waves, Cloud Crossovers, and I use Fibonacci drawings as well.
For anyone who has consistency in day trading options, I'd love to hear how you choose what tickers to trade and what your favorite timeframes are. Thank you :)
Day Trading Options is not an easy task.. you keep battling many things IV Crush, Pinning/Non-Movement(You see this on a daily Basis these Days), if you have perfect Day Trading stock you can end up loosing money.
 
I've tried a number of option / underlying strategies and am currently trading SPY options only. Trading only one stock keeps me from endless searches and scans and I just focus on my strategy for a single trigger event that usually pays off. I find the volume and execution via TOS on SPY options is generally pretty good and spreads are typically 1 to 2 cents. It can be a fast game with the 0 -1 DTEs and I am in and out usually within minutes. OTraderJoe's comments are spot on. I primarily use trend indicators and vwap crosses as my trigger. Good luck!
 
Day Trading Options is not an easy task.. you keep battling many things IV Crush, Pinning/Non-Movement(You see this on a daily Basis these Days), if you have perfect Day Trading stock you can end up loosing money.
You should try this system in test mode before going live. I have a watchlist of optionable stocks with tight bid/ask option spreads. I trade any of them with preference to .60 delta or a little higher, 10 contracts at a time, not to exceed $1,700. I have a 401K account that allows me day trading without restrictions (over 25K). I've develop a sense of where price may hit support or resistance. I pay attention at the candle wick which tells me where the bulls and bears are (buying or selling). I look at volume. I use a 10Min, 5Min and a 1Yr charts. 1Yr to see overall trend. I found an automatic Fibonacci tool that sets the levels for me in all charts I have it. That roughly tells me where support and resistance levels are. I use Pivot Points too for the week in my 10M and 5Min charts. My Watchlist tells me which stocks are moving pre-market since I use the Mark Change value. When I see a moving stock, I check 1YR chart for trend reference only. Today the stock may move or not in the same direction. Then I stare at price action in the first 9 minutes of market opening - in my 5M chart - I determine where price-action-resistance-support levels are hit. I pick my PUT or CALL option based on who is winning (bulls or bears) and the spread divided by delta. So if the spread is .10 cents right now and delta is .65, the price needs to move in my favor .15 cents (.10 / .65) before I can start making $$$$$. If the price moves net .03 cents (i.e. .18 minus .15) in my favor, I make $30. If a price net move is .70 I make $700. I don't trade closer to support and resistance levels. I watch patiently for price to move beyond these and mentally assess the potential for profit between them. I trade breakouts and breakdowns to the next resistance and support levels (whether Fibonacci, Pivot Points or eyeball assessment of where bulls/bears likely to hit). Meantime, jump to another stock in my watchlist. I started trading 1 contract at the time to 'test' my day-trade strategy and now use either limit or market orders to take profit or cut loser short. Trading is a probability game where you can gain or lose money. I use Trader TV to trade news too since these move stocks in the market. My watchlist is made of 20 stocks l like to day trade. I too look at Momentum (Fast Stochastics), ADX to assess the strength of price action, Price Percentage Oscillator (I found a very good indicator that shows when price is going in 'squeeze mode' and consolidating). Hope this helps. Good trading...
 
Last edited:
You should try this system in test mode before going live. I have a watchlist of optionable stocks with tight bid/ask option spreads. I trade any of them with preference to .60 delta or a little higher, 10 contracts at a time, not to exceed $1,700. I have a 401K account that allows me day trading without restrictions (over 25K). I've develop a sense of where price may hit support or resistance. I pay attention at the candle wick which tells me where the bulls and bears are (buying or selling). I look at volume. I use a 10Min, 5Min and a 1Yr charts. 1Yr to see overall trend. I found an automatic Fibonacci tool that sets the levels for me in all charts I have it. That roughly tells me where support and resistance levels are. I use Pivot Points too for the week in my 10M and 5Min charts. My Watchlist tells me which stocks are moving pre-market since I use the Mark Change value. When I see a moving stock, I check 1YR chart for trend reference only. Today the stock may move or not in the same direction. Then I stare at price action in the first 9 minutes of market opening - in my 5M chart - I determine where price-action-resistance-support levels are hit. I pick my PUT or CALL option based on who is winning (bulls or bears) and the spread divided by delta. So if the spread is .10 cents right now and delta is .65, the price needs to move in my favor .15 cents (.10 / .65) before I can start making $$$$$. If the price moves net .03 cents (i.e. .18 minus .15) in my favor, I make $30. If a price net move is .70 I make $700. I don't trade closer to support and resistance levels. I watch patiently for price to move beyond these and mentally assess the potential for profit between them. I trade breakouts and breakdowns to the next resistance and support levels (whether Fibonacci, Pivot Points or eyeball assessment of where bulls/bears likely to hit). Meantime, jump to another stock in my watchlist. I started trading 1 contract at the time to 'test' my day-trade strategy and now use either limit or market orders to take profit or cut loser short. Trading is a probability game where you can gain or lose money. I use Trader TV to trade news too since these move stocks in the market. My watchlist is made of 20 stocks l like to day trade. I too look at Momentum (Fast Stochastics), ADX to assess the strength of price action, Price Percentage Oscillator (I found a very good indicator that shows when price is going in 'squeeze mode' and consolidating). Hope this helps. Good trading...
What are the stocks in your watchlist that you use? Where is this automatic fibonacci tool?
 
What are the stocks in your watchlist that you use? Where is this automatic fibonacci tool?
Here is the code to the AutoFibonacci tool I once found in the web. Keep on mind the tool draws the lines from the lowest price to the highest or from the highest to lowest for the selected period. I colored them because sometimes I can't see the percentages and is easy for me to know them with colors. The critical levels 50 and 68.2 are coded in red. All other Fibonacci percentage lines are automatically added. I added other dash lines to the tool to give me a sense of the ''middle'' between standard percentages, lets say a dash line between 23.6 and 38.2. Copy and paste the code to a new study you can create while adding studies to your chart. The watchlist follows the code and there is another little code after which to find ''how-much-the-option-needs-to-move'' before I can start making $$$$$. Good trading...

Code of AutoFiboIntraday
Ruby:
#hint: <b>Fibonacci Retracements</b>\nFibonacci retracements use horizontal lines to indicate areas of support or resistance at the key Fibonacci levels before it continues in the original direction. These levels are created by drawing a trendline between two extreme points and then dividing the vertical distance by the key Fibonacci ratios of: 23.6%, 38.2%, 50%, 61.8%, 78.6%, and 100%.
#hint Price: Price used in the alerts on crossing retracement lines. <b>(Default is Close)</b>
#hint onExpansion: Determines if the retracement lines are projected past the current bar into the right side expansion <b>(Default is Yes)</b>
#hint Extend_to_left: Determines if the retracement lines are extended to the left side of the chart. <b>(Default is No)</b>
#hint Coefficient0: Retracement Line 0: Retracement from the highest high to the lowest low.\n <b>(Default is 0%)</b>
#hint Coefficient_1: Retracement Line 1: Retracement from the highest high to the lowest low.\n <b>(Default is 23.6%)</b>
#hint Coefficient_2: Retracement Line 2: Retracement from the highest high to the lowest low.\n <b>(Default is 38.2%)</b>
#hint Coefficient_3: Retracement Line 3: Retracement from the highest high to the lowest low.\n <b>(Default is 50%)</b>
#hint Coefficient_4: Retracement Line 4: Retracement from the highest high to the lowest low.\n <b>(Default is 61.8%)</b>
#hint Coefficient_5: Retracement Line 5: Retracement from the highest high to the lowest low.\n <b>(Default is 78.6%)</b>
#hint Coefficient_6: Retracement Line 6: Retracement from the highest high to the lowest low.\n <b>(Default is 100%)</b>
#wizard input: Price
#wizard text: Inputs: Price:
#wizard input: onExpansion
#wizard text: onExpansion:
#wizard input: Extend_to_left
#wizard text: Extend_to_left:
#wizard input: Coefficient0
#wizard text: Coefficient0:
#wizard input: Coefficient_1
#wizard text: Coefficient_1:
#wizard input: Coefficient_2
#wizard text: Coefficient_2:
#wizard input: Coefficient_3
#wizard text: Coefficient_3:
#wizard input: Coefficient_4
#wizard text: Coefficient_4:
#wizard input: Coefficient_5
#wizard text: Coefficient_5:
#wizard input: Coefficient_6
#wizard text: Coefficient_6:

#wizard text: Coefficient0a:
#wizard input: Coefficient0a
#wizard text: Coefficient1a:
#wizard input: Coefficient_1a
#wizard text: Coefficient2a:
#wizard input: Coefficient_2a
#wizard text: Coefficient3a:
#wizard input: Coefficient_3a
#wizard text: Coefficient4a:
#wizard input: Coefficient_4a
#wizard text: Coefficient5a:
#wizard input: Coefficient_5a

input price = close;
input high = high;
input low = low;
input onExpansion = Yes;
input Extend_to_left = no;
input Coefficient0 = 0.000;
input Coefficient0a = .118;
input coefficient_1 = .236;
input Coefficient_1a = 0.309;
input Coefficient_2 = .382;
input Coefficient_2a = 0.441;
input Coefficient_3 = .500;
input Coefficient_3a = 0.559;
input Coefficient_4 = .618;
input Coefficient_4a = 0.702;
Input Coefficient_5 = .786;
input Coefficient_5a = 0.893;
input Coefficient_6 = 1.000;

def a = HighestAll(high);
def b = LowestAll(low);
def barnumber = barNumber();
def c = if high == a then barnumber else double.nan;
def d = if low == b then barnumber else double.nan;
rec highnumber = compoundValue(1, if IsNaN(c) then highnumber[1] else c, c);
def highnumberall = HighestAll(highnumber);
rec lownumber = compoundValue(1, if IsNaN(d) then lownumber[1] else d, d);
def lownumberall = LowestAll(lownumber);

def upward = highnumberall > lownumberall;
def downward = highnumberall < lownumberall;

def x = AbsValue(lownumberall - highnumberall );

def slope = (a - b) / x;
def slopelow = (b - a) / x;

def day = getDay();
def month = getMonth();
def year = getYear();
def lastDay = getLastDay();
def lastmonth = getLastMonth();
def lastyear = getLastYear();
def isToday = if(day == lastDay and month == lastmonth and year == lastyear, 1, 0);
def istodaybarnumber = HighestAll(if isToday then barnumber else double.nan);

def line = b + (slope * (barnumber - lownumber));
def linelow = a + (slopelow * (barnumber - highnumber));

def currentlinelow = if barnumber <= lownumberall then linelow else double.nan;
def currentline = if barnumber <= highnumberall then line else double.nan;

Plot FibFan = if downward then currentlinelow else if upward then currentline else double.nan;
FibFan.SetStyle(Curve.SHORT_DASH);
FibFan.AssignValueColor(color.white);
fibfan.hidebubble();

def range = a - b;

Plot Retracement0 = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient0))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient0)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient0))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient0)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient0))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient0)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient0))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient0)) else double.nan;
Retracement0.assignvaluecolor(Color.DARK_ORANGE);
retracement0.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber +10), retracement0, concat( "$", round(retracement0, 2)), color.white, yes);
AddChartBubble((downward and barnumber == highnumberall), retracement0, concat( (coefficient0 * 100), "%"), color.oRANGE, yes);
AddChartBubble((upward and barnumber == lownumberall), retracement0, concat( (coefficient0 * 100), "%"), color.orANGE, yes);


Plot Retracement1 = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_1))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_1)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_1))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_1)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_1))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_1)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_1))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_1)) else double.nan;
Retracement1.assignvaluecolor(color.GREEN);
retracement1.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber+10), retracement1, concat( "$", round(retracement1, 2)), color.white, yes);
AddChartBubble((downward and barnumber == highnumberall), retracement1, concat( (coefficient_1 * 100), "%"), color.white, yes);
AddChartBubble((upward and barnumber == lownumberall), retracement1, concat( (coefficient_1 * 100), "%"), color.white, yes);


Plot Retracement2 =if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_2))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_2)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_2))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_2)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_2))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_2)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_2))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_2)) else double.nan;
Retracement2.assignvaluecolor(color.YELLOW);
retracement2.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber+10), retracement2, concat( "$", round(retracement2, 2)), color.white, yes);
AddChartBubble((downward and barnumber == highnumberall), retracement2, concat( (coefficient_2 * 100), "%"), color.white, yes);
AddChartBubble((upward and barnumber == lownumberall), retracement2, concat( (coefficient_2 * 100), "%"), color.white, yes);


Plot Retracement3 = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_3))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_3)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_3))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_3)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_3))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_3)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_3))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_3)) else double.nan;
Retracement3.assignvaluecolor(color.red);
retracement3.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber+10), retracement3, concat( "$", round(retracement3, 2)), color.white, yes);
AddChartBubble((upward and barnumber == lownumberall), retracement3, concat( (coefficient_3 * 100), "%"), color.white, yes);
AddChartBubble((downward and barnumber == highnumberall), retracement3, concat( (coefficient_3 * 100), "%"), color.white, yes);

Plot Retracement4 = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_4))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_4)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_4))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_4)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_4))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_4)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_4))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_4)) else double.nan;
Retracement4.assignvaluecolor(color.red);
retracement4.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber+10), retracement4, concat( "$", round(retracement4, 2)), color.white, yes);
AddChartBubble((downward and barnumber == highnumberall), retracement4, concat( (coefficient_4 * 100), "%"), color.white, yes);
AddChartBubble((upward and barnumber == lownumberall), retracement4, concat( (coefficient_4 * 100), "%"), color.white, yes);

Plot Retracement5 = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_5))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_5)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_5))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_5)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_5))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_5)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_5))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_5)) else double.nan;
Retracement5.assignvaluecolor(color.MAGENTA);
retracement5.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber+10), retracement5, concat( "$", round(retracement5, 2)), color.white, yes);
AddChartBubble((downward and barnumber == highnumberall), retracement5, concat( (coefficient_5 * 100), "%"), color.white, yes);
AddChartBubble((upward and barnumber == lownumberall), retracement5, concat( (coefficient_5 * 100), "%"), color.white, yes);


Plot Retracement6 = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_6))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_6)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_6))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_6)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_6))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_6)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_6))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_6)) else double.nan;
Retracement6.assignvaluecolor(color.white);
retracement6.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber+10), retracement6, concat( "$", round(retracement6, 2)), color.white, yes);

AddChartBubble((downward and barnumber == highnumberall), retracement6, concat( (coefficient_6 * 100), "%"), color.white, yes);
AddChartBubble((upward and barnumber == lownumberall), retracement6, concat( (coefficient_6 * 100), "%"), color.white, yes);

Plot Retracement0a = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient0a))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient0a)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient0a))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient0a)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient0a))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient0a)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient0a))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient0a)) else double.nan;
Retracement0a.assignvaluecolor(Color.GRAY);
retracement0a.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber +10), retracement0a, concat( "$", round(retracement0a, 2)), color.white, yes);
#AddChartBubble((downward and barnumber == highnumberall), retracement0a, concat( (coefficient0a * 100), "%"), color.WHITE, yes);
#AddChartBubble((upward and barnumber == lownumberall), retracement0a, concat( (coefficient0a * 100), "%"), color.WHITE, yes);


Plot Retracement1a = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_1a))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_1a)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_1a))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_1a)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_1a))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_1a)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_1a))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_1a)) else double.nan;
Retracement1a.assignvaluecolor(Color.GRAY);
retracement1a.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber +10), retracement1a, concat( "$", round(retracement1a, 2)), color.white, yes);
#AddChartBubble((downward and barnumber == highnumberall), retracement1a, concat( (coefficient_1a * 100), "%"), color.WHITE, yes);
#AddChartBubble((upward and barnumber == lownumberall), retracement1a, concat( (coefficient_1a * 100), "%"), color.WHITE, yes);

Plot Retracement2a = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_2a))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_2a)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_2a))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_2a)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_2a))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_2a)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_2a))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_2a)) else double.nan;
Retracement2a.assignvaluecolor(Color.GRAY);
retracement2a.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber +10), retracement2a, concat( "$", round(retracement2a, 2)), color.white, yes);
# AddChartBubble((downward and barnumber == highnumberall), retracement2a, concat( (coefficient_2a * 100), "%"), color.WHITE, yes);
# AddChartBubble((upward and barnumber == lownumberall), retracement2a, concat( (coefficient_2a * 100), "%"), color.WHITE, yes);

Plot Retracement3a = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_3a))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_3a)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_3a))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_3a)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_3a))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_3a)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_3a))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_3a)) else double.nan;
Retracement3a.assignvaluecolor(Color.GRAY);
retracement3a.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber +10), retracement3a, concat( "$", round(retracement3a, 2)), color.white, yes);
# AddChartBubble((downward and barnumber == highnumberall), retracement3a, concat( (coefficient_3a * 100), "%"), color.WHITE, yes);
# AddChartBubble((upward and barnumber == lownumberall), retracement3a, concat( (coefficient_3a * 100), "%"), color.WHITE, yes);

Plot Retracement4a = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_4a))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_4a)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_4a))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_4a)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_4a))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_4a)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_4a))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_4a)) else double.nan;
Retracement4a.assignvaluecolor(Color.GRAY);
retracement4a.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber +10), retracement4a, concat( "$", round(retracement4a, 2)), color.white, yes);
# AddChartBubble((downward and barnumber == highnumberall), retracement4a, concat( (coefficient_4a * 100), "%"), color.WHITE, yes);
# AddChartBubble((upward and barnumber == lownumberall), retracement4a, concat( (coefficient_4a * 100), "%"), color.WHITE, yes);

Plot Retracement5a = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_5a))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_5a)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_5a))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_5a)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_5a))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_5a)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_5a))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_5a)) else double.nan;
Retracement5a.assignvaluecolor(Color.GRAY);
retracement5a.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber +10), retracement5a, concat( "$", round(retracement5a, 2)), color.white, yes);
# AddChartBubble((downward and barnumber == highnumberall), retracement5a, concat( (coefficient_5a * 100), "%"), color.WHITE, yes);
# AddChartBubble((upward and barnumber == lownumberall), retracement5a, concat( (coefficient_5a * 100), "%"), color.WHITE, yes);

alert((price crosses below Retracement0) , "Price crosses below Retracement Line 0");
alert((price crosses above Retracement0) , "Price crosses above Retracement Line 0");
alert((price crosses below Retracement1) , "Price crosses below Retracement Line 1");
alert((price crosses above Retracement1) , "Price crosses above Retracement Line 1");
alert((price crosses below Retracement2) , "Price crosses below Retracement Line 2");
alert((price crosses above Retracement2) , "Price crosses above Retracement Line 2");
alert((price crosses below Retracement3) , "Price crosses below Retracement Line 3");
alert((price crosses above Retracement3) , "Price crosses above Retracement Line 3");
alert((price crosses below Retracement4) , "Price crosses below Retracement Line 4");
alert((price crosses above Retracement4) , "Price crosses above Retracement Line 4");
alert((price crosses below Retracement5) , "Price crosses below Retracement Line 5");
alert((price crosses above Retracement5) , "Price crosses above Retracement Line 5");
alert((price crosses below Retracement6) , "Price crosses below Retracement Line 6");
alert((price crosses above Retracement6) , "Price crosses above Retracement Line 6");

#***************************************************************************************
## End of Autofibointraday tool.
#***************************************************************************************

Here is my watchlist of optionable stocks with tight bid/ask option spread. Keep in mind some of these stocks may have a little wider spread as they go further in-the-money. I developed a little code to display ''how much the option needs to move'' so that I dont have to mentally (or use a calculator) calculate if this is a good or not option to quickly trade it. The code follows the watchlist and you may need to add it to Think or Swim under an available ''custom-column' (normally found with Studies) and then select it when tailoring visible option chain columns.

AAL
AAPL
AMD
APA
ARKF
ARKK
BAC
BLNK
BMY
C
CCL
CHPT
CLF
CMCSA
CSCO
CVX
DAL
DIS
F
FCX
GE
GLD
GM
HES
IBM
INTC
JD
JNJ
JPM
LAC
LCID
LI
LUV
LVS
MRK
MRVL
MS
MSFT
MU
NIO
NKLA
NXPI
ON
ORCL
PFE
PINS
PLTR
PLUG
QQQ
RBLX
RIDE
SBUX
SLB
SLV
SNAP
SPCE
SPY
STLA
STLD
T
TJX
TLT
TSM
UAL
VZ
WBA
WDC
WFC
WMT
X
XLE
XLF
XLI
XLK
XLV
XME
XOM
XPEV

Howmuchtomove code
Ruby:
def net = ask-bid;
def howmuchneedtomove = net / delta();
plot data = Absvalue(howmuchneedtomove);
 
Last edited by a moderator:
You should try this system in test mode before going live. I have a watchlist of optionable stocks with tight bid/ask option spreads. I trade any of them with preference to .60 delta or a little higher, 10 contracts at a time, not to exceed $1,700. I have a 401K account that allows me day trading without restrictions (over 25K). I've develop a sense of where price may hit support or resistance. I pay attention at the candle wick which tells me where the bulls and bears are (buying or selling). I look at volume. I use a 10Min, 5Min and a 1Yr charts. 1Yr to see overall trend. I found an automatic Fibonacci tool that sets the levels for me in all charts I have it. That roughly tells me where support and resistance levels are. I use Pivot Points too for the week in my 10M and 5Min charts. My Watchlist tells me which stocks are moving pre-market since I use the Mark Change value. When I see a moving stock, I check 1YR chart for trend reference only. Today the stock may move or not in the same direction. Then I stare at price action in the first 9 minutes of market opening - in my 5M chart - I determine where price-action-resistance-support levels are hit. I pick my PUT or CALL option based on who is winning (bulls or bears) and the spread divided by delta. So if the spread is .10 cents right now and delta is .65, the price needs to move in my favor .15 cents (.10 / .65) before I can start making $$$$$. If the price moves net .03 cents (i.e. .18 minus .15) in my favor, I make $30. If a price net move is .70 I make $700. I don't trade closer to support and resistance levels. I watch patiently for price to move beyond these and mentally assess the potential for profit between them. I trade breakouts and breakdowns to the next resistance and support levels (whether Fibonacci, Pivot Points or eyeball assessment of where bulls/bears likely to hit). Meantime, jump to another stock in my watchlist. I started trading 1 contract at the time to 'test' my day-trade strategy and now use either limit or market orders to take profit or cut loser short. Trading is a probability game where you can gain or lose money. I use Trader TV to trade news too since these move stocks in the market. My watchlist is made of 20 stocks l like to day trade. I too look at Momentum (Fast Stochastics), ADX to assess the strength of price action, Price Percentage Oscillator (I found a very good indicator that shows when price is going in 'squeeze mode' and consolidating). Hope this helps. Good trading...
Fufi007.. good one.. I'm sure you have tested these and working well with your trading style. Thanks for sharing. Is your list dynamic or you keep it updated based on momentum of the day/week/month. What's expiration Options you trade? Front weekend or longer term one to avoid theta/IV Crush?
 
Fufi007.. good one.. I'm sure you have tested these and working well with your trading style. Thanks for sharing. Is your list dynamic or you keep it updated based on momentum of the day/week/month. What's expiration Options you trade? Front weekend or longer term one to avoid theta/IV Crush?
I update my watchlist when I see a new stock that is worthy of inclusion. For that matter, I have a subscription with Investors Business Daily which among many things, maintain several ratings on every stock in the market and out of those ratings, generate a Composite Rating. So when I see a new stock I can trade and its Composite Rating (SmartSelect called) is equal/above 85 (85 means is beating 85% of the stocks in the market), I look at the option chain to see if it has manageable strikes - less than $2.50 (i.e. $10, $12.50, $15 and so on) - and if the bid/ask spread is manageable (less than .20 cents if day trading (scalping) or maybe $1.00 if I will trade for 6 months out or longer). I also consider if funds are ''interested in it'' (funds rarely enter a stock position if price is less than $25 with low trading volume). For that matter, I have a quarterly subscription to WhaleWisdom.com which gives me that side of the picture to trade on a longer term. When IBD and WhaleWisdom tells me it is a good stock, that's when I add it to my watchlist. I trade weekly options for ''scalping'' (10 contracts at a time), front month and long term options (5 to 10 contracts) if I feel the stock will go higher (good fundamentals and funds are taking a position). I don't trade around earning season due to volatility crushes. I learned my lesson. Rather wait after news breakout. I trade when the stock is breaking out or breaking down off a ''squeeze' condition (Keltner Channels are trading inside of Bollinger Bands) or after a period of some form of consolidation (3 days to few weeks) . ToS have a pretty good licensed study developed by John Carter named TTMSqueeze which shows stocks worthy to monitor. You can Scan for stocks in squeeze condition. The red dots in the chart tells me the stock is in squeeze condition. Then I wait until it comes out of that condition to trade it. Chance is, it will continue to move in the direction of the breakout/breakdown. I select .60 delta options if day trading or .40 or higher for the long term. Happy trading
 
Last edited:
Solution
I update my watchlist when I see a new stock that is worthy of inclusion. For that matter, I have a subscription with Investors Business Daily which among many things, maintain several ratings on every stock in the market and out of those ratings, generate a Composite Rating. So when I see a new stock I can trade and its Composite Rating (SmartSelect called) is equal/above 85 (85 means is beating 85% of the stocks in the market), I look at the option chain to see if it has manageable strikes - less than $2.50 (i.e. $10, $12.50, $15 and so on) - and if the bid/ask spread is manageable (less than .20 cents if day trading (scalping) or maybe $1.00 if I will trade for 6 months out or longer). I also consider if funds are ''interested in it'' (funds rarely enter a stock position if price is less than $25 with low trading volume). For that matter, I have a quarterly subscription to WhaleWisdom.com which gives me that side of the picture to trade on a longer term. When IBD and WhaleWisdom tells me it is a good stock, that's when I add it to my watchlist. I trade weekly options for ''scalping'' (10 contracts at a time), front month and long term options (5 to 10 contracts) if I feel the stock will go higher (good fundamentals and funds are taking a position). I don't trade around earning season due to volatility crushes. I learned my lesson. Rather wait after news breakout. I trade when the stock is breaking out or breaking down off a ''squeeze' condition (Keltner Channels are trading inside of Bollinger Bands) or after a period of some form of consolidation (3 days to few weeks) . ToS have a pretty good licensed study developed by John Carter named TTMSqueeze which shows stocks worthy to monitor. You can Scan for stocks in squeeze condition. The red dots in the chart tells me the stock is in squeeze condition. Then I wait until it comes out of that condition to trade it. Chance is, it will continue to move in the direction of the breakout/breakdown. I select .60 delta options if day trading or .40 or higher for the long term. Happy trading
Thank you so much for the in depth response and for the code for the Fibonacci tool! I really appreciate your step-by-step breakdown. I will definitely be looking into these methods and will start by papertrading them first :)
Thanks again!
 
I've tried a number of option / underlying strategies and am currently trading SPY options only. Trading only one stock keeps me from endless searches and scans and I just focus on my strategy for a single trigger event that usually pays off. I find the volume and execution via TOS on SPY options is generally pretty good and spreads are typically 1 to 2 cents. It can be a fast game with the 0 -1 DTEs and I am in and out usually within minutes. OTraderJoe's comments are spot on. I primarily use trend indicators and vwap crosses as my trigger. Good luck!
Thank you very much. I agree. I have found that SPY has been a good one to focus on. Lately I've mostly just been looking at SPY, sometimes QQQ, but I have noticed that SPY has tighter spreads. Thank you for mentioning the indicators as well.
 
I see Daily Watchlist on useThinkscript.com forums.. is that might be also good resource to try and test trading options.
Watchlist for September 3rd, 2021

SHOP
GS
AAPL
PEP
 
Here is the code to the AutoFibonacci tool I once found in the web. Keep on mind the tool draws the lines from the lowest price to the highest or from the highest to lowest for the selected period. I colored them because sometimes I can't see the percentages and is easy for me to know them with colors. The critical levels 50 and 68.2 are coded in red. All other Fibonacci percentage lines are automatically added. I added other dash lines to the tool to give me a sense of the ''middle'' between standard percentages, lets say a dash line between 23.6 and 38.2. Copy and paste the code to a new study you can create while adding studies to your chart. The watchlist follows the code and there is another little code after which to find ''how-much-the-option-needs-to-move'' before I can start making $$$$$. Good trading...

Code of AutoFiboIntraday
Ruby:
#hint: <b>Fibonacci Retracements</b>\nFibonacci retracements use horizontal lines to indicate areas of support or resistance at the key Fibonacci levels before it continues in the original direction. These levels are created by drawing a trendline between two extreme points and then dividing the vertical distance by the key Fibonacci ratios of: 23.6%, 38.2%, 50%, 61.8%, 78.6%, and 100%.
#hint Price: Price used in the alerts on crossing retracement lines. <b>(Default is Close)</b>
#hint onExpansion: Determines if the retracement lines are projected past the current bar into the right side expansion <b>(Default is Yes)</b>
#hint Extend_to_left: Determines if the retracement lines are extended to the left side of the chart. <b>(Default is No)</b>
#hint Coefficient0: Retracement Line 0: Retracement from the highest high to the lowest low.\n <b>(Default is 0%)</b>
#hint Coefficient_1: Retracement Line 1: Retracement from the highest high to the lowest low.\n <b>(Default is 23.6%)</b>
#hint Coefficient_2: Retracement Line 2: Retracement from the highest high to the lowest low.\n <b>(Default is 38.2%)</b>
#hint Coefficient_3: Retracement Line 3: Retracement from the highest high to the lowest low.\n <b>(Default is 50%)</b>
#hint Coefficient_4: Retracement Line 4: Retracement from the highest high to the lowest low.\n <b>(Default is 61.8%)</b>
#hint Coefficient_5: Retracement Line 5: Retracement from the highest high to the lowest low.\n <b>(Default is 78.6%)</b>
#hint Coefficient_6: Retracement Line 6: Retracement from the highest high to the lowest low.\n <b>(Default is 100%)</b>
#wizard input: Price
#wizard text: Inputs: Price:
#wizard input: onExpansion
#wizard text: onExpansion:
#wizard input: Extend_to_left
#wizard text: Extend_to_left:
#wizard input: Coefficient0
#wizard text: Coefficient0:
#wizard input: Coefficient_1
#wizard text: Coefficient_1:
#wizard input: Coefficient_2
#wizard text: Coefficient_2:
#wizard input: Coefficient_3
#wizard text: Coefficient_3:
#wizard input: Coefficient_4
#wizard text: Coefficient_4:
#wizard input: Coefficient_5
#wizard text: Coefficient_5:
#wizard input: Coefficient_6
#wizard text: Coefficient_6:

#wizard text: Coefficient0a:
#wizard input: Coefficient0a
#wizard text: Coefficient1a:
#wizard input: Coefficient_1a
#wizard text: Coefficient2a:
#wizard input: Coefficient_2a
#wizard text: Coefficient3a:
#wizard input: Coefficient_3a
#wizard text: Coefficient4a:
#wizard input: Coefficient_4a
#wizard text: Coefficient5a:
#wizard input: Coefficient_5a

input price = close;
input high = high;
input low = low;
input onExpansion = Yes;
input Extend_to_left = no;
input Coefficient0 = 0.000;
input Coefficient0a = .118;
input coefficient_1 = .236;
input Coefficient_1a = 0.309;
input Coefficient_2 = .382;
input Coefficient_2a = 0.441;
input Coefficient_3 = .500;
input Coefficient_3a = 0.559;
input Coefficient_4 = .618;
input Coefficient_4a = 0.702;
Input Coefficient_5 = .786;
input Coefficient_5a = 0.893;
input Coefficient_6 = 1.000;

def a = HighestAll(high);
def b = LowestAll(low);
def barnumber = barNumber();
def c = if high == a then barnumber else double.nan;
def d = if low == b then barnumber else double.nan;
rec highnumber = compoundValue(1, if IsNaN(c) then highnumber[1] else c, c);
def highnumberall = HighestAll(highnumber);
rec lownumber = compoundValue(1, if IsNaN(d) then lownumber[1] else d, d);
def lownumberall = LowestAll(lownumber);

def upward = highnumberall > lownumberall;
def downward = highnumberall < lownumberall;

def x = AbsValue(lownumberall - highnumberall );

def slope = (a - b) / x;
def slopelow = (b - a) / x;

def day = getDay();
def month = getMonth();
def year = getYear();
def lastDay = getLastDay();
def lastmonth = getLastMonth();
def lastyear = getLastYear();
def isToday = if(day == lastDay and month == lastmonth and year == lastyear, 1, 0);
def istodaybarnumber = HighestAll(if isToday then barnumber else double.nan);

def line = b + (slope * (barnumber - lownumber));
def linelow = a + (slopelow * (barnumber - highnumber));

def currentlinelow = if barnumber <= lownumberall then linelow else double.nan;
def currentline = if barnumber <= highnumberall then line else double.nan;

Plot FibFan = if downward then currentlinelow else if upward then currentline else double.nan;
FibFan.SetStyle(Curve.SHORT_DASH);
FibFan.AssignValueColor(color.white);
fibfan.hidebubble();

def range = a - b;

Plot Retracement0 = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient0))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient0)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient0))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient0)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient0))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient0)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient0))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient0)) else double.nan;
Retracement0.assignvaluecolor(Color.DARK_ORANGE);
retracement0.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber +10), retracement0, concat( "$", round(retracement0, 2)), color.white, yes);
AddChartBubble((downward and barnumber == highnumberall), retracement0, concat( (coefficient0 * 100), "%"), color.oRANGE, yes);
AddChartBubble((upward and barnumber == lownumberall), retracement0, concat( (coefficient0 * 100), "%"), color.orANGE, yes);


Plot Retracement1 = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_1))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_1)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_1))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_1)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_1))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_1)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_1))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_1)) else double.nan;
Retracement1.assignvaluecolor(color.GREEN);
retracement1.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber+10), retracement1, concat( "$", round(retracement1, 2)), color.white, yes);
AddChartBubble((downward and barnumber == highnumberall), retracement1, concat( (coefficient_1 * 100), "%"), color.white, yes);
AddChartBubble((upward and barnumber == lownumberall), retracement1, concat( (coefficient_1 * 100), "%"), color.white, yes);


Plot Retracement2 =if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_2))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_2)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_2))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_2)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_2))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_2)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_2))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_2)) else double.nan;
Retracement2.assignvaluecolor(color.YELLOW);
retracement2.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber+10), retracement2, concat( "$", round(retracement2, 2)), color.white, yes);
AddChartBubble((downward and barnumber == highnumberall), retracement2, concat( (coefficient_2 * 100), "%"), color.white, yes);
AddChartBubble((upward and barnumber == lownumberall), retracement2, concat( (coefficient_2 * 100), "%"), color.white, yes);


Plot Retracement3 = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_3))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_3)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_3))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_3)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_3))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_3)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_3))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_3)) else double.nan;
Retracement3.assignvaluecolor(color.red);
retracement3.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber+10), retracement3, concat( "$", round(retracement3, 2)), color.white, yes);
AddChartBubble((upward and barnumber == lownumberall), retracement3, concat( (coefficient_3 * 100), "%"), color.white, yes);
AddChartBubble((downward and barnumber == highnumberall), retracement3, concat( (coefficient_3 * 100), "%"), color.white, yes);

Plot Retracement4 = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_4))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_4)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_4))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_4)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_4))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_4)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_4))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_4)) else double.nan;
Retracement4.assignvaluecolor(color.red);
retracement4.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber+10), retracement4, concat( "$", round(retracement4, 2)), color.white, yes);
AddChartBubble((downward and barnumber == highnumberall), retracement4, concat( (coefficient_4 * 100), "%"), color.white, yes);
AddChartBubble((upward and barnumber == lownumberall), retracement4, concat( (coefficient_4 * 100), "%"), color.white, yes);

Plot Retracement5 = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_5))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_5)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_5))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_5)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_5))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_5)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_5))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_5)) else double.nan;
Retracement5.assignvaluecolor(color.MAGENTA);
retracement5.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber+10), retracement5, concat( "$", round(retracement5, 2)), color.white, yes);
AddChartBubble((downward and barnumber == highnumberall), retracement5, concat( (coefficient_5 * 100), "%"), color.white, yes);
AddChartBubble((upward and barnumber == lownumberall), retracement5, concat( (coefficient_5 * 100), "%"), color.white, yes);


Plot Retracement6 = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_6))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_6)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_6))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_6)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_6))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_6)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_6))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_6)) else double.nan;
Retracement6.assignvaluecolor(color.white);
retracement6.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber+10), retracement6, concat( "$", round(retracement6, 2)), color.white, yes);

AddChartBubble((downward and barnumber == highnumberall), retracement6, concat( (coefficient_6 * 100), "%"), color.white, yes);
AddChartBubble((upward and barnumber == lownumberall), retracement6, concat( (coefficient_6 * 100), "%"), color.white, yes);

Plot Retracement0a = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient0a))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient0a)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient0a))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient0a)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient0a))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient0a)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient0a))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient0a)) else double.nan;
Retracement0a.assignvaluecolor(Color.GRAY);
retracement0a.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber +10), retracement0a, concat( "$", round(retracement0a, 2)), color.white, yes);
#AddChartBubble((downward and barnumber == highnumberall), retracement0a, concat( (coefficient0a * 100), "%"), color.WHITE, yes);
#AddChartBubble((upward and barnumber == lownumberall), retracement0a, concat( (coefficient0a * 100), "%"), color.WHITE, yes);


Plot Retracement1a = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_1a))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_1a)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_1a))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_1a)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_1a))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_1a)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_1a))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_1a)) else double.nan;
Retracement1a.assignvaluecolor(Color.GRAY);
retracement1a.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber +10), retracement1a, concat( "$", round(retracement1a, 2)), color.white, yes);
#AddChartBubble((downward and barnumber == highnumberall), retracement1a, concat( (coefficient_1a * 100), "%"), color.WHITE, yes);
#AddChartBubble((upward and barnumber == lownumberall), retracement1a, concat( (coefficient_1a * 100), "%"), color.WHITE, yes);

Plot Retracement2a = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_2a))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_2a)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_2a))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_2a)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_2a))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_2a)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_2a))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_2a)) else double.nan;
Retracement2a.assignvaluecolor(Color.GRAY);
retracement2a.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber +10), retracement2a, concat( "$", round(retracement2a, 2)), color.white, yes);
# AddChartBubble((downward and barnumber == highnumberall), retracement2a, concat( (coefficient_2a * 100), "%"), color.WHITE, yes);
# AddChartBubble((upward and barnumber == lownumberall), retracement2a, concat( (coefficient_2a * 100), "%"), color.WHITE, yes);

Plot Retracement3a = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_3a))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_3a)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_3a))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_3a)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_3a))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_3a)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_3a))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_3a)) else double.nan;
Retracement3a.assignvaluecolor(Color.GRAY);
retracement3a.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber +10), retracement3a, concat( "$", round(retracement3a, 2)), color.white, yes);
# AddChartBubble((downward and barnumber == highnumberall), retracement3a, concat( (coefficient_3a * 100), "%"), color.WHITE, yes);
# AddChartBubble((upward and barnumber == lownumberall), retracement3a, concat( (coefficient_3a * 100), "%"), color.WHITE, yes);

Plot Retracement4a = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_4a))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_4a)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_4a))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_4a)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_4a))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_4a)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_4a))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_4a)) else double.nan;
Retracement4a.assignvaluecolor(Color.GRAY);
retracement4a.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber +10), retracement4a, concat( "$", round(retracement4a, 2)), color.white, yes);
# AddChartBubble((downward and barnumber == highnumberall), retracement4a, concat( (coefficient_4a * 100), "%"), color.WHITE, yes);
# AddChartBubble((upward and barnumber == lownumberall), retracement4a, concat( (coefficient_4a * 100), "%"), color.WHITE, yes);

Plot Retracement5a = if downward and !onexpansion and !extend_to_left and barnumber >= highnumberall and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_5a))) else if upward and !extend_to_left and !onexpansion and barnumber >= lownumberall and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_5a)) else if downward and onexpansion and !extend_to_left and barnumber >= highnumberall then highestall((b + (range * coefficient_5a))) else if upward and onexpansion and barnumber >= lownumberall and !extend_to_left then highestall(a - (range * coefficient_5a)) else if downward and !onexpansion and extend_to_left and barnumber <= istodaybarnumber then highestall((b + (range * coefficient_5a))) else if upward and extend_to_left and !onexpansion and barnumber <= istodaybarnumber then highestall(a - (range * coefficient_5a)) else if downward and onexpansion and extend_to_left then highestall((b + (range * coefficient_5a))) else if upward and onexpansion and extend_to_left then highestall(a - (range * coefficient_5a)) else double.nan;
Retracement5a.assignvaluecolor(Color.GRAY);
retracement5a.hidebubble();
# AddChartBubble((barnumber == istodaybarnumber +10), retracement5a, concat( "$", round(retracement5a, 2)), color.white, yes);
# AddChartBubble((downward and barnumber == highnumberall), retracement5a, concat( (coefficient_5a * 100), "%"), color.WHITE, yes);
# AddChartBubble((upward and barnumber == lownumberall), retracement5a, concat( (coefficient_5a * 100), "%"), color.WHITE, yes);

alert((price crosses below Retracement0) , "Price crosses below Retracement Line 0");
alert((price crosses above Retracement0) , "Price crosses above Retracement Line 0");
alert((price crosses below Retracement1) , "Price crosses below Retracement Line 1");
alert((price crosses above Retracement1) , "Price crosses above Retracement Line 1");
alert((price crosses below Retracement2) , "Price crosses below Retracement Line 2");
alert((price crosses above Retracement2) , "Price crosses above Retracement Line 2");
alert((price crosses below Retracement3) , "Price crosses below Retracement Line 3");
alert((price crosses above Retracement3) , "Price crosses above Retracement Line 3");
alert((price crosses below Retracement4) , "Price crosses below Retracement Line 4");
alert((price crosses above Retracement4) , "Price crosses above Retracement Line 4");
alert((price crosses below Retracement5) , "Price crosses below Retracement Line 5");
alert((price crosses above Retracement5) , "Price crosses above Retracement Line 5");
alert((price crosses below Retracement6) , "Price crosses below Retracement Line 6");
alert((price crosses above Retracement6) , "Price crosses above Retracement Line 6");

#***************************************************************************************
## End of Autofibointraday tool.
#***************************************************************************************

Here is my watchlist of optionable stocks with tight bid/ask option spread. Keep in mind some of these stocks may have a little wider spread as they go further in-the-money. I developed a little code to display ''how much the option needs to move'' so that I dont have to mentally (or use a calculator) calculate if this is a good or not option to quickly trade it. The code follows the watchlist and you may need to add it to Think or Swim under an available ''custom-column' (normally found with Studies) and then select it when tailoring visible option chain columns.

AAL
AAPL
AMD
APA
ARKF
ARKK
BAC
BLNK
BMY
C
CCL
CHPT
CLF
CMCSA
CSCO
CVX
DAL
DIS
F
FCX
GE
GLD
GM
HES
IBM
INTC
JD
JNJ
JPM
LAC
LCID
LI
LUV
LVS
MRK
MRVL
MS
MSFT
MU
NIO
NKLA
NXPI
ON
ORCL
PFE
PINS
PLTR
PLUG
QQQ
RBLX
RIDE
SBUX
SLB
SLV
SNAP
SPCE
SPY
STLA
STLD
T
TJX
TLT
TSM
UAL
VZ
WBA
WDC
WFC
WMT
X
XLE
XLF
XLI
XLK
XLV
XME
XOM
XPEV

Howmuchtomove code
Ruby:
def net = ask-bid;
def howmuchneedtomove = net / delta();
plot data = Absvalue(howmuchneedtomove);
Hi, Could you please explain step by step how to add the "howmuchtomove Code" to the thinkor Swim.

Thank You very much in advance.
 
Last edited:

Similar threads

Not the exact question you're looking for?

Start a new thread and receive assistance from our community.

87k+ Posts
356 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