Unisciti alla nostra fan page
- Visualizzazioni:
- 15
- Valutazioni:
- Pubblicato:
-
Hai bisogno di un robot o indicatore basato su questo codice? Ordinalo su Freelance Vai a Freelance
Un conto di una società di trading opera secondo un secondo regolamento di cui MetaTrader 5 non sa nulla: una perdita massima calcolata a partire da un saldo iniziale fisso, un limite giornaliero che si azzera a un’ora che non coincide con l’orologio del broker, un tetto massimo di coerenza dei pagamenti, un numero minimo di giorni di trading, un blackout delle notizie, una chiusura il venerdì. Se si infrange il primo regolamento, si perde un’operazione. Se si infrange il secondo, si perde il conto.
Questa libreria rappresenta il codice sorgente del meccanismo di protezione sottostante. Viene compilata in qualsiasi EA, verifica otto regole su un’istantanea congelata del conto ad ogni passaggio e segnala al massimo una sola direttiva — mai otto reazioni separate a un singolo momento sfavorevole. Non assume alcuna posizione propria.

Cosa contiene l’archivio
24 file di intestazione (.mqh), una classe facciata (CPropRulebook) e un Expert Advisor dimostrativo (PropFirmDefense.mq5) che collega la facciata a un pannello sul grafico. La demo è inoltre pubblicata e compilata come prodotto gratuito sul Market: PropFirm Defense. Questa voce di CodeBase contiene lo stesso sistema di protezione in formato sorgente, per i lettori che preferiscono le classi piuttosto che il file binario.
Cosa verifica
- Otto regole ad ogni passaggio: drawdown statico, drawdown trailing, perdita giornaliera, obiettivo di profitto, costanza dei guadagni, numero minimo di giorni di trading, blackout delle notizie, flat nel fine settimana.
- Un limite minimo di drawdown che si comporta come quello reale: aumenta con il picco e poi si blocca definitivamente una volta che il saldo raggiunge il valore iniziale più il trailing, proprio come funzionano effettivamente i conti con drawdown progressivo.
- Il reset giornaliero avviene nel fuso orario dell’azienda, non a mezzanotte del broker, in modo che una perdita registrata prima o dopo il limite ricada nel giorno corretto.
- Le regole di pagamento non chiudono mai una posizione. Un problema di costanza o di giorni minimi blocca un prelievo, ma non mette a rischio il conto, quindi il sistema di protezione lo segnala invece di intervenire.

Come si comporta
- Un’osservazione per ogni passaggio, condivisa da ogni regola, e al massimo una direttiva che ne deriva. La violazione simultanea di otto regole produce un’unica azione, non otto.
- Funziona con qualsiasi cosa: qualsiasi EA, trading manuale o segnale copiato sul conto. Non assume alcuna posizione propria.
- Lo stato rimane invariato dopo un riavvio. L’ancora, il budget consumato e i latch vengono mantenuti, quindi un riavvio del VPS non ripristina la quota di drawdown.
- Ogni soglia può essere impostata dall’utente, dalla finestra di dialogo “Input”, con impostazioni predefinite per gli stili aziendali più comuni come punto di partenza.

Architettura, per i lettori che desiderano riutilizzare i componenti
CPropRulebook è l’unica classe di cui ha bisogno chi la chiama. Comprende:
- CPropSnapshotBuilder — congela un’istantanea del conto per ogni passaggio (patrimonio netto, saldo, posizioni, P/L fluttuante) in modo che ogni regola valuti gli stessi dati.
- CRuleRegistry + CRuleCoordinator — contengono le otto implementazioni di IPropRule e risolvono molteplici verdetti in al massimo una direttiva.
- CProtectiveActionExecutor — l’unica classe autorizzata a intervenire su una posizione, e solo per azzerarla in caso di violazione.
- CGuardStateStore — conserva il limite minimo, i budget consumati e i latch anche dopo il riavvio del terminale.
- CTerminalAlgoSwitch — un attuatore opzionale per il pulsante globale «Algo Trading» del terminale. Funziona in modalità ridotta anziché rifiutarsi di avviarsi quando la chiamata WinAPI di cui ha bisogno non è disponibile (versione Market, Linux/Wine o AllowDllImport=0).
Non è una strategia
Questo strumento non decide quando entrare nel mercato e non fornisce alcuna garanzia di redditività. Risponde a due domande per qualsiasi operazione di trading: posso aprire questa posizione ora? E c’è qualcosa in questo conto che attualmente sia in violazione?
Limiti, indicati fin dall’inizio
- I valori preimpostati sono un punto di partenza, non un contratto. I regolamenti delle società di trading cambiano e variano a seconda del programma e del livello. Verificate ogni soglia in base al vostro contratto.
- La regola relativa alle notizie richiede il calendario economico del terminale. Si astiene quando il calendario non è disponibile, come nel caso dello Strategy Tester.
- CTerminalAlgoSwitch importa user32.dll quando viene compilato senza l’opzione di compilazione per il mercato (PROP_MARKET_BUILD, attiva per impostazione predefinita nella demo allegata). Se si compila il proprio punto di ingresso e si necessita del percorso senza DLL (regole di mercato, AllowDllImport=0, o una piattaforma senza WinAPI), definire tale macro prima dell’include.
Contenuto didattico, non consulenza finanziaria. Il trading comporta il rischio di perdita.
Tradotto dall’inglese da MetaQuotes Ltd.
Codice originale https://www.mql5.com/en/code/77156
Range compression percentile
Confronta l'intervallo di oscillazione registrato finora nel periodo corrente con la distribuzione storica completa degli intervalli passati — un vero percentile, non solo un confronto con la media come nel caso dell'ADR% — e segnala eventuali fenomeni di compressione o espansione statistica su un pannello compatto in tempo reale dotato di un indicatore di percentile.
MT5 Symbol Changer Profit Display
EMTOrdersUtility è un'utilità per il monitoraggio delle operazioni in tempo reale e la modifica dei simboli, progettata per i trader attivi che necessitano di una visibilità in tempo reale sulle proprie posizioni aperte su diversi strumenti finanziari.
GDS Renko Replay Trainer
GDS Renko Replay Trainer è uno strumento didattico gratuito che consente di esercitarsi a prendere decisioni manuali sui grafici Renko storici in MetaTrader 5. Carica un intervallo storico, riproducilo in avanti ed effettua operazioni virtuali di ACQUISTO o VENDITA. È possibile mettere in pausa, avanzare di un tick o passare al successivo mattoncino Renko completato. Ogni posizione virtuale dispone di uno stop loss e di un take profit, e il trainer registra i risultati della sessione. Lo strumento costruisce mattoncini Renko di dimensioni fisse a partire dai tick storici di Bid/Ask, con un classico ribaltamento a due mattoncini. I tick futuri non vengono utilizzati per tracciare il grafico visibile né per eseguire operazioni virtuali. Le operazioni di acquisto utilizzano il prezzo Ask per l’entrata e il prezzo Bid per l’uscita; le operazioni di vendita utilizzano i lati opposti. Gli ordini inseriti sul pannello attendono il prossimo tick valido riprodotto. Gli stop e i target vengono verificati ad ogni tick, inclusi i gap di prezzo.
Currency Strength - EUR, USD, GBP, JPY, CHF, CAD, AUD, NZD meter
Strength lines of the 8 major currencies built from the 28 major and cross pairs.