Market Lean Report for Technical Traders | Wednesday, May 20th
Long/short levels on the 11 S&P sectors, futures ($ES $NQ $YM $RTY), 100+ US & global tickers spanning equity indexes, stocks, bonds, commodities, currencies, and crypto
Today’s S&P Sectors Lean Report for Technical Traders — Free report: monitors the 11 S&P 500 sectors.
Upgrade to paid to also receive the Futures Lean Report ($ES $NQ $YM $RTY) and the Stock Market Lean Report (100+ US and global tickers spanning equity indexes, stocks, bonds, commodities, currencies, and crypto).
All Lean Reports include an Excel attachment for your automation, chart review, backtesting and sharing.
S&P Sectors Lean Overview
Day Traders: Headwinds: 3 | Tailwinds: 4
— Headwinds report: XLB/ short lean below 49.05; XLI/ short lean below 168.72; XLY/ short lean below 115.03;
— Tailwinds report: XLE\ long lean above 61.26; XLP\ long lean above 86.08; XLRE\ long lean above 43.94; XLV\ long lean above 147.32;
Traders: Headwinds: 2 | Tailwinds: 3
— Headwinds report: XLB/ short lean below 49.05; XLY/ short lean below 115.03;
— Tailwinds report: XLE\ long lean above 61.26; XLP\ long lean above 86.08; XLV\ long lean above 147.32;
Investors: Headwinds: 0 | Tailwinds: 2
— Headwinds report: 0 wind currents
— Tailwinds report: XLE\ long lean above 61.26; XLP\ long lean above 86.08;
S&P Sectors Lean Lines Indicator for TradingView
//@version=5
indicator("Little Bird Trading S&P Sectors Lean Report - LittleBirdTrading.com", overlay=true)
// XLB
is_XLB = syminfo.ticker == "XLB"
var line line_XLB_day = na
if is_XLB and timeframe.isintraday
if na(line_XLB_day)
line_XLB_day := line.new(bar_index - 100, 49.05, bar_index + 20, 49.05, color=color.red, width=2)
else
line.set_xy1(line_XLB_day, bar_index - 100, 49.05)
line.set_xy2(line_XLB_day, bar_index + 20, 49.05)
var line line_XLB_trader = na
if is_XLB and (timeframe.isdaily or timeframe.isweekly or timeframe.ismonthly)
if na(line_XLB_trader)
line_XLB_trader := line.new(bar_index - 100, 49.05, bar_index + 20, 49.05, color=color.red, width=2)
else
line.set_xy1(line_XLB_trader, bar_index - 100, 49.05)
line.set_xy2(line_XLB_trader, bar_index + 20, 49.05)
// XLC
is_XLC = syminfo.ticker == "XLC"
// XLE
is_XLE = syminfo.ticker == "XLE"
var line line_XLE_day = na
if is_XLE and timeframe.isintraday
if na(line_XLE_day)
line_XLE_day := line.new(bar_index - 100, 61.26, bar_index + 20, 61.26, color=color.green, width=2)
else
line.set_xy1(line_XLE_day, bar_index - 100, 61.26)
line.set_xy2(line_XLE_day, bar_index + 20, 61.26)
var line line_XLE_trader = na
if is_XLE and (timeframe.isdaily or timeframe.isweekly or timeframe.ismonthly)
if na(line_XLE_trader)
line_XLE_trader := line.new(bar_index - 100, 61.26, bar_index + 20, 61.26, color=color.green, width=2)
else
line.set_xy1(line_XLE_trader, bar_index - 100, 61.26)
line.set_xy2(line_XLE_trader, bar_index + 20, 61.26)
var line line_XLE_investor = na
if is_XLE and (timeframe.isweekly or timeframe.ismonthly)
if na(line_XLE_investor)
line_XLE_investor := line.new(bar_index - 100, 61.26, bar_index + 20, 61.26, color=color.green, width=2)
else
line.set_xy1(line_XLE_investor, bar_index - 100, 61.26)
line.set_xy2(line_XLE_investor, bar_index + 20, 61.26)
// XLF
is_XLF = syminfo.ticker == "XLF"
// XLI
is_XLI = syminfo.ticker == "XLI"
var line line_XLI_day = na
if is_XLI and timeframe.isintraday
if na(line_XLI_day)
line_XLI_day := line.new(bar_index - 100, 168.72, bar_index + 20, 168.72, color=color.red, width=2)
else
line.set_xy1(line_XLI_day, bar_index - 100, 168.72)
line.set_xy2(line_XLI_day, bar_index + 20, 168.72)
// XLK
is_XLK = syminfo.ticker == "XLK"
// XLP
is_XLP = syminfo.ticker == "XLP"
var line line_XLP_day = na
if is_XLP and timeframe.isintraday
if na(line_XLP_day)
line_XLP_day := line.new(bar_index - 100, 86.08, bar_index + 20, 86.08, color=color.green, width=2)
else
line.set_xy1(line_XLP_day, bar_index - 100, 86.08)
line.set_xy2(line_XLP_day, bar_index + 20, 86.08)
var line line_XLP_trader = na
if is_XLP and (timeframe.isdaily or timeframe.isweekly or timeframe.ismonthly)
if na(line_XLP_trader)
line_XLP_trader := line.new(bar_index - 100, 86.08, bar_index + 20, 86.08, color=color.green, width=2)
else
line.set_xy1(line_XLP_trader, bar_index - 100, 86.08)
line.set_xy2(line_XLP_trader, bar_index + 20, 86.08)
var line line_XLP_investor = na
if is_XLP and (timeframe.isweekly or timeframe.ismonthly)
if na(line_XLP_investor)
line_XLP_investor := line.new(bar_index - 100, 86.08, bar_index + 20, 86.08, color=color.green, width=2)
else
line.set_xy1(line_XLP_investor, bar_index - 100, 86.08)
line.set_xy2(line_XLP_investor, bar_index + 20, 86.08)
// XLRE
is_XLRE = syminfo.ticker == "XLRE"
var line line_XLRE_day = na
if is_XLRE and timeframe.isintraday
if na(line_XLRE_day)
line_XLRE_day := line.new(bar_index - 100, 43.94, bar_index + 20, 43.94, color=color.green, width=2)
else
line.set_xy1(line_XLRE_day, bar_index - 100, 43.94)
line.set_xy2(line_XLRE_day, bar_index + 20, 43.94)
// XLU
is_XLU = syminfo.ticker == "XLU"
// XLV
is_XLV = syminfo.ticker == "XLV"
var line line_XLV_day = na
if is_XLV and timeframe.isintraday
if na(line_XLV_day)
line_XLV_day := line.new(bar_index - 100, 147.32, bar_index + 20, 147.32, color=color.green, width=2)
else
line.set_xy1(line_XLV_day, bar_index - 100, 147.32)
line.set_xy2(line_XLV_day, bar_index + 20, 147.32)
var line line_XLV_trader = na
if is_XLV and (timeframe.isdaily or timeframe.isweekly or timeframe.ismonthly)
if na(line_XLV_trader)
line_XLV_trader := line.new(bar_index - 100, 147.32, bar_index + 20, 147.32, color=color.green, width=2)
else
line.set_xy1(line_XLV_trader, bar_index - 100, 147.32)
line.set_xy2(line_XLV_trader, bar_index + 20, 147.32)
// XLY
is_XLY = syminfo.ticker == "XLY"
var line line_XLY_day = na
if is_XLY and timeframe.isintraday
if na(line_XLY_day)
line_XLY_day := line.new(bar_index - 100, 115.03, bar_index + 20, 115.03, color=color.red, width=2)
else
line.set_xy1(line_XLY_day, bar_index - 100, 115.03)
line.set_xy2(line_XLY_day, bar_index + 20, 115.03)
var line line_XLY_trader = na
if is_XLY and (timeframe.isdaily or timeframe.isweekly or timeframe.ismonthly)
if na(line_XLY_trader)
line_XLY_trader := line.new(bar_index - 100, 115.03, bar_index + 20, 115.03, color=color.red, width=2)
else
line.set_xy1(line_XLY_trader, bar_index - 100, 115.03)
line.set_xy2(line_XLY_trader, bar_index + 20, 115.03)
Upgrade to paid to unlock today’s Futures + Stock Market Lean Reports
Paid includes complete lean lines, TradingView indicators, and downloadable Excel files for automation, chart review, backtesting and sharing.
Disclaimer: Little Bird Trading and any of its associations may or may not, whether long or short, have a position in any instruments. Not investment advice. Provided for informational purposes only. Not a recommendation or endorsement. Not registered or licensed. Model portfolios are property of their respective owners. All data is sourced from publicly available information. No guarantee is being made or offered. Not responsible for financial loss or ruin. Little Bird Trading may earn a commission if you purchase through links on the site.
Futures Market Lean Report for Wednesday, May 20th
Enjoying this content?
Subscribe on Substack

