Fred Piard SA article featuring P123 screen

Florian,
These are not the best ETFs to use. Also you have a huge D/D. Slippage of 0.1% is ok for ETFs.
Also play with the conditions in the custom formula.

Fred, in his article, states he is ignoring trading costs for his 12% return from 2001 onward.

Hi together,

Just copied the formulae 1 to 1 from Georgs post. Still get a flat line for each screener I run. Then I went on to Florians screener and tried re-running it myself. Also get a flat line. Funny thing is, if I run my or Florians screener to get recommendations instead of running a back test, I do get the proper set of recommendations (IWM, MDY, QQQ).
https://www.portfolio123.com/app/screen/summary/166022?st=1&mt=9

I’m officially perplexed now.

Andreas,
What is your P123 membership level?

Georg,
I have designer level. should work, no?

Andreas - if you want to get this solved then you really need to make your custom formula public and post a link to it. It doesn’t matter what you think you copied, the problem can’t be reproduced unless we have everything that you are using. You gave a link to the screen but not the custom formula.

Thanks
Steve

Hi Steve,

thanks a lot for your help. The custom formula is here: https://www.portfolio123.com/user_formula_edit.jsp?formulaid=53497&s=1

here is link to Piard screen… 13.13% return, -23.97 DD, custom formulas,etc. all public

[url=http://]https://www.portfolio123.com/app/screen/summary/166041?st=1&mt=9[/url]

-debbie

Andreas - here is what I see for the formula:

Eval(Close(0,getseries(“#UNEMP”))>Close(3,getseries(“#UNEMP”)),1,0) + Eval(Close(0,#SPEPSCNY)

And when I try to copy it I get the following:

ERROR: Please enter a formula in the ‘Formula’ field

So it looks like there is a problem in your formula. Did you delete the carriage returns before pasting the formula?

Steve

Thanks Debbie - I think the problem lies with Andreas’ screen/custom formula.
Steve

Hi Steve,

that is very strange. I did delete the carriage returns. and when I go in the formula field I do get the full formula: Eval(Close(0,getseries(“#UNEMP”))>Close(3,getseries(“#UNEMP”)),1,0) + Eval(Close(0,#SPEPSCNY)<Close(20,#SPEPSCNY),1,0) + Eval(SMA(50,0,getseries(“$sp500”))<SMA(200,0,getseries(“$sp500”)),1,0) + Eval(sma(13,0,getseries(“SP500ShortIntAvg”))<sma(104,0,getseries(“SP500ShortIntAvg”)),1,0)

The funny thing is also, that when I take other peoples screens and formulas (e.g. Florians) I am not able to run them either. This seems to be a deeper problem somwhere in the algo of P123?

I suggest raising this as a bug with P123 then. (Separate post in the errors forum.)
Steve

I guess thats the only thing that comes to mind now. Thanks a lot for your help and lets see what the P123 team can find out about this!

Thanks for reading my article and sorry for the late answer. I don’t come often on this forum. MTS4 in a screen rule:
showVar(@MTS4,(close(0, #UNEMP)>close(3, #UNEMP))+(close(0,#SPEPSCNY)<close(13,#SPEPSCNY))+(sma(50,0,$sp500)<sma(200,0,$sp500))+(sma(52,0,getseries(“SPSI%Avg”))>sma(104,0,getseries(“SPSI%Avg”))))
With SPSI%Avg defined as a custom series in the S&P 500 Universe with weekly frequency:
UnivAvg(“1”,“SI%float”)
MTS4 components are timing indicators backed by research and common sense. Backtests a are just clues, especially when testing market timing on 2 recessions. Optimizing MTS4 makes little sense. This article was written with an open-source mindset. If you use or improve this concept and write about it, a reference to the original would be appreciated.

Right to the point, Fred!

A pity the data is limited to 1999. It would at least be helpful if P123 could make point in time data available further back in time - at least for the S&P500 stocks.
Cheers,
Florian

Just for the ones interested: The P123 team figured out what was going wrong with my sim - the custom series wasnt long enough. So in case you encounter a similar problem you now know where to look!

Georg - is this “Best7” model public?

John
The Best7 has nothing to do with Fred’s method.
http://imarketsignals.com/2016/trading-the-high-yield-low-volatility-stocks-of-the-sp500-with-the-im-hid-lov-7-system/

Except for hedging.


HiD-LoV-7 hedge.png


Cool, thanks. I love your imarketsignals site; you have some really interesting stuff on there.

Andreas, what do you mean by the custom series wasn’t long enough?

Hi Georg,

if I use the original Fred Piard approach…
Eval(Close(0,getseries(“#UNEMP”))>Close(3,getseries(“#UNEMP”)),1,0) + Eval(Close(0,#SPEPSCNY)<Close(20,#SPEPSCNY),1,0) + Eval(SMA(50,0,$sp500)<SMA(200,0,$sp500),1,0) + Eval(sma(13,0,getseries(“SP500ShortIntAvg”))<sma(104,0,getseries(“SP500ShortIntAvg”)),1,0)
… and your hedge entry and exit rules, I get slightly more hedge periods (see attached).

Did you alter the original formula?