Guarda come scaricare robot di trading gratuitamente
Ci trovi su Facebook!
Unisciti alla nostra fan page
Script interessante?
Pubblica il link!
lasciare che altri lo valutino
Ti è piaciuto lo script? Provalo nel Terminale MetaTrader 5
Script

Portfolio Correlation Analyzer - script per MetaTrader 5

Seckin Erkut
Seckin Erkut
Algo Trading Systems Developer. I develop strategies and portfolios not by hypes but from solid academic literature.

I put my money where my mouth is, be sure to check the performance of my EAs through my signals.
| Italian English Русский 中文 Español Deutsch 日本語 Português 한국어 Français Türkçe
Visualizzazioni:
11
Valutazioni:
(1)
Pubblicato:
Aggiornato:
Freelance MQL5 Hai bisogno di un robot o indicatore basato su questo codice? Ordinalo su Freelance Vai a Freelance

L'idea

Se si eseguono diversi EA su un unico conto, la cifra che conta non è quanto guadagna ciascuno di essi, bensì in che misura il loro rischio combinato si annulla a vicenda.

Misura la serie di perdite più grave di ciascun sistema singolarmente e somma questi valori. Quindi misura la serie di perdite più grave dell’intero conto nello stesso periodo. Il secondo valore è sempre inferiore. Quanto è inferiore è l’unica misura onesta della tua diversificazione, e nessun report del terminale lo mostra.

Questo script lo misura. Legge la cronologia delle operazioni chiuse, la raggruppa per numero magico e riporta quattro dati.

Cosa riporta

1. Per sistema. Numero di operazioni, risultato netto e drawdown massimo per ogni numero magico che supera il filtro minimo delle operazioni.

2. Compressione. La somma di tutti i drawdown dei singoli sistemi rispetto al drawdown del conto combinato, e il rapporto tra di essi. Un rapporto vicino a 1 significa che i sistemi si muovono all’unisono e che possiedi una sola strategia più volte. Un rapporto elevato significa che i loro periodi negativi cadono in date diverse.

3. Correlazione. La matrice completa di correlazione di Pearson a coppie sui profitti e le perdite per periodo, il rho assoluto medio, la percentuale di coppie al di sotto di 0,30 e la coppia più correlata indicata per nome. La stessa matrice viene rappresentata sul grafico come una mappa termica: il colore chiaro indica che i due sistemi si ignorano a vicenda, il rosso indica che vincono e perdono insieme, il blu indica che sono opposti.

4. Monte Carlo. Gli stessi risultati per periodo, rimescolati in un nuovo ordine casuale alcune migliaia di volte. La storia ti ha fornito un unico ordine dei mesi. Il mercato era libero di presentare gli stessi mesi in qualsiasi altro ordine, e in tal caso il periodo peggiore cambia. Lo script riporta il drawdown al 50°, 90° e 95° percentile di quella nuvola e indica dove si colloca al suo interno il singolo percorso storico. La maggior parte dei backtest rientra nella metà favorevole.

Tutto viene inoltre salvato in formato CSV, in modo che la matrice possa essere rappresentata con una mappa termica in un foglio di calcolo.

Come interpretare i risultati

Il rapporto di compressione è il dato principale. Due, tre, dieci volte: questo è ciò che la diversificazione ti ha fruttato, nella tua valuta, sulle tue operazioni.

Il rho assoluto medio indica se il portafoglio è realmente diversificato o se sembra solo tale. Valori inferiori a 0,15 su molte coppie indicano un portafoglio realmente diversificato. Valori superiori a 0,40 indicano che si stanno utilizzando variazioni di un’unica idea.

Il percentile di Monte Carlo è l’elemento che mette a disagio. Se il tuo drawdown storico si colloca al 60° percentile della nuvola, allora due terzi degli scenari alternativi sono stati più favorevoli per te rispetto a quello che si è verificato. Pianifica la dimensione delle posizioni partendo dalla coda della nuvola, non dal singolo percorso.

Pannello

