A matter that has been in years source of contrast between quantitative analysts and developers of system trading is the question if a trading system must be optimized on every financial tool or if it is necessary to individualize a set of parameters working on more markets, if possible not correlated among them. Given the clear difficulty to individualize the most universal rules it often results more convenient for some to sustain that it needs to individualize specific rules or inputs for every market. On the base of years of experience matured in systematic trading on futures and stocks we take side with half road between the two tides of thought, and an example will help us to illustrate our philosophy. To plan a winning trading system is an activity that can be compared to the planning of a motor competition. To aim at winning a world’s championship needs to get more scores than anyone else: it is not essential to win all the races, but surely a great constancy of output is needed on all the circuits and in different conditions of asphalt, temperature and climate. The good way to reach this objective is to have a fast car but easy to be set intervening only on few parameters passing from a circuit to the other. At every race drivers and technicians have at disposal just two days of testing to find the correct order that allows them to go faster than the others and to beat the competition. If you have a car that well adapts to every condition of environment and speedway all it takes is acting on few parameters to be competitive so that you’ll quickly succeed to find the correct settings in the little time at disposition. Contrarily if you have a very sophisticated car, very sensitive to the parameters or projected in a very specific way with highly technical characteristics (for example with the engine power curve and aerodynamics fitted for being fast in the circuits with elevated hourly average) you’ll risk then to be in great difficulty with finding the right setting in the little time in your disposition especially on the circuits that badly suit the characteristics of the car (city circuits, tortuous speedways, etc.).

In a competition that lasts 9 months it is not important to win in some occasions with great advantage on the adversaries if then in the greatest part of the other challenges you cut the finishing line in back positions. In the world of trading the season never has end and is important to have flexible strategies that allow us to be able to produce results the most constant possible in every condition of market. To earn the 30% one year, but to lose the 25% the following one means to return to an inferior amount of money than that possessed at the time of the departure.


The same principle of the motor competitions can be transferred to the development of a trading system. The carrying structure of the strategy has to be the same for many financial tools and, with parity of the parameters, the mathematical expectancy must be positive. On every market it will be then advisable the setting of some parameters (like the setting of the run car characterized by the incidence of the ailerons, regulation of dampers, the differential, etc.) suiting them to the peculiar characteristics of the curve to trade. As in the motor competitions the car doesn’t change for every circuit but only some settings, the same we will do in the trading.


We take for example the following strategy that we will denominate Velociraptor 1.2. The leading idea is trying to catch a directional movement of the markets exploiting the angular coefficient of the Adx: when the Adx inclination increases we take a stand. As we know the Adx it is not an indicator of direction but of intensity of the trend: it doesn’t indicate us in what side of the market we must take position. The purchasing condition is given by a nine period inclination of the simple moving average that’s higher of the inclination of the simple moving average on 25 periods and by the Macd that must be higher of its own exponential moving average on 10 periods.

Vice versa an angular coefficient of the 9 period simple moving average smaller than that on 20 and a smaller Macd than its own 10 periods exponential moving average define the order to open a short position while opening the following bar. The Macd also determines the decision of closing the position; if the Macd is inferior to its exponential average we close the long position, vice versa if we are in a short position and the Macd is higher to its moving average we get out of market.


We programmed this simple strategy in easy Language[1] and we tested it on five future markets with very different characteristics among them: Bund, cross Euro-dollar, Mini-Russell, Mini-S&P, Eurostoxx50[2]. We have gotten a profict factor of portfolio equal to 1,88 and an adjusted profict factor of 1,61. The percentage of success is very high, it overcomes 70%, even if this goes to damage the ratio average win / average loss that is broadly inferior to 1. The portfolio equity curve, calculated on a theoretical capital of departure of 100.000 $ it is very regular and only around the trade number 200 it suffers an important point of arrest with a drawdown that reaches 12%. The values of the risk-output indicators as K-ratio and Sharpe ratio are discreet while the global efficiency of the system is broadly positive. The best results are gotten on the Eurostoxx50 that reaches a profit factor of 2,61, while the “black sheep” of this strategy is the Euro that gets a positive performance even if of little.


Therefore the base of the strategy appears very solid: on whole 2 markets among 5 (mini-S&P and mini-Russell) the same set of parameters has been used, while on the lasting three have been varied from 1 to 2 parameters. All the parameters we used are explained beside in the schedule next to the relative futures. The base of the strategy (the chassis) is therefore solid and in such cases can serve as carrying column for following adaptations that the specificities of the single markets require especially in terms of risk and money management.

