StockFetcher Forums · Filter Exchange · Filter based on price and volume<< 1 2 3 >>Post Follow-up
SAFeTRADE
413 posts
msg #52261
Ignore SAFeTRADE
6/16/2007 10:31:05 AM

My attempt at a filter based on price and volume. I have used OBV(30) and compared it to Shares Outstanding. The buy signal is a new 55 day high and the sell signal is a new 13 day low. This is intended to be a long term filter. I made .75 the cut off point for "turn" but that can be changed easily. I then go to Yahoo to check out Float. Four stocks have extremely high %short. They are LEND @ 73%, DNDN @ 50%, FED @ 57% and OVTI @ 38%. A lot in the 20%'s. Anyway I am still tweaking this effort.

Fetcher[
set{turnvol30, obv(30) / 1000000}
set{turn30, turnvol30 / shares outstanding}
set{totvol10, average volume(10) * 10}
set{turnvol10, totvol10 / 1000000}
set{turn10, turnvol10 / shares outstanding}
close > 5
volume > 450000
ma(50) > ma(300)
shares outstanding < 100
turn30 > .75
add column turn30{turn30%}
/* add column turn10{t10%} */
add column shares outstanding{sh/out}
add column turnvol30
/* add column turnvol10 */
draw macd(12,26)
draw adx(14)
sort column 5 descending

set{55mult, count(high reached a new 55 day high in the last 1 day,60)}
set{55/2day, count(high reached a new 55 day high in the last 1 day,1)}
set{13low, count(close reached a new 13 day low in the last 1 day,1)}
draw 13low on plot 55/2day
add column 55mult
add column 55/2day
do not draw turn30
draw ma(50)
draw ma(20)
draw ma(10)
]



55mult is how many new 55 day highs have occurred in the last 60 days and 55/2day is a new 55 day high today. I have only used price and volume to find stocks and use MACD and ADX as guides. I think this is about as close as I can come to float turn until SF makes Float available.

SAFeTRADE
413 posts
msg #52280
Ignore SAFeTRADE
6/18/2007 1:19:21 PM

Added an ATR(20) breakout to the filter. When the close today is .80 greater than the close yesterday it signals a possible buy. Look at stocks where there is an ATR(20) breakout right after a 13 day low is hit. A 13 day low is a signal to exit in this filter. Very interesting. Anyway I think this gives another confirmation to a buy signal. I added moving averages of 4 day, 9 day, and 18 day. A buy signal would also have the 4 and 9 day moving averages above the 18.

Fetcher[
set{turnvol30, obv(30) / 1000000}
set{turn30, turnvol30 / shares outstanding}
set{totvol10, average volume(10) * 10}
set{turnvol10, totvol10 / 1000000}
set{turn10, turnvol10 / shares outstanding}
set{atramt, atr(20) * .80}
set{atrpvt, close yesterday + atramt}
set{atrbo, count(close > atrpvt,1)}
close > 5
volume > 450000
ma(50) > ma(300)
shares outstanding < 100
turn30 > .75
add column atrpvt
add column separator
add column turn30{turn%}
/* add column turn10{t10%} */
add column shares outstanding{sh/out}
add column turnvol30{turnvol}
add column separator
/* add column turnvol10 */
draw macd(12,26)
draw adx(14)
sort column 7 descending

set{55mult, count(high reached a new 55 day high in the last 1 day,60)}
set{55/2day, count(high reached a new 55 day high in the last 1 day,1)}
set{13low, count(close reached a new 13 day low in the last 1 day,1)}
draw 13low on plot 55/2day
draw atrbo
add column 55mult
add column 55/2day
add column atrbo
add column separator
do not draw turn30
do not draw ma(50)
do not draw ma(300)
draw ma(18)
draw ma(9)
draw ma(4)
]



SAFeTRADE
413 posts
msg #52334
Ignore SAFeTRADE
6/19/2007 8:16:00 PM

Added lines for "turn" and "risk%". Also added Money Management. Bought FSLR based on yesterday's scan. Bought the amount recom'd by the scan. Still tweaking.

