TradingView Scripts Based on Minervini's SEPA Strategy
I've spent the last few years looking at VCP setups and Trade Structure entries on TradingView. There's a whole subcategory of scripts that try to automate Mark Minervini's Volatility Contraction Pattern and his broader SEPA framework. The Iimark version is one of the more complete ones I've actually tried running. It's not perfect, but it covers more ground than most of the free scripts floating around. The core idea behind Minervini's approach is straightforward on paper. You're looking for a stock that has already proven it can move sharply upward, then contracts into a tight trading range before breaking out again. The contraction part is what matters most. Volume should dry up during the consolidation. Price action gets tighter with each successive pivot. That's your setup. The Iimark script attempts to flag these patterns automatically on your charts.
Unlocking Profits The Power Of Iimark Minervinis Tradingview Strategies
Here's how I actually got it working in my routine. First, you need the script loaded onto a TradingView chart. The one by Iimark is typically found in the public library — search for his name along with "Minervini VCP" or "SEPA." You'll want this on a daily timeframe, ideally with your watchlist filtered to stocks already showing an uptrend. The script won't help you find the right universe of stocks. It only identifies the pattern once a stock is in play. Set the lookback period to something reasonable like 120 to 200 bars. Anything shorter and you're getting false signals from stocks that barely consolidated. The script will then plot markers where it detects contraction formations and breakout points. You adjust sensitivity settings based on the volatility of whatever sector you're trading. Tech stocks need a different threshold than energy or financials. One thing most people miss is that the script doesn't account for market context. Minervini himself always stresses that the overall market environment matters enormously. A VCP breakout in a strong bull market has a very different success rate than one during a distribution phase. I learned this the hard way in early 2024 when the NASDAQ was rotating out of growth and my script was still flashing green arrows. I lost about twelve percent on a position that looked perfect on paper but was heading into a macro headwind. After that, I started cross-referencing every signal with the S&P 500 and NASDAQ trend filters before taking anything.
There's also a nuance with volume confirmation that the script handles imperfectly. Minervini places heavy emphasis on volume collapsing during the contraction and then expanding dramatically on the breakout. Some versions of this script flag the price pattern but don't weight volume tightly enough. I modified my setup to add a separate volume spike indicator alongside it, something simple like a 20-day volume average with a 150 percent breakout threshold. That combination caught noticeably better setups than the script alone. The practical workflow I ended up settling on was this. Run the Iimark script on a daily chart of any stock that's already within twenty percent of its fifty-two week high. Filter out anything below a two hundred day moving average slope. Then use the volume confirmation overlay I described. When all three align, I mark the potential entry. The actual entry point is usually a half percent above the pattern's upper boundary, with a stop just below the most recent contraction pivot. Risk is typically one to two percent of account equity per trade, which keeps the math workable even when the pattern fails, which it does more often than people expect. I should mention the limitations honestly. The script generates signals in sideways or ranging markets where no real trend exists. It will still draw VCP boxes on choppy price action that goes nowhere. You need to manually verify that the stock has meaningful prior momentum — at least a thirty percent gain from the recent low to the current price area. Without that prerequisite, the pattern is just noise.
Get the Full Details

Another edge case is earnings announcements. The script doesn't automatically factor in upcoming earnings dates, and a VCP can collapse instantly if you're holding through an unexpected miss or guidance cut. I now run a simple earnings calendar overlay and avoid entering positions within five trading days of a report unless I'm comfortable with the binary risk. If you're looking for the script itself, it's available directly in TradingView's indicator library. Search for "Iimark Minervini" and you should find the latest published version. Make sure you're using the one with recent updates, since older builds had some repainting issues on intraday timeframes that got patched later. Copy the script reference and paste it into your indicator search box on TradingView, then add it to a daily chart. The real value here isn't in blind automation. It's in using the script as a screening tool to surface candidates that match Minervini's criteria, then applying your own judgment on market structure, volume behavior, and sector rotation. The pattern recognition piece is genuinely useful because doing this by eye across hundreds of stocks is time consuming. But the execution decisions still belong to you.