I've just ran a quick backtest where DO starts with the ideal rounded positions instead of zeros, the PnL and Sharpe stayed roughly the same, but the number of trades jumped from 6558 to 8631, so by 30%.. The overall costs also jumped, but apparently a slightly higher return compensated for it? I wouldn't trust my costs 100%, but the number of trades should be somewhat reliable in my backtest..
Also, it seems that my margin usage and net exposure went up somewhat (I'll double check it just in case..): original DO with starting zero weights (margin usage then notional exposure): New DO where with starting rounded ideal weights:
Btw, how do you calculate tracking error in percentage? I normally calculate tracking error in currency, e.g. an actual value could be 1,077$, how would you convert it to % ? I see 2 options: - divide 1077$ by my system's base capital (e.g. 300,000$) - or divide 1077$ by the total notional cost of my current portfolio (e.g. I might currently own 3 contracts with the notional 300k each and 2 contracts with the notional 400k each, so the total notional value of my portfolio is 3*300k + 2*400k=1.7million, so I'll divide 1,077$ by 1.7mil). (Even with the first option my tracking error is mostly under 1%, but I'll rerun the backtest to double-check..)
For me, SR is about 10% better for the modified version. That's all after costs, for exact same set of instruments and forecasts. I use Rob's method of having everything in weights. At that point in the process (DO stage), I don't want to have to deal with exchange rates and stuff. So I think that's your Option 1. Interesting that your tracking error is much lower, mine hovers around 3-4% almost all the time, sometimes dips below 3%.
Good Morning globalarbtrader, Yes, I agree with you. $50K is needed for 1 or 2 trading systems if running the future instruments. How many systems are you running in your portfolio? How do you know when a system not work anymore to make you money?
hmm, interesting.. I reran my backtest, there was a small error, but the result didn't change much, still the number of trades and margin\notional usage gets ~35% higher, when starting from the rounded weights... You're not seining an increase in the number of trades\capital usage? I run this backtest with 37 instruments, 15-30y of data, at 300k capital. The DO tracking-error threshold below which I don't reoptimize comes out to 956.25$, which is 0.3% of the base capital., My actual tracking error hovers around 1.1k, or 0.35% of the base capital., although I do see a decrease in the average tracking error from 0.359 to 0.327 when using rounded weights as a start tracking error from zero vs from rounded: Btw, the way I calculate (gap)portfolio sigma (tracking error) is this: var weightedStds = new List<double>(stdWeightInfo.Select(stw => stw.stDev * ( (Math.Abs(stw.unitPriceUSD) * stw.unitsBought) / totPortfPriceUSD ) )); var varience = (weightedStds * correlationMatrix * weightedStds.Transpose())[0, 0]; var sigmaUsd = Math.Sqrt(varience) * totPortfPriceUSD; so weightedStds is a vector of instruments' standard deviations multiplied by the proportion of that instrument(by notional) in the current portfolio..
Hello globalarbtrader, Those trading systems you have and have been talking about. How many trading systems do you run together? And do you wish you can just have 1 trading system? Thank you,
Our tracking errors could be different because mine is "daily" and maybe yours is "annual", I feed daily standard deviations into the calculations, if I convert it to annual (0.359*16=5.7%) it becomes much closer to yours.. (also, compared to my regular target daily risk, which is 4687.5$, my tracking error of ~1.1k is actually not that small..)