Fetcher[
set{turnvol30, obv(30) / 1000000}
set{turn30, turnvol30 / shares outstanding}
/* set{totvol10, average volume(10) * 10}
set{turnvol10, totvol10 / 1000000}
set{turn10, turnvol10 / shares outstanding} */
close > 5
volume > 450000
ma(50) > ma(300)
shares outstanding < 100
high reached a new 55 day high in the last 1 day
add column rsi(14){rsi14}
add column separator
add column turn30{turn%}
/* add column turn10{t10%} */
add column shares outstanding{sh/out}
add column turnvol30{obv30}
/* add column turnvol10 */

draw adx(14)
draw riskval on plot turnval
draw rsi(14) on plot turnval
sort column 10 ascending

set{55mult, count(high reached a new 55 day high in the last 1 day,60)}
set{55/2day, count(high reached a new 55 day high in the last 1 day,1)}
set{13low, count(close reached a new 13 day low in the last 1 day,1)}
draw 13low on plot 55/2day
add column 55mult
add column 55/2day
do not draw turn30
set{line, 68}
draw line on plot turnval



/**************************************************************************/

/* MONEY MANAGEMENT MONEY MANAGEMENT MONEY MANAGEMENT MONEY MANAGEMENT */

/**************************************************************************/


/* stop is 2 average trade ranges away from buy point */

set{stop, atr(20) * 2}
set{buystop, close - stop}
set{risk, stop / close}
set{risk%, risk * 100}
set{wager, 8000. * .0075}
set{equity, wager / risk}
set{shareqty, equity / close}
set{total, 2000. / close}
set{totals, total * close}


/* the end */


add column separator
/* add column stop */
add column risk%
add column separator
add column close{buy}
add column buystop
add column ceil(shareqty){Risk Qty}
add column equity{Risk Equity}
add column separator
add column ceil(total){pf Qty}
add column totals{pf equity}

set{turnval, indposition(turn30, 60) * 100}
set{riskval, indposition(risk%, 60) * 100}
]



SAFeTRADE
413 posts
msg #52388
Ignore SAFeTRADE
6/21/2007 2:51:45 PM

Added risk20, risk60 and risk180. To find a new trend look for risk20 to be below risk60 and risk180, sometimes only below risk60 does it. For a trend already in motion look for turnval to cross above riskval above 75. At least it looks that way to me. See what you think. I keep getting more ideas and keep tweaking.

Fetcher[

set{stop20, atr(20) * 2}
set{buystop20, close - stop20}
set{risk20, stop20 / close}
set{risk%20, risk20 * 100}

set{stop60, atr(60) * 2}
set{buystop60, close 60 days ago - stop60}
set{risk60, stop60 / close}
set{risk%60, risk60 * 100}

set{stop180, atr(180) * 2}
set{buystop180, close 180 days ago - stop180}
set{risk180, stop180 / close}
set{risk%180, risk180 * 100}


close > 15
volume > 450000
ma(50) > ma(300)
shares outstanding < 100
high reached a new 55 day high in the last 1 day

add column separator
add column turn30{turn}
add column turnvol30{obv30}
add column shares outstanding{sh/out}

add column separator
add column risk%20{r20}
add column risk%60{r60}
add column risk%180{r180}

draw risk%20 on plot risk%60
draw risk%180 on plot risk%60


set{turnvol30, obv(30) / 1000000}
set{turn30, turnvol30 / shares outstanding}

set{turnval, indposition(turn30, 60) * 100}
set{riskval, indposition(risk%20, 60) * 100}
draw riskval on plot turnval

set{55mult, count(high reached a new 55 day high in the last 1 day,60)}
set{55/2day, count(high reached a new 55 day high in the last 1 day,1)}
set{13low, count(close reached a new 13 day low in the last 1 day,1)}
draw 13low on plot 55/2day
draw adx(14)
draw macd(12,26)

add column separator
add column 55mult
add column 55/2day

chart-length is 6 months


/**************************************************************************/

/* MONEY MANAGEMENT MONEY MANAGEMENT MONEY MANAGEMENT MONEY MANAGEMENT */

/**************************************************************************/


/* stop is 2 average trade ranges away from buy point */

/* set{stop, atr(20) * 2}
set{buystop, close - stop}
set{risk, stop / close}
set{risk%, risk * 100} */

set{wager, 8000. * .0075}
set{equity, wager / risk20}
set{shareqty, equity / close}
set{total, 2000. / close}
set{totals, total * close}


/* the end */


/* add column separator */
/* add column stop */
/* add column risk%20 */
add column separator
add column close{buy}
add column buystop20{buystop}
add column ceil(shareqty){Risk Qty}
add column equity{Risk Equity}
add column separator
add column ceil(total){pf Qty}
add column totals{pf equity}
]



SAFeTRADE
413 posts
msg #52468
Ignore SAFeTRADE
6/24/2007 1:28:07 AM

