The Motley Fool Discussion Boards

Previous Page

Investing/Strategies / Mechanical Investing

URL:  http://boards.fool.com/drbob2-tpotos-original-radiscript-includes--30525030.aspx

Subject:  Re: New screen - votes needed Date:  2/5/2013  3:04 AM
Author:  rgearyiii Number:  241427 of 251809

DrBob2,

tpoto's original RadiScript includes:

...
Create [10DV] :[SI Volume--Average Daily 10d]
Create [3MDV] :([SI Volume--Average Monthly 3m]/21)
Create [26W] :[SI Price Change 26 week]
Create [VR] :([10DV]-[3MDV])/[3MDV]
...
Create [SORT] :([26W]/[3MDV])*[VR]
...
Sort Descending [SORT]



It looks like you mistranslated this into "English" when you wrote


VR = [(Average 10-day volume) - (Average 3-mon daily volume)] / (Average 3-mon daily volume)

VR is the normalized recent increase in volume

Final sort, descending:
(26wk change) / [(Average 3-mon daily volume) x VR]



According to the RadiScript, [26W] is first divided by [3MDV] and the result is then multiplied by [VR], meaning the whole thing is proportional to [VR]. Your expression, however, is inversely proportional to [VR]. Consequently, the screen has been inaccurately characterized as rewarding drops in volume, when really it rewards rises in volume.

And by the way, this will make RayVT smile: The CAGR for the 5-stock 20-day hold variant collapses from 51 to 30 (and GSD stays at about 37) when you replace SI Pro data with VL data where possible (using the Expanded Edition). VL+'s coverage of the market isn't quite as thorough as SI Pro's, but the 5-stock screen still picks an average of 4 stocks, versus 4.6 for the SI Pro version. (I tested in "shrink" mode to keep the comparison as fair as possible.)

http://gtr1.backtest.org/2011/?s::pprc:al8:av10.a:al30000:pi...
Create [P2FCF]: [[[daily VL+-adjusted Price; share_lag=1 days; quote_lag=1 days]*[VL+ Common Shares Outstanding; lag=1 days]]/[VL+ Free Cash Flow; lag=1 days]]
Create [VR]: [[1*[Actual Average daily Vol 10d; lag=1 days] - 1*[Actual Average daily Vol 63d; lag=1 days]]/[Actual Average daily Vol 63d; lag=1 days]]
step0: [daily VL+-adjusted Price; share_lag=1 days; quote_lag=1 days] >= 8
step1: [Actual Average daily Vol 10d; lag=1 days] >= 30000
step2: [VL+ % Institutional Holdings; lag=1 days] != null
step3: [VL+ % Institutional Holdings; lag=1 days] <= 70
step4: [SI Float; lag=1 days] != null
step5: [SI Float; lag=1 days] <= 20
step6: [[daily VL+-adjusted Price; share_lag=1 days; quote_lag=1 days]*[VL+ Common Shares Outstanding; lag=1 days]] >= 100
step7: [VL+ % EPS Chg vs Yr Ago (Regularized); lag=1 days] > 0
step8: [VL+ Sales Growth 1-Year; lag=1 days] > 0
step9: [P2FCF] > 0
step10: [P2FCF] <= 20
step11: [SI ADR/ADS Stock; lag=1 days] == 0
step12: [SI Industry; lag=1 days] != 933,1106
step13: [[0.01*[SI Industry; lag=1 days]] as Integer] != 7
step14: [mkt Days Since security Opened for purchase] >= 127
step15: [Total Return % over 126 days; lag=1 days] > 0
step16: [Total Return % over 20 days; lag=1 days] > 0
step17: [Total Return % over 63 days; lag=1 days] > 10
step18: [[[Total Return % over 126 days; lag=1 days]/[Actual Average daily Vol 63d; lag=1 days]]*[VR]] Top param0; Long, Cash When None
Holding period = 20 mkt days; Fully rebalance every 1 periods


On the other hand, this will make tpoto happy: The CAGR/GSD for the 5-stock 20-day hold improves from 51/38 to 62/36 in GTR1 backtests when you get rid of the following steps from your RadiScript definition:

Keep :[SI Price/Sales]>0
Keep :[SI Price/Sales]<=3
Keep :AND([SI Industry]<>"0933-RealEstateOperations",[SI Industry]<>"1106-Airlines")
Keep :[SI Price Change 4 week]>0
Keep :[SI Price Change 13 week]>10

Furthermore, this simplified version has no trouble picking 10 stocks most of the time. Here is the GTR1 link:

http://gtr1.backtest.org/2011/?s::sprc:al8:av10.a:al30000:sh...
Translation
Create [VR]: [[1*[Actual Average daily Vol 10d; lag=1 days] - 1*[Actual Average daily Vol 63d; lag=1 days]]/[Actual Average daily Vol 63d; lag=1 days]]
step0: [daily SI-adjusted Price; share_lag=1 days; quote_lag=1 days] >= 8
step1: [Actual Average daily Vol 10d; lag=1 days] >= 30000
step2: [SI Institutional Ownership %; lag=1 days] != null
step3: [SI Institutional Ownership %; lag=1 days] <= 70
step4: [SI Float; lag=1 days] != null
step5: [SI Float; lag=1 days] <= 20
step6: [[daily SI-adjusted Price; share_lag=1 days; quote_lag=1 days]*[SI (d) Common Shares Outstanding; lag=1 days]] >= 100
step7: [SI EPS Q1; lag=1 days] != null
step8: [SI EPS Q5; lag=1 days] != null
step9: [1*[SI EPS Q1; lag=1 days] - 1*[SI EPS Q5; lag=1 days]] > 0
step10: [SI Sales Q1; lag=1 days] != null
step11: [SI Sales Q5; lag=1 days] != null
step12: [1*[SI Sales Q1; lag=1 days] - 1*[SI Sales Q5; lag=1 days]] > 0
step13: [[daily SI-adjusted Price; share_lag=1 days; quote_lag=1 days]/[SI Free Cash Flow/Share 12m; lag=1 days]] > 0
step14: [[daily SI-adjusted Price; share_lag=1 days; quote_lag=1 days]/[SI Free Cash Flow/Share 12m; lag=1 days]] <= 20
step15: [SI ADR/ADS Stock; lag=1 days] == 0
step16: [[0.01*[SI Industry; lag=1 days]] as Integer] != 7
step17: [mkt Days Since security Opened for purchase] >= 127
step18: [Total Return % over 126 days; lag=1 days] > 0
step19: [[[Total Return % over 126 days; lag=1 days]/[Actual Average daily Vol 63d; lag=1 days]]*[VR]] Top param0; Long, Cash When None
Holding period = 20 mkt days; Fully rebalance every 1 periods


Robbie Geary
Copyright 1996-2014 trademark and the "Fool" logo is a trademark of The Motley Fool, Inc. Contact Us