Fibonacci: uno dei nomi mitici che risuona nel mondo dell’analisi tecnica. Per coloro ai quali non dicesse nulla consiglio questo articolo su Traderpedia che non stiamo a scimmiottare perché non c’è molto altro da dire.
Alle cose note aggiungiamo invece qualcosa di più particolare ed operativo ossia l’indicatore Fibonacci Retracement sviluppato da Omega Research System Trading and Development Club nel lontano 1999 da cui noi abbiamo ricavato il sorgente del trading system per successivi studi e approfondimenti del lettore.
L’indicatore è costruito partendo da un canale di massimi e minimi (il classico channel breakout) di cui viene calcolata la differenza e questa viene moltiplicata per il numero di Fibonacci 0.382. Questo valore viene chiamato Retracement e viene sottratto al canale superiore per ottenere il Plot2 e viene aggiunto al canale inferiore per ottenere il Plot3.
Oltre a questi viene plottato anche Plot1 come media mobile esponenziale a 15 periodi (che ai fini della strategia che testiamo sotto non viene usato).
L’indicatore come potete vedere nell’immagine a fianco può generare, a occhio, spunti operativi interessanti. L’occhio però a volte è traditore… Sono i numeri che contano… Proviamo a vedere se realizzando il “signal” la strategia di base (stop & reverse) guadagna o perde.
Testiamo il signal sul Dax30 a 60 minuti e anche dedotti 30 € di spese a trade, l’equity line sale in modo discreto, anche se con un decadimento dal 2008, periodo a partire dal quale gli Hft hanno alzato l’asticella molte logiche basate sull’analisi tecnica classica funzionano meno bene.
Il net profit raggiunge quasi i 400 mila € con un contratto dal 1997 1l 2013 (test in sample) con un profit factor di 1,25. L’average trade è capiente, supera i 160 € nonostante gli oltre 2300 €, per fare un confronto il Supertrend, che vediamo su tanti grafici sui social network, fa peggio.
La percentuale di successo invece fa capire quanto ci sia da lavorare per arrivare a un trading system tradabile: siamo infatti attorno a un 30%, è un valore molto basso che necessita di essere riequilibrato soprattutto agendo risk & money management e filtri operativi.
Test su fonte dati proprietaria tick by tick.
Strategy Performance Summary | |||
All Trades | Long Trades | Short Trades | |
Net Profit | 372524,999999999 | 248925 | 123600 |
Gross Profit | 2158316,25000001 | 1141888,75 | 1016427,5 |
Gross Loss | -1785791,24999999 | -892963,750000001 | -892827,500000001 |
Adjusted Net Profit | 246882,274385348 | 158278,835152194 | 36553,2032012707 |
Adjusted Gross Profit | 2077486,67121556 | 1083464,63899214 | 960559,591946083 |
Adjusted Gross Loss | -1830604,39683021 | -925185,803839943 | -924006,388744812 |
Select Net Profit | 5220,0000000132 | 85923,7499999989 | -80703,7500000009 |
Select Gross Profit | 1345782,50000001 | 741516,25 | 604266,25 |
Select Gross Loss | -1340562,49999999 | -655592,500000001 | -684970,000000001 |
Account Size Required | 58513,7500000005 | 63830,0000000002 | 48136,2500000001 |
Return on Account | 636,6452329581 | 389,9812000627 | 256,7711444078 |
Return on Initial Capital | 372,525 | 248,925 | 123,6 |
Max Strategy Drawdown | -62187,5 | -70040 | -52357,5 |
Max Strategy Drawdown (%) | -18,7362757217 | -20,6176614526 | -30,3012973259 |
Max Close To Close Drawdown | -58513,7500000005 | -63830,0000000002 | -48136,2500000001 |
Max Close To Close Drawdown (%) | -14,2147648956 | -18,9022313695 | -24,1836804839 |
Return on Max Strategy Drawdown | 5,9903517588 | 3,5540405483 | 2,3606933104 |
Profit Factor | 1,2086050091 | 1,2787627157 | 1,1384365961 |
Adjusted Profit Factor | 1,134863805 | 1,17107789 | 1,0395594702 |
Select Profit Factor | 1,0038938878 | 1,131062741 | -0,8821791465 |
Max # Contracts Held | 1 | 1 | 1 |
Slippage Paid | 69059,9999999941 | 34514,9999999993 | 34544,9999999993 |
Commission Paid | 0 | 0 | 0 |
Open Position P/L | -352,5 | -352,5 | n/a |
Annual Rate of Return | 23,0660583864 | 15,4129751932 | 7,6530831932 |
Monthly Rate of Return | 1,9221715322 | 1,2844145994 | 0,6377569328 |
Buy & Hold Return | 166823,552974164 | 164786,259668417 | 166823,552974164 |
Avg Monthly Return | 1908,5769230769 | ||
Monthly Return StdDev | 8042,6007924638 |
All Trades | Long Trades | Short Trades | |
Total # of Trades | 2301 | 1150 | 1151 |
Total # of Open Trades | 1 | 1 | 0 |
Number Winning Trades | 713 | 382 | 331 |
Number Losing Trades | 1588 | 768 | 820 |
% Profitable | 30,9865275967 | 33,2173913043 | 28,7576020851 |
Avg Trade (win & loss) | 161,8970013038 | 216,4565217391 | 107,3848827107 |
Average Winning Trade | 3027,0915147265 | 2989,237565445 | 3070,7779456193 |
Average Losing Trade | -1124,5536838791 | -1162,7132161458 | -1088,8140243903 |
Ratio Avg Win / Avg Loss | 2,6918159249 | 2,570915617 | 2,8202960991 |
Largest Winning Trade | 27573,75 | 16973,75 | 27573,75 |
Largest Losing Trade | -8028,75 | -8028,75 | -7180 |
Avg # Bars in Trades | 21,9 | 24,5 | 19,3 |
{**********************************************************
This indicator is provided as part of the Omega Research System Trading and
Development Club. For information on the club and other Omega Research
educational services, please call 800-422-8587 or 305-551-9991.
************************************************************}
Inputs: Price(Close), XAvgLen(15), HiLoLen(30), Retrace(.382);
Vars: XAvg(0), HiHi(0), LoLo(0), Retracement(0), BuySetup(0), SellSetup(0);
XAvg = XAverage(Price, XAvgLen);
HiHi = Highest(High, HiLoLen);
LoLo = Lowest(Low, HiLoLen);
Retracement = (HiHi – LoLo) * Retrace;
Plot1(XAvg, “XAverage”);
Plot2(HiHi – Retracement, “HRetrace”);
Plot3(LoLo + Retracement, “LRetrace”);
[LegacyColorValue = TRUE];
{************************************************************
Signal provided by Enrico Malverti.
************************************************************}
Inputs: Price(Close), XAvgLen(15), HiLoLen(30), Retrace(.382);
Vars: XAvg(0), HiHi(0), LoLo(0), Retracement(0), BuySetup(0), SellSetup(0);
XAvg = XAverage(Price, XAvgLen);
HiHi = Highest(High, HiLoLen);
LoLo = Lowest(Low, HiLoLen);
Retracement = (HiHi – LoLo) * Retrace;
buy next bar at (HiHi – Retracement) +5 stop;
//if marketposition = 1 and C < xAvg then sell next bar at market;
sellshort next bar at (LoLo + Retracement) –5 stop;
//if marketposition = -1 and C > xAVG then buytocover next bar at open;
ciao, volevo chiederti cortesemente se esiste lo stesso codice per visual trader.
ti ringrazio in anticipo per la tua risposta ecomplimenti per l’enorme mole di lavoro che porti avanti!
No, non esiste nel senso che nessuno lo ha fatto e reso pubblico ma non è troppo difficile. Però la sua domanda mi ha dato una idea… Fare un video in cui mostrare come codificarlo in VT… A presto
no, va codificato in vt.
L’indicatore viene plottato mentre il signal non lovedo sul grafico..Dove sbaglio
saluti
Gli errori possono essere 2:
1) di compilazione. Le viene restituito qualche errore?
2) se no e prova a metterlo sul grafico è sicuro di avere settato i parametri corretti (ad esempio fixed shares per i futures)?
Caspita! Ottimo lavoro…
grazie