Still tweaking. Look at what happens when turnval is at 100 and riskval is at 0.
I am looking at PWEI and CHRD. Added ADVal as confirmation.

Fetcher[
set{55dif, high 55 day high + low 13 day low}
set{midline, 55dif / 2}

set{55hline, high 55 day high}
set{13lline, low 13 day low}

set{55high, count(high reached a new 55 day high in the last 1 day,1)}
set{55mhigh, count(high reached a new 55 day high in the last 1 day,60)}
set{13low, count(close reached a new 13 day low in the last 1 day,1)}

set{clsline, close}
set{adval, INDPOSITION(accumulation distribution, 60) * 100 }

close > 15
volume > 450000
shares outstanding < 100
high reached a new 55 day high in the last 1 day

/* add column separator */

add column turn30{turn}
add column shares outstanding{s/o}
add column separator
add column adval
add column turnval{trnval}
add column riskval{rskval}
add column separator
add column 55mhigh{55mlt}


set{stop20, atr(20) * 2}
set{buystop20, close - stop20}
set{risk20, stop20 / close}
set{risk%20, risk20 * 100}


set{turnvol30, obv(30) / 1000000}
set{turn30, turnvol30 / shares outstanding}
set{turnval, indposition(turn30, 60) * 100}
set{riskval, indposition(risk%20, 60) * 100}
draw riskval on plot turnval
draw adval on plot turnval
draw 13low on plot 55high
draw adx(14,)
draw macd(12,26)
draw 55hline on plot 13lline
draw midline on plot 13lline
draw clsline on plot 13lline


/**************************************************************************/

/* MONEY MANAGEMENT MONEY MANAGEMENT MONEY MANAGEMENT MONEY MANAGEMENT */

/**************************************************************************/


/* stop is 2 average trade ranges away from buy point */

/* set{stop, atr(20) * 2}
set{buystop, close - stop}
set{risk, stop / close}
set{risk%, risk * 100} */

set{wager, 8000. * .0075}
set{equity, wager / risk20}
set{shareqty, equity / close}
set{total, 2000. / close}
set{totals, total * close}


/* the end */


/* add column separator */
/* add column stop */
/* add column risk%20 */
add column separator
add column close{buy}
add column buystop20{stop}
add column ceil(shareqty){R Qty}
add column equity{Rsk Eqty}
add column separator
add column ceil(total){pf Qty}
add column totals{pf eqty}

sort column 9 descending
]



Arooj
15 posts
msg #52469
Ignore Arooj
6/24/2007 6:03:11 AM

This is very interesting.

Thanks for sharing your efforts - there are some rather clever ideas embedded in this filter (some above my head ;-). I'm going to check the results the next couple of weeks; if some lightning strikes I'll be sure to share as well.

SAFeTRADE
413 posts
msg #52499
Ignore SAFeTRADE
6/25/2007 11:49:52 AM

Bought CHRD at the filter price and quantity. 73 shares @ 15.36. FSLR doing fine. Bought SPWR 13 shares @ 78.86. last week. All for now.

nikoschopen
2,824 posts
msg #52500
Ignore nikoschopen
modified
6/25/2007 12:05:55 PM

"Bought SPWR 13 shares @ 78.86"

How much do you realistically expect to make from 13 shares? I wouldn't exactly call this a proper money management, however correct it may be in theory. If you take commission into the equation, you'd know that you're in a sinking boat.

SAFeTRADE
413 posts
msg #52504
Ignore SAFeTRADE
6/25/2007 8:28:59 PM

Zero commission.

nikoschopen
2,824 posts
msg #52506
Ignore nikoschopen
6/25/2007 8:55:13 PM

Okay, impress me. Who's back are you scratching? ;)

StockFetcher Forums · Filter Exchange · Filter based on price and volume<< 1 2 3 >>Post Follow-up

*** Disclaimer *** StockFetcher.com does not endorse or suggest any of the securities which are returned in any of the searches or filters. They are provided purely for informational and research purposes. StockFetcher.com does not recommend particular securities. StockFetcher.com, Vestyl Software, L.L.C. and involved content providers shall not be liable for any errors or delays in the content, or for any actions taken based on the content.


Copyright 2016 - Vestyl Software L.L.C.Terms of Service | License | Questions or comments? Contact Us
EOD Data sources: DDFPlus & CSI Data Quotes delayed during active market hours. Delay times are at least 15 mins for NASDAQ, 20 mins for NYSE and Amex. Delayed intraday data provided by DDFPlus