I beat both of you jackasses to the punch, but it's not anything that I'd suggest anyone trades with a backtest like this: Long + Short Starting Capital $147,000.00 Ending Capital $181,279.61 Net Profit $34,279.61 Net Profit % 23.32% Annualized Gain % 8.63% Exposure 2.59% Number of Trades 101 Avg Profit/Loss $339.40 Avg Bars Held 136.57 Winning Trades 41 Winning % 40.59% Gross Profit $130,900.15 Largest Winning Trades $34,520.98 Avg Profit $3,192.69 Avg Bars Held 108.61 Max Consecutive 3 Losing Trades 60 Losing % 59.41% Gross Loss ($96,620.53) Largest Losing Trade ($15,601.52) Avg Loss ($1,610.34) Avg Bars Held 155.68 Max Consecutive 5 Max Drawdown ($97,930.51) Max Drawdown Date 10/14/2008 Max Drawdown % -45.05% Max Drawdown % Date 10/14/2008 APD 7.1314 APAD 67.0835 Wealth-Lab Score 183.0925 RAR 333.1836 MAR 0.1916 Profit Factor 1.3548 Recovery Factor 0.35 Sharpe Ratio 0.5534 Sortino Ratio 4.8168 Ulcer Index 13.0006 WL Error Term 6.986 WL Reward Ratio 1.2352 Luck Coefficient 10.8125 Pessimistic Rate of Return 1.0125 Equity Drop Ratio 0.6425 K-Ratio 0.0034 Seykota Lake Ratio 0.1 Expectancy 0.1076 Expectancy Score 2.2102 Max Losers Held 1 Max Winners Held 1 So, Scott, you ready to throw in the towel? This is exacly what you coded, and, you know what, it's crap. So quit. We may have established it's profitable, but it doesn't make much for the risk you're taking.
Here's the Hershey 5.0 script, everything is the same, BUT the entry logic. for Bar := 5 to BarCount - 1 do begin var SMADiff : float =(SMA( bar, #close , 20 ) - SMA( bar - 1, #close, 20 )); var MACDday : integer = MACDExSeries( #Close, val1, val2 ); if lastbar(bar) then begin lbar:=bar; end; if (bar>lbar+2) and (gettime(bar)<1600) and (@#Volume[bar]>20000) then begin if not (lastpositionactive) and (crossovervalue(bar,HersheyStochK,50)) then begin buyatmarket(Bar+1,'Jacks friend scott d says to buy here'); end; if not (lastpositionactive) and (crossundervalue(Bar,HersheyStochK,50)) then begin shortatmarket(Bar+1,'Jacks friend scott d says to sellshort here'); end; if (positionlong(lastposition)) and (@HersheyStochK[bar]<@HersheyStochD[bar]) and (crossundervalue(Bar,HersheyStochK,80)) then begin sellatmarket(Bar+1,LastPosition,''); end; if (positionshort(lastposition)) and (@HersheyStochK[bar]>@HersheyStochD[bar]) and (crossovervalue(Bar,HersheyStochK,20)) then begin coveratmarket(Bar+1,lastposition,''); end; if (positionlong(lastposition)) and (abs(@HersheyStochD[bar]-SMA(Bar,HersheyStochD,6))<1.4) then begin sellatmarket(Bar+1,LastPosition,''); end; if (positionshort(lastposition)) and (abs(@HersheyStochD[bar]-SMA(Bar,HersheyStochD,6))<1.4) then begin coveratmarket(Bar+1,LastPosition,''); end; end; end;
Apparently Jack believes this work is something worthy of such a prize, but I doubt it anyway. As you can see by the results in WL.
The long portion looks like this: Long Only Starting Capital $147,000.00 Ending Capital $147,224.87 Net Profit $224.87 Net Profit % 0.15% Annualized Gain % 0.06% Exposure 0.10% Number of Trades 51 Avg Profit/Loss $4.41 Avg Bars Held 9.12 Winning Trades 20 Winning % 39.22% Gross Profit $33,934.39 Largest Winning Trades $8,068.02 Avg Profit $1,696.72 Avg Bars Held 12.9 Max Consecutive 3 Losing Trades 31 Losing % 60.78% Gross Loss ($33,709.51) Largest Losing Trade ($4,387.50) Avg Loss ($1,087.40) Avg Bars Held 6.68 Max Consecutive 5 Max Drawdown ($19,392.14) Max Drawdown Date 9/8/2008 Max Drawdown % -12.03% Max Drawdown % Date 9/8/2008 APD 0.1947 APAD 74.9351 Wealth-Lab Score 50.3711 RAR 57.2612 MAR 0.0049 Profit Factor 1.0067 Recovery Factor 0.0116 Sharpe Ratio 0.0357 Sortino Ratio -0.0357 Ulcer Index 3.0327 WL Error Term 1.283 WL Reward Ratio 0.0461 Luck Coefficient 4.7551 Pessimistic Rate of Return 0.6626 Equity Drop Ratio 0 K-Ratio 0.0021 Seykota Lake Ratio 0.0143 Expectancy -0.1438 Expectancy Score -3.3571 Max Losers Held 1 Max Winners Held 1
And the short portion looks like this: Short Only Starting Capital $147,000.00 Ending Capital $181,054.74 Net Profit $34,054.74 Net Profit % 23.17% Annualized Gain % 8.58% Exposure 2.52% Number of Trades 50 Avg Profit/Loss $681.09 Avg Bars Held 266.58 Winning Trades 21 Winning % 42.00% Gross Profit $96,965.76 Largest Winning Trades $34,520.98 Avg Profit $4,617.42 Avg Bars Held 199.76 Max Consecutive 3 Losing Trades 29 Losing % 58.00% Gross Loss ($62,911.02) Largest Losing Trade ($15,601.52) Avg Loss ($2,169.35) Avg Bars Held 314.97 Max Consecutive 6 Max Drawdown ($97,930.51) Max Drawdown Date 10/14/2008 Max Drawdown % -45.09% Max Drawdown % Date 10/14/2008 APD 9.3247 APAD 63.216 Wealth-Lab Score 186.6756 RAR 339.9925 MAR 0.1902 Profit Factor 1.5413 Recovery Factor 0.3477 Sharpe Ratio 0.5663 Sortino Ratio 4.3838 Ulcer Index 12.9726 WL Error Term 6.316 WL Reward Ratio 1.3579 Luck Coefficient 7.4763 Pessimistic Rate of Return 1.0163 Equity Drop Ratio 0.6265 K-Ratio 0.0033 Seykota Lake Ratio 0.1002 Expectancy 0.0685 Expectancy Score 0.7681 Max Losers Held 1 Max Winners Held 1
Here's that farce of a system known as the Jack Hershey method. Start from page 1. Apparently they don't like experienced developers analyzing their crap for systems.
Not sure why this thread got no attention, because it's a perfect WL replica of the tradestation program that Scottd AKA Jack Hershey created in their thread. What does it show? Jack's system may be profitable, but it's not worth it on a risk adjusted basis. The entry and exit logic is identical, making this a valid backtest. The whole program is everything at wl4.wealth-lab.com in Hershey 5.0 script, save for the entry logic, which was modified for the script that wanted to use 5 minute ES bars. What's the verdict? His system is crap, and sucks on a risk adjusted basis. With a profit factor of about 1.3, no one should trade it IMO.