Input

  • InpGrain - granularità di raggruppamento per la serie di profitti e perdite: mensile, settimanale o giornaliera. L’impostazione predefinita è mensile ed è la più sicura: le correlazioni calcolate su intervalli giornalieri sparsi vengono tirate verso lo zero dalle celle vuote. Lo script avvisa quando la granularità scelta lascia troppi intervalli vuoti.
  • InpMCRuns - numero di rimescolamenti Monte Carlo. Il valore predefinito è 2000. I valori inferiori a 100 o superiori a 100000 vengono limitati.
  • InpMinTrades - i numeri magici con un numero di operazioni chiuse inferiore a questo valore vengono esclusi dal report e anche dal portafoglio combinato, in modo che il confronto rimanga omogeneo. Il valore predefinito è 20.
  • InpRefBalance - saldo di riferimento utilizzato esclusivamente per esprimere il drawdown Monte Carlo in percentuale. Valore predefinito: 10000.
  • InpExportCSV - scrive la tabella dei profitti e delle perdite del periodo e la matrice di correlazione in MQL5\Files. Ai nomi dei file viene anteposto il prefisso PCA_ in modo che non sovrascrivano mai l’esportazione di un altro strumento.
  • InpDrawPanel - disegna la mappa termica sul grafico. Se impostato su false, qualsiasi pannello lasciato da un'esecuzione precedente viene rimosso.
  • InpMaskMagics - assegna ai sistemi le etichette S01, S02 e così via, invece di visualizzare i numeri magici reali. Utile per gli screenshot.
  • InpPanelX, InpPanelY - offset del pannello rispetto all’angolo in alto a sinistra, in pixel.
  • InpPanelMaxPx - Lato massimo della griglia della mappa termica. La dimensione delle celle si adatta al numero di sistemi; i portafogli più piccoli hanno celle più grandi.
  • InpPanelMaxSys - al superamento di questo numero di sistemi il pannello viene saltato, poiché la griglia richiederebbe più rettangoli di quanti il grafico possa ridisegnare agevolmente. L’esportazione in formato CSV contiene comunque la matrice completa. Il valore predefinito è 64.
  • InpMCSeed - 0 genera un seme casuale; qualsiasi altro valore rende ripetibili i percentili di Monte Carlo. Utilizzare un seme fisso quando il grafico viene inserito in un report.

Note e limiti

I drawdown sono calcolati sui risultati delle operazioni chiuse alla granularità scelta. Non includono l’oscillazione delle posizioni aperte, che è più profonda, spesso di un terzo o più nei sistemi multisimbolo. Interpretate i numeri come drawdown realizzato e ricordate che il drawdown del vostro capitale è stato peggiore.

Vengono conteggiate sia le operazioni di ingresso che quelle di uscita. La maggior parte dei broker addebita commissioni anche sull’ingresso, e contare solo le operazioni di uscita sottostima implicitamente il costo.

Il numero magico 0 viene incluso se supera il filtro delle operazioni, e lo script lo indica nel log. Sulla maggior parte dei terminali, quel gruppo comprende le operazioni manuali e qualsiasi EA lasciato con il proprio numero magico predefinito, quindi non si tratta necessariamente di un unico sistema.

La correlazione richiede un numero sufficiente di periodi per essere significativa. Due sistemi con sei mesi di sovrapposizione produrranno un valore, ma non affidabile.

Gli oggetti del pannello rimangono sul grafico al termine dell’esecuzione dello script, il che è l’effetto desiderato per uno screenshot. Eseguirlo nuovamente con InpDrawPanel impostato su false per rimuoverli.

Cosa non fa

Non inserisce, modifica né chiude mai un ordine. Non prevede nulla, non genera segnali e non si connette a nessuna rete o servizio esterno. Legge la tua cronologia e riporta ciò che contiene.

MQL5 puro, un unico file, nessuna libreria esterna.


Tradotto dall’inglese da MetaQuotes Ltd.
Codice originale https://www.mql5.com/en/code/75606

IronHawk SMC Trade Zones M5 IronHawk SMC Trade Zones M5

A closed-bar M5 indicator combining market structure, liquidity sweeps, BOS/CHoCH and momentum to display Entry, SL, TP1 and TP2, with retail-frequency signals and clickable setup history.

Sessionvolatilityheatmap Sessionvolatilityheatmap

Mostra l'intervallo di prezzo medio per ora della giornata di negoziazione sotto forma di mappa termica integrata nel grafico, con l'aggiunta di sfumature relative alle sessioni asiatica, londinese e newyorkese sullo sfondo delle candele — in modo da poter vedere quando un titolo si muove effettivamente, senza dover fare supposizioni.

SHK Heikin Ashi MACD Signal Arrows SHK Heikin Ashi MACD Signal Arrows

Un indicatore grafico per MetaTrader 5 che traccia le candele Heikin Ashi, fornisce frecce di conferma per l'acquisto e la vendita, offre un filtro opzionale per la divergenza dell'istogramma MACD e include avvisi configurabili.

PropFirmGuard PropFirmGuard

Equity guard that enforces a daily loss limit and a total drawdown limit, flattens the account on breach and blocks trading until the next daily reset. Includes the guard as a reusable include file plus a self-test expert that proves the behaviour in the strategy tester.