Strategy portfolio on the Micro E-mini S&P 500
Three systematic strategies trading together on the MES, 10-minute chart. 2,906 simulated trades over 7.4 years, with the position closed at the end of the week.
Portfolio vs. MES
Cumulative portfolio result in points, with one contract per setup (3 contracts in total), versus the raw continuous MES series (unadjusted) multiplied by 3 to have the same exposure.
Performance by setup
Cumulative result of each of the three strategies. Click a setup to highlight it.
Statistics by setup
Same period and same order as the chart above.
| Setup | Side | Trades | Result (pts) | Max. drawdown (pts) | Result / DD | Profit factor | Win rate | Average per trade (pts) |
|---|---|---|---|---|---|---|---|---|
| Setup 01 | Long | 1024 | 3,916 | 466 | 8.4x | 1.29 | 51% | 3.8 |
| Setup 02 | Long | 906 | 3,896 | 590 | 6.6x | 1.27 | 57% | 4.3 |
| Setup 03 | Long | 976 | 2,768 | 253 | 10.9x | 1.34 | 57% | 2.8 |
Result by year
In index points, all strategies combined.
| Year | Trades | Result (pts) | Max. drawdown (pts) | Win rate |
|---|---|---|---|---|
| 2019 | 215 | 395 | 219 | 56% |
| 2020 | 459 | 1,964 | 639 | 58% |
| 2021 | 391 | 1,224 | 432 | 60% |
| 2022 | 434 | 560 | 943 | 48% |
| 2023 | 376 | 713 | 502 | 53% |
| 2024 | 373 | 1,771 | 729 | 57% |
| 2025 | 387 | 2,253 | 960 | 56% |
| 2026* | 271 | 1,700 | 566 | 54% |
* year in progress
Quarter-by-quarter result
26 of 30 quarters closed positive.
Month-by-month result
66 of 89 months closed positive. Hover over a bar to see the value.
Monthly map
In points. Green is a positive month, red is a negative one.
| Jan | Fev | Mar | Abr | Mai | Jun | Jul | Ago | Set | Out | Nov | Dez | Year | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2019 | -127 | 163 | 43 | 145 | 75 | 61 | 89 | -55 | 395 | ||||
| 2020 | 214 | -336 | 330 | 50 | 294 | 303 | 308 | 257 | 106 | 137 | 111 | 190 | 1,964 |
| 2021 | -57 | 195 | 34 | 407 | -190 | 302 | 23 | 344 | -184 | 297 | -344 | 396 | 1,224 |
| 2022 | -237 | 164 | 435 | 151 | -123 | -553 | 57 | 300 | 94 | 336 | 89 | -153 | 560 |
| 2023 | 215 | -54 | 241 | 69 | -118 | 267 | 11 | 75 | -346 | -92 | 350 | 93 | 713 |
| 2024 | 23 | 131 | 254 | 147 | 402 | 270 | 147 | 68 | -70 | 83 | 440 | -125 | 1,771 |
| 2025 | 104 | -39 | -265 | 369 | 577 | 78 | 335 | 283 | 182 | 439 | 194 | -4 | 2,253 |
| 2026 | -3 | 290 | 383 | 608 | 206 | 262 | 16 | -14 | -48 | 1,700 |
Result per trade
Average of 3.6 pts per trade, about 393 trades per year.
Source code of a strategy
An example for technical audit: a research strategy, outside the portfolio and with more modest performance than the three above. It is plain Python, with no libraries, and runs on any CSV of 10-minute bars of the MES. Each trade in the list can be checked against your own data.
05/2019 a 01/2023
- Trades
- 333
- Largest drop
- 197 pts
- Winning trades
- 56%
01/2023 a 09/2026
- Trades
- 334
- Largest drop
- 184 pts
- Winning trades
- 57%
# python mes.py (CSV: time,open,high,low,close,roll)
F="MES_M10.csv"
a,b,c,d,e=.01,.015,40,48,1050
L=open(F).read().splitlines()
H=L[0].split(",")
I=[H.index(k) for k in("time","open","high","low","close","roll")]
D={}
for s in L[1:]:
r=s.split(",")
t,o,h,l,x,z=[r[i] for i in I]
D.setdefault(t[:10],[]).append((t,int(t[11:13])*60+int(t[14:16])+10,float(o),float(h),float(l),float(x),z=="True"))
K=list(D)
n=S=0
for k in range(1,len(K)):
P,T=D[K[k-1]],D[K[k]]
if any(q[6] for q in T):continue
u=max(q[3] for q in P);v=min(q[4] for q in P)
if u<=v or len(T)<20 or not(T[0][2]-v)/(u-v)*100<c:continue
p=T[0][5];g=p*(1+a);s=p*(1-b);w=T[1][5]
for j in range(1,len(T)):
_,m,_,h,l,x,_=T[j]
if h>=g and l<=s:raise SystemExit(T[j][0])
if h>=g:w=g;break
if l<=s:w=s;break
w=x
if j>=d or m>=e or j==len(T)-1:break
print("%s;%.1f;%.1f;%.1f"%(T[0][0],p,w,w-p))
n+=1;S+=w-p
print(n,round(S))
Result in points, 1 contract, before costs. The simulation of the portfolio strategies follows the same entry, target, stop and exit mechanics; some have variations (such as a trailing stop and end-of-week exit) that do not appear in this example. The rules and parameters of the three strategies remain confidential.
Want to talk?
I present the work in detail to anyone who is interested.
Contact