ucsgears

UCS_S_Stochastic Pop and Drop Strategy

My Contribution to Jake Bernstein Educational Series, Initiated by Chris Moody.

The Stochastic Pop was developed by Jake Bernstein and modified by David Steckler. Bernstein's original Stochastic Pop is a trading strategy that identifies price pops when the Stochastic Oscillator surges above 80. Steckler modified this strategy by adding conditional filters using the Average Directional Index (ADX) and the weekly Stochastic Oscillator.

Modifications
1. Weekly Stochastic Oscillator for Trading Bias = 5* Daily Stochastic
2. Optional Volume Confirmation, Custom Average Volume Length


Future Plans
1. Adding Triggers for Entry, Stops and Target. - This will be release when we have ability to code the complete Strategy. Although it can be done with the current pinescript options, it would be far more easier if we have strategy ability.

snapshot
snapshot
snapshot

Link for Educational Purpose
http://stockcharts.com/school/doku.php?id=chart_school:trading_strategies:stochastic_pop_drop

-
Good Luck Trading
UCSgears
Remove from Favorite Scripts Add to Favorite Scripts
// Developed by Jake Bernstein
// Modified by David Steckler - Includes ADX Confirmation
// Modified by UCSgears - Optional Volume Confirmation
// Coded by UCSgears - Stochastic Pop and Drop Version 1

study(title="UCS_Stochastic Pop and Drop", shorttitle="UCS_JB SPOD", overlay = true)

// Input - Options
vlen = input(100, title="Volume Average Length")
vconf = input(true, title = "Volume Confirmation", type=bool)
steck = input(true, title = "David Steckler Modification", type=bool)
psl = input(true, title = "Plot Stop Loss", type = bool)

// Trading Bias
tbk = sma(stoch(close, high, low, 70), 3)
tbbull = tbk > 50
tbbear = tbk < 50

//Setup Definition
sdk = sma(stoch(close, high, low, 14), 3)
sdl = sdk > 80 and sdk[1] < 80
sds = sdk < 20 and sdk[1] > 20

// ADX Confirmation
up = change(high)
down = -change(low)
trur = rma(tr, 14)
plus = fixnan(100 * rma(up > down and up > 0 ? up : 0, 14) / trur)
minus = fixnan(100 * rma(down > up and down > 0 ? down : 0, 14) / trur)
sum = plus + minus 
adx = 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), 14)
adxc = adx < 20

// Volume Confirmation
volma = sma(volume, vlen)
volconf = volume > volma

// Setup Long 
sl = (steck and vconf) ? volconf == 1 and adxc == 1 and sdl == 1 and tbbull == 1 : (steck ==1 and vconf != 1) ? adxc == 1 and sdl == 1 and tbbull == 1 : (steck !=1 and vconf == 1) ? volconf == 1 and sdl == 1 and tbbull == 1 : sdl == 1 and tbbull == 1
// Setup Short
ss = (steck and vconf) ? volconf == 1 and adxc == 1 and sds == 1 and tbbear == 1 : (steck ==1 and vconf != 1) ? adxc == 1 and sds == 1 and tbbear == 1 : (steck !=1 and vconf == 1) ? volconf == 1 and sds == 1 and tbbear == 1 : sds == 1 and tbbear == 1

plotchar(sl, title="Long Setup", char='⇑', location=location.belowbar, color=green, transp=0, text="SPOD Long")
plotchar(ss, title="Short Setup", char='⇓', location=location.abovebar, color=red, transp=0, text="SPOD Short")

bc = sl == 1 ? green : ss == 1 ? red : na
barcolor(bc)
bgcolor(bc)

// Stop Loss
parsar = psl ? sar(0.02, 0.02, 0.2) : na
sc = psl and parsar < close ? green : red
plot(psl ? parsar : na, color=sc, linewidth = 2, style = circles)
craunico PRO
2 years ago
I was thinking he used 70 and 30 for the Stochastic. He was buying above 70 and selling below 30, not quite the standard way most people trade the stochastic.
Reply
craunico PRO
2 years ago
I do like what you have shared very much. Thanks again
Reply
craunico PRO
2 years ago
Yeah, I just went back and looked at it. He exclaims most traders buy below 25 or 30 and sell above 75 or 80. In his Day trading book on The Stochastic Pop, his approach is exactly the opposite than this. His POP method generates a buy signal when the stochastic indicator is overbought and a sell signal when its oversold. HIs rules are: Use a 9-period slow stochastic %K only with 3-bar smoothing. • Use upper and lower boundaries of 30 percent and 70 percent. • When %K crosses above 70 percent on the close of any bar, then buy on close of that bar. • When %K crosses below 30 percent on the close of any bar then sell short on the close of that bar. • Exit long when %K. crosses back below 70 percent. • Exit short when %K crosses back above 30 percent. • Or use a trailing stop loss once you have a profitable position. ade only during the active portion of the contract in futures and only in actively traded stocks (i.e., average of 1 million shares daily). • Exit trades by the end of the day or on trailing stops or price spikes caused by news or overreactions due to other factors.
Reply
ucsgears PRO craunico
2 years ago
cool
Reply
Ideas Scripts Chart
United States
United Kingdom
India
España
Italia
Brasil
Россия
Türkiye
日本
한국
Home Stock Screener Economic Calendar How It Works Chart Features House Rules Moderators For the WEB Widgets Stock Charting Library Priority Support Feature Request Blog & News FAQ Help & Wiki Twitter
Private Messages Chat Ideas Published Followers Following Priority Support Public Profile Profile Settings Billing Sign Out