Institutional Framework Trading System MT5
- Indicatori
- Versione: 1.586
- Aggiornato: 19 ottobre 2026
Edizione Range-Bound · v1.58
Negozia gli strumenti finanziari utilizzando la stessa struttura realmente impiegata dagli operatori istituzionali
La maggior parte degli strumenti retail basati sullo Smart Money Concept (SMC) fa una sola cosa: traccia Order Block e Liquidity Sweep sul grafico e lascia a te la decisione se fidarti di essi. Institutional Framework Trading System MT5 va oltre.
Ogni segnale generato dal sistema rappresenta una struttura di price action già confermata e viene ulteriormente verificato attraverso fino a tre livelli aggiuntivi di contesto di livello istituzionale: posizionamento reale sul mercato delle opzioni, fondamentali macroeconomici e sentiment di mercato.
Tutti questi elementi vengono sintetizzati in un unico segnale chiaro, invece di avere tre indicatori che mostrano informazioni contrastanti sullo stesso schermo.
Il sistema è progettato per trader che conoscono già Order Block, Liquidity Sweep e zone Supply/Demand e desiderano un sistema che verifichi la struttura invece di limitarsi a disegnarla.
Cosa lo distingue
-
Motore completo per la struttura SMC — Order Block, Liquidity Sweep e zone Supply/Demand, costruiti interamente sulla price action confermata di candele chiuse. I segnali vengono bloccati nel momento in cui la candela chiude e non vengono mai ridisegnati successivamente.
-
Conferma multilivello, non solo struttura. Ogni segnale strutturale viene verificato dai detector di Divergence, Exhaustion e Absorption prima di essere visualizzato sul grafico. In questo modo si osserva la concordanza tra struttura del prezzo e comportamento dell'order flow, non una semplice corrispondenza di pattern.
-
Confluenza con il mercato reale delle opzioni. I dati vengono acquisiti direttamente dalle opzioni sui futures dell'oro COMEX — Open Interest reale, Max Pain e livelli di liquidità del mercato reale delle opzioni sull'oro, non un sostituto sintetico — per individuare dove si trova effettivamente il grande posizionamento prima che il prezzo raggiunga quei livelli.
-
Progettato tenendo conto del contesto macro. Una pipeline integrata legge il bilancio della Fed, CPI/PPI e i dati sull'occupazione, mantenendo i segnali allineati al più ampio regime macroeconomico.
-
Consapevole del sentiment. Il posizionamento del CFTC Commitment of Traders e il mercato Fear & Greed alimentano un vero filtro contrarian. Le letture estreme del sentiment vengono considerate come opportunità di operare in senso opposto, non come un semplice via libera.
-
Due modalità progettate per scopi specifici. Conservative Mode, basato sul punteggio per le condizioni di trend, e Range-Bound Mode — la modalità predefinita di questa versione, ottimizzata tramite test della strategia — progettato per i mercati in consolidamento, dove struttura e mean reversion sono più importanti del momentum.
-
Funziona immediatamente e cresce con te. Tutti i livelli avanzati sopra descritti sono opzionali. È possibile applicare l'indicatore senza configurazione e farlo funzionare fin dalla prima candela utilizzando esclusivamente la struttura verificata. In seguito è possibile aggiungere dati sulle opzioni, feed macroeconomici o dati di sentiment; nulla al di fuori del core engine è necessario per generare segnali.
-
Copia il file .mq5 nella cartella MQL5\Indicators del tuo terminale (File → Open Data Folder in MT5), quindi compilalo in MetaEditor.
-
Applica l'indicatore a un grafico dell'oro. Funziona anche con altri simboli, ma tutti i valori predefiniti e i commenti di questo file sono basati su XAU.
-
Lascia tutti gli input ai valori predefiniti. Questa versione viene avviata in Range-Bound Mode, la modalità per cui questo build è stato ottimizzato, con la rilevazione della Divergence attiva ma con i relativi marker sul grafico nascosti (la sezione 2 spiega il motivo).
-
Dopo aver applicato l'indicatore, controlla il registro Experts. Indicherà chiaramente se il recupero automatico dei dati fondamentali/sentiment è fallito. Il pannello informativo sul grafico mostra a colpo d'occhio modalità corrente, regime e stato del punteggio del segnale.
-
Se desideri utilizzare la confluenza del mercato delle opzioni, scegli uno dei percorsi descritti nella sezione 11; altrimenti puoi ignorare completamente questa parte. L'indicatore funziona correttamente anche senza dati sulle opzioni.
enum ENUM_SIGNAL_MODE { MODE_CONSERVATIVE, MODE_RANGEBOUND };
-
Conservative Mode — sistema basato sul punteggio. Order Block, Sweep, Divergence, Exhaustion, Absorption, Cluster Confluence e Options Confluence aggiungono punti al punteggio. Il segnale viene attivato solo quando il punteggio supera MinSignalScore (valore predefinito 4). In questa modalità, il filtro di regime (lettura dei fondamentali/sentiment della sezione 12) blocca attivamente i segnali contrari al bias predominante.
-
Range-Bound Mode (modalità predefinita di questo build) — richiede una condizione strutturale (un Order Block oppure una Demand/Supply Zone attiva), e una conferma (Divergence, Exhaustion oppure Absorption), e un punteggio minimo tramite RangeBoundMinScore (valore predefinito 2, che riproduce esattamente il gate originale sempre attivo; aumentalo solo se desideri dare maggiore peso a Cluster/Options Confluence). In questa modalità il filtro di regime non blocca la direzione: Long e Short rimangono entrambi attivi indipendentemente dal bias fondamentale/sentiment.
Gruppo: === SMC / Structure Detection ===
| Parametro | Predefinito | Cosa controlla |
|---|---|---|
| SwingWing | 3 | Numero di barre necessarie su ciascun lato di una candela per confermarla come swing high/low. Più basso = più swing e più rumore; più alto = meno swing, ma più significativi. |
| SwingLookback | 100 | Quanto indietro il rilevatore di swing cerca il precedente swing point durante il controllo di Divergence o Sweep. |
| ATRPeriod | 14 | Periodo ATR utilizzato per scalare quasi tutte le soglie basate sulla distanza nell'indicatore, inclusi displacement, exhaustion, absorption e filtri divergence-swing. |
| OBDisplacementMult | 1.0 | Rapporto minimo tra dimensione del corpo e ATR che una candela deve avere per essere qualificata come displacement candle di un Order Block. |
| OBMaxWickRatio | 0.3 | Proporzione massima del range della displacement candle che può essere costituita da wick (0–1). Filtra le candele con range ampio ma composte principalmente da wick. |
| SDMoveMultiple | 3.0 | Quanti multipli del range della candela “base” deve raggiungere il movimento esplosivo successivo per essere qualificato come Supply/Demand Zone (sezione 6). |
| EquilibriumBandPct | 0.05 | Ampiezza della banda di “equilibrium” intorno al livello del 50% di un range rilevato. |
Gruppi: === Exhaustion Detection === , === Absorption Detection === , === Delta Divergence === , === Delta (Native Tick) ===
| Parametro | Predefinito | Cosa controlla |
|---|---|---|
| EnableExhaustion | true | Interruttore principale del detector di Exhaustion. |
| ExhaustionWickMult | 0.6 | Rapporto minimo wick/range necessario affinché una candela venga qualificata come Exhaustion. |
| ExhaustionBodyMult | 0.3 | Rapporto massimo body/range consentito insieme a quella wick. |
| EnableAbsorption | true | Interruttore principale del detector di Absorption. |
| AbsorptionVolFactor | 1.5 | Moltiplicatore minimo del volume rispetto alla media necessario affinché una candela venga qualificata come Absorption. |
| AbsorptionRangeFactor | 0.8 | Rapporto massimo range/ATR consentito. Absorption = volume elevato + range ridotto. |
| AbsorptionRejectPct | 0.2 | Percentuale minima di rejection della wick richiesta. |
| EnableDivergence | true | Interruttore principale del detector di Divergence. Lasciarlo attivo anche con DrawDivergenceMarks disattivato. |
| DrawDivergenceMarks | false (questo build) | Solo visivo: mostra/nasconde i marker DIV_ sul grafico. Non influenza la generazione dei segnali. |
| DivergenceMinSwingATR | 1.0 | Differenza minima di prezzo tra swing, espressa in ATR, necessaria prima che due swing vengano confrontati per Divergence. Filtra gli swing a livello di rumore. |
| MaxTickBars | 50 | Numero di barre più recenti che possono utilizzare il tick-delta reale buy/sell per la Divergence. Le barre precedenti passano automaticamente al raw tick-volume. |
Gruppo: === Cluster Confluence (both modes) ===
| Parametro | Predefinito | Cosa controlla |
|---|---|---|
| UseClusterScoring | true | Determina se più conferme simultanee sulla stessa candela ricevono un bonus di punteggio. |
| MinClusterSignals | 3 | Numero di conferme che devono concordare simultaneamente per attivare il bonus. |
| ClusterBonusScore | 2 | Entità del bonus aggiunto al punteggio del segnale. |
Questo vale per entrambe le modalità. Nel Range-Bound Mode alimenta il gate RangeBoundMinScore descritto nella sezione 2.
6. Supply & Demand ZonesGruppo: === Supply & Demand Zones ===
| Parametro | Predefinito | Cosa controlla |
|---|---|---|
| DrawSupplyDemandZones | true | Interruttore principale del motore di disegno delle zone. |
| SDLookback | 100 | Numero di barre indietro analizzate per trovare pattern validi base + movimento esplosivo. |
| SDMaxBaseCandles | 4 | Numero massimo di candele “base” (consolidamento) consentite prima del movimento esplosivo. |
| SDDisplacementMult | 0.5 | Rapporto minimo body/ATR per il movimento esplosivo che si allontana dalla zona. È indipendente e più permissivo rispetto a OBDisplacementMult ; Zone e Order Block vengono rilevati separatamente. |
| SDMaxZonesShown | 3 | Numero massimo di zone visualizzate contemporaneamente sul grafico. |
| SupplyZoneColor / DemandZoneColor | Red / Blue | Colori delle zone sul grafico. |
Una Demand o Supply Zone attiva e non mitigata soddisfa la parte “strutturale” del gate del Range-Bound Mode esattamente come un Order Block.
7. Filtro Higher TimeframeGruppo: === Higher-Timeframe Confirmation ===
| Parametro | Predefinito | Cosa controlla |
|---|---|---|
| UseHTFFilter | true | Determina se la lettura direzionale di un timeframe superiore deve essere concorde prima dell'attivazione di un segnale. |
| HTFTimeframe | H4 | Timeframe superiore utilizzato per il controllo. |
| HTFLookbackBars | 20 | Numero di barre H4 chiuse analizzate all'indietro per la lettura del trend. |
| HTFNeutralPct | 0.05 | Quanto vicino alla condizione piatta debba essere il trend HTF prima di essere considerato “neutral”, senza bloccare Long o Short. |
Gruppo: === Session Filter (approximate UTC windows, NOT DST-adjusted) ===
| Parametro | Predefinito | Cosa controlla |
|---|---|---|
| AllowedSession | SESSION_ALL | Limita i segnali a una sessione specifica: SESSION_ALL , SESSION_LONDON , SESSION_NEWYORK o SESSION_LONDON_NY . |
| UTCOffsetHours | 0 | Correzione da applicare se l'orario del server del broker non è UTC. |
| Parametro | Predefinito | Gruppo | Cosa controlla |
|---|---|---|---|
| SignalCooldownBars | 5 | Signal Cooldown | Numero minimo di barre — oppure, se il prezzo non si è mosso abbastanza, distanza minima di prezzo — tra due segnali sulla stessa zona, per impedire che lo stesso livello generi segnali ripetuti. |
| MaxBarAgeForSignal | 25 | Stale Zone Decay | Età massima di un Order Block affinché possa ancora essere considerato una struttura valida per un nuovo segnale. Questo parametro determina se la freccia può apparire; è diverso dall'impostazione di alert timing della sezione 13. |
Gruppo: === Fibonacci Extension Auto-Targets ===
Una volta rilevato un Order Block bullish o bearish, il grafico traccia TP1 / TP2 / TP3 (estensioni di Fibonacci, valori predefiniti 1.618 / 2.618 / 4.236) e una linea di riferimento BE .
La regola, esattamente come indicata sul grafico: sposta lo Stop-Loss a break-even.
| Parametro | Predefinito |
|---|---|
| EnableFibTargets | true |
| FibTP1 / FibTP2 / FibTP3 | 1.618 / 2.618 / 4.236 |
| FibTP1Color / FibTP2Color / FibTP3Color | Yellow / Orange / Red |
| TrailBEColor | White |
Esistono due modi per fornire dati reali del mercato delle opzioni al bonus di punteggio Options Liquidity Confluence.
È sufficiente utilizzarne uno. L'indicatore funziona correttamente anche senza entrambi.
Opzione A — FlashAlpha Live API (comoda, ma è un Proxy)
-
Ottieni una API Key gratuita su lab.flashalpha.com .
-
Imposta UseLiveAPI = true e inserisci la chiave in FlashAlpha_API_Key .
-
Imposta FlashAlpha_Expiration sulla data di scadenza desiderata nel formato yyyy-MM-dd . È obbligatorio perché il piano gratuito non può interrogare tutte le scadenze contemporaneamente.
-
Lascia FlashAlpha_Symbol al valore predefinito ( NEM ) salvo una ragione specifica per modificarlo.
Opzione B — CSV mensile da Barchart.com (vere opzioni sull'oro, aggiornamento manuale)
Si tratta di dati reali sulle opzioni dei futures COMEX Gold (GC), non di un Proxy.
-
Vai alla catena Gold Futures Options di Barchart ( barchart.com/futures/quotes/GC*0/options ), seleziona il mese del contratto e scarica la chain in formato CSV
Regolazione della visualizzazione delle opzioni
| Parametro | Predefinito | Funzione |
|---|---|---|
| Min_OI_Threshold | 100 | Open Interest minimo affinché uno Strike venga considerato per BSL/SSL. |
| Min_Volume_Threshold | 200 | Filtro minimo del volume per i livelli basati sulle opzioni. |
| Max_Pain_Buffer | 5 | Banda di tolleranza, espressa in Strike, intorno al livello Max Pain calcolato. |
| Max_Strikes_Processed | 100 | Numero massimo di Strike elaborati; vengono caricati prima quelli più vicini al prezzo. |
| Max_Battle_Zones_Shown | 5 | Numero massimo di livelli “Battle Zone” ad alto OI mostrati. |
| Refresh_Hotkey | R | Premi questo tasto sul grafico per forzare un aggiornamento immediato dei dati sulle opzioni. |
| Auto_Refresh_Seconds | 60 | Frequenza con cui l'indicatore verifica se è necessario un aggiornamento; non è uguale a RefreshIntervalHours . |
| UseOptionsConfluence | true | Interruttore principale per il bonus di punteggio Options Confluence (entrambe le modalità). |
| OptionsConfluenceATRMult | 0.5 | Tolleranza di prossimità, in ATR, a un livello chiave delle opzioni affinché venga applicato il bonus. |
| OptionsConfluenceBonus | 1 | Entità del bonus. |
Entrambi vengono valutati su una scala 0–100:
-
Fundamental score: 0 = bearish per l'oro, 100 = bullish per l'oro.
-
Sentiment score: 0 = paura estrema, 100 = avidità estrema.
-
Il valore predefinito/neutrale è 50 per entrambi.
Si tratta di punteggi ibridi, non completamente automatici.
Anche con UseAutoFundamentals = true , diversi componenti non dispongono di un feed pubblico gratuito e devono quindi essere sempre inseriti manualmente:
| Input manuale | Cos'è | Dove ottenerlo |
|---|---|---|
| ManualFedStance | 0 = molto hawkish … 100 = molto dovish | Tua valutazione personale — non esiste un feed numerico pulito |
| ManualCmeCutProb | Probabilità di taglio nella prossima riunione (CME FedWatch, 0–100) | CME FedWatch Tool su cmegroup.com |
| ManualNFPActual / ManualNFPExpected | Non-Farm Payrolls, valore effettivo vs consenso (migliaia) | BLS fornisce il dato effettivo; il consenso non è un dato governativo |
| ManualADPActual / ManualADPExpected | Occupazione ADP, valore effettivo vs consenso (migliaia) | Stesso principio dell'NFP |
| ManualGeoScore | Tensione geopolitica, 0–100 | Tua valutazione personale |
| BPR_USBanksLong / BPR_USBanksShort | CFTC Bank Participation Report, COMEX Gold | Bank Participation Reports mensili su cftc.gov |
Ottenere la FRED API Key
-
Registrati gratuitamente su fred.stlouisfed.org/docs/api/api_key.html .
-
Inserisci la chiave in FRED_API_Key .
La chiave è necessaria solo per il componente del bilancio della Fed.
Aggiungere le URL necessarie alla whitelist
In MT5:
Tools → Options → Expert Advisors → seleziona "Allow WebRequest for listed URL:" → aggiungi ogni dominio effettivamente utilizzato:
https://publicreporting.cftc.gov https://www.jmbullion.com https://api.stlouisfed.org https://api.bls.gov https://lab.flashalpha.com