Every market has in fact specific characteristics of volatility and, despite the globalization has increased the correlations among the markets, each of these is otherwise influenced by the volumes, by the efficiency of the exchanges, by the publication of the macroeconomic data and by the schedules of negotiation. Therefore when has been individualized a standard chassis we must suit some parameters for the characteristics of the single circuit-market so that to make it more efficient. In the result of a trading system is fundamental to integrate it with a good strategy of money management that always allows to hold the risk under control. In the case we’re examinating it misses a part of management of the risk of portfolio. A bearable historical drawdown or passed losses that have never been elevated are not enough to make us able to avoid whatever event producing great losses, especially when we are reasoning on a daily strategy that produces a quite little number of signals and not always statistically meaningful. This means that the “worst case scenario” is always behind the angle and a trading system must be able to face whatever type of unforeseen event and not leave us at mercy of the market waiting for receiving an exit signal the day following… For example it happens that, despite the ts Velociraptor 1.2. in its rising version is not an overfitted system, in recent times it have had to face its maximum adverse excursion entirely without a risk control. It opens a long position, the market instead of rising goes down (fig. 2); but is not sensational that the system has taken a wrong direction, because it happens to whatever trading system: serious instead is that the potential loss comes to overcome the maximum historical drawdown without a limit to the losses that could assume enormous proportions in comparison with the capitalization or with the past profits. Therefore don’t forget that whatever instrument we use must have good “brakes” to face whatever type of unforeseen event especially if the car is powerful and the speedway dangerous.



Velociraptor 1.2.

Enrico Malverti © 2008

Easy Language

Time frame: Daily


Operatività: Overnight

web: www.enricomalverti.com, email: info@enricomalverti.com



Input: Period(30), Len(1), Period2(9), Period3(20);

Vars: Acceleraz1(false), Acceleraz2(false),   ave(0);


Ave = XAverage(MACD(C, 10, 25), 10);

If adx(Period) <> 0 and adx(Period)[Len] <> 0 Then begin

value1  = (absvalue(ADX(Period) – ADX(Period)[Len])/ADX(Period)[Len])*100;


if AVerage(C, period2)[Len] <> 0 and Average(C, Period2) <> 0 then

value2 = (absvalue(Average(C, Period2)-Average(C, period2)[Len])/ AVerage(C, period2)[Len])*100;


if AVerage(C, period3)[Len] <> 0 and Average(C, Period3) <> 0 then

value3 = (absvalue(Average(C, Period3)-Average(C, period3)[Len])/ AVerage(C, period3)[Len])*100;


if value1 > value1[1]*3 Then Begin

if value2 > value3 and MACD(C, 10, 25) < Ave then Buy next bar {Highest(H, 5) Limit}O;

if value2 < value3 and MACD(C, 10, 25) > Ave Then Sell next bar {Lowest(L, 5) Limit}O;




else value1 = 0;

if Marketposition = 1 and MACD(C, 10, 25) > Ave Then ExitLong (“LX”) next bar at market;

if Marketposition = -1 and MACD(C, 10, 25) < Ave Then Exitshort (“sX”) next bar at market;

[1] Also available in EFS (eSignal Formula Script).

[2] We’ve not subtracted commissions and slippage.

Portfolio Evaluator Report – Velociraptor 1.2 (04/01/1994-28/04/2008)
System Analysis
Net Profit $241.622,4993 Open Position ($500,0000)
Gross Profit $517.662,4989 Interest Earned $15.620,4852
Gross Loss ($276.039,9996) Commission Paid $0,0000
Percent profitable 71,53% Profit factor 1,88
Ratio avg. win/avg. loss 0,75 Adjusted profit factor 1,61
Annual Rate of Return 9,59% Sharpe Ratio/Semideviation 0,90 / 0,88
Return on Initial Capital 241,62% Return Retracement Ratio 4,14
Return on Max. Drawdown 510,40% K-Ratio 3,88
  (Sharpe Ratio  with equity on monthly data)
Buy/Hold return N/A RINA Index 204,71
Cumulative return 241,62% Percent in the market 63,65%
Adjusted Net Profit $185.430,9014 Select Net Profit $306.382,4997
Adjusted Gross Profit $487.211,7637 Select Gross Profit $508.412,4989
Adjusted Gross Loss ($301.780,8623) Select Gross Loss ($202.029,9992)
Total Trade Analysis
Number of total trades 404 Avg. trade (%) 0,65%
Average trade $598,0755 Avg. trade ± 1 STDEV $3.379,6877 / ($2.183,5367)
1 Std. Deviation (STDEV) $2.781,6122 Coefficient of variation 465,09%
Maximum Run-up $10.250,0000 Max. Run-up Date 10/02/2004
Average Run-up $1.907,2901 Avg. trade ± 1 STDEV $3.644,9038 / $169,6764
1 Std. Deviation (STDEV) $1.737,6137 Coefficient of variation 91,10%
Maximum Drawdown ($22.500,0003) Max. Drawdown Date 22/01/2008
Average Drawdown ($2.351,5988) Avg. trade ± 1 STDEV $0,0000 / ($5.413,8297)
1 Std. Deviation (STDEV) $3.062,2309 Coefficient of variation 130,22%
Reward/Risk Ratios
Net Prft/Largest Loss 14,21 Net Prft/Max Drawdown 10,74
Adj Net Prft/Largest Loss 10,91 Adj Net Prft/Max Drawdown 8,24
Outlier Trades Total Trades Profit/Loss
Positive outliers 1 $9.250,0000
Negative outliers 6 ($74.010,0004)
Total outliers 7 ($64.760,0004)
Efficiency Analysis
Total Efficiency
Average Total Efficiency 26,42% Avg. trade ± 1 STDEV 72,84% / -19,99%
1 Std. Deviation (STDEV) 46,42% Coefficient of variation 175,66%
Entry Efficiency
Average Entry Efficiency 52,67% Avg. trade ± 1 STDEV 83,70% / 21,65%
1 Std. Deviation (STDEV) 31,03% Coefficient of variation 58,90%
Exit Efficiency
Average Exit Efficiency 73,75% Avg. trade ± 1 STDEV 96,97% / 50,54%
1 Std. Deviation (STDEV) 23,21% Coefficient of variation 31,48%
Portfolio Evaluator Report – Velociraptor 1.2 (04/01/1994-28/04/2008)
Portfolio Overview
# Name Market Start






Weight Net



of Trades

1 Bund ALLFGPER 04/01/1994 28/04/2008 100000,0000 1 29100,0000 95
2 Euro ALLCME6EPE 24/01/2000 28/04/2008 100000,0000 1 23250,0000 52
3 Eurostoxx ALLEUSTMA 04/01/1999 28/04/2008 100000,0000 1 79079,9985 101
4 Mini Russell ALLMRUSS 01/07/2002 28/04/2008 100000,0000 1 58420,0007 50
5 Mini S&P ALLSSPER 15/06/1995 28/04/2008 100000,0000 1 51772,5001 106
Performance Ratios
# Name Market RINA







Avg Trade/







1 Bund ALLFGPER 76,05 0,36 € 306,32 N/A 1,52 63,16%
2 Euro ALLCME6EPE 36,69 0,44 € 447,12 N/A 1,26 69,81%
3 Eurostoxx ALLEUSTMA 84,92 0,80 € 782,97 N/A 2,61 74,26%
4 Mini Russell ALLMRUSS 63,58 0,96 € 1.168,40 N/A 2,17 76,00%
5 Mini S&P ALLSSPER 120,65 0,89 € 488,42 N/A 2,54 74,53%
Equity Curve Analysis
# Name Market Max. Equity


Max. Equity


Max. Equity


Max. Equity


Avg. Monthly


Std. Dev.

of Returns

1 Bund ALLFGPER (19340,0000) 33,93% 40520,0000 238,07% 169,1860 1473,1532
2 Euro ALLCME6EPE (27250,0000) 98,20% 58000,0000 11600,00% 227,5000 3752,1198
3 Eurostoxx ALLEUSTMA (15999,9996) 31,13% 85139,9981 446,23% 706,0714 2556,2131
4 Mini Russell ALLMRUSS (24420,0004) 37,71% 61900,0009 312,94% 834,5714 3511,5659
5 Mini S&P ALLSSPER (9225,0001) 16,21% 53852,5008 270,41% 334,0161 1259,2001
Market Period Len Period2 Period3
Eurostoxx 10 1 9 25
Euro 30 1 9 20
Bund 30 1 9 20
Mini Russell 15 1 9 25
Mini S&P 15 1 9 25