Unisciti alla nostra fan page
- Visualizzazioni:
- 21
- Valutazioni:
- Pubblicato:
-
Hai bisogno di un robot o indicatore basato su questo codice? Ordinalo su Freelance Vai a Freelance
JSON ad alte prestazioni (v3.5.0)
Una libreria JSON progettata per LLM, trading autonomo e bassissima latenza.
Il problema
Durante l'integrazione dei modelli AI (GPT-4o, Claude 3.5, DeepSeek) in MetaTrader 5, le librerie standard della comunità hanno fallito su due punti critici: l'allocazione della memoria e la latenza di serializzazione. L'uso eccessivo della ricorsione e delle stringhe temporanee ha trasformato l'elaborazione delle risposte dell'intelligenza artificiale (chiamata di funzione) in colli di bottiglia che hanno bloccato il terminale. Il "dolore" di perdere tick mentre il Garbage Collector cancellava le stringhe è stato il motivo di questa architettura.
architettura fast_json
Riscritta da zero con un'attenzione ossessiva alle prestazioni:
- Architettura a zero allocazioni: parsing tramite nastro (buffer contiguo long[] ) e serializzazione diretta nel buffer uchar[] . Eliminiamo gli intermediari: il payload passa dal socket direttamente alla struttura dati senza creare migliaia di oggetti.
- Parsing numerico ibrido: nella versione 3.4.0, abbiamo introdotto l'accumulo di interi tramite long (ALU nativa) e tabelle di lookup statiche Exp10 per la massima precisione in virgola mobile.
- Macchina a stati iterativi: addio ricorsione. Un parser lineare impedisce lo stack overflow anche in JSON profondamente annidati.
- Scansione SWAR: lettura SIMD (8 byte per ciclo) per saltare spazi bianchi e stringhe lunghe.
Prestazioni
Test effettuati su hardware standard (x64) con un payload complesso di 50.000 nodi:
| Operazione | (fast_json) | Lib precedente (JAson) | Vantaggio |
|---|---|---|---|
| Parse | 137 ms | 1540 ms | 11,2 volte più veloce |
| Serializzazione | 264 ms | 568 ms | 2,1 volte più veloce |
| Totale (andata e ritorno) | 401 ms | 2129 ms | 5,3 volte più veloce |
> Risultati verificabili tramite lo script TestJsonBenchmark.mq5 incluso nel pacchetto.
Caratteristiche principali
- Resilienza HFT: allocazione deterministica della memoria. Il Garbage Collector non interviene durante l'analisi.
- O(1) Introspezione: verifica istantanea delle chiavi HasKey() o degli array Size(), senza scansione lineare.
- Sicurezza dei tipi: accesso rigoroso ai tipi ( GetInt , GetDouble , GetString ). Nessuna variante magica che causa bug silenziosi.
- Segnalazione accurata degli errori: in caso di errore, vengono restituite le righe e le colonne esatte.
Esempio di utilizzo: lettura della risposta di OpenAI
#include <fast_json.mqh>
void OnStart() {
string payload = GetOpenAIResponse(); // JSON massivo
CJson json;
if(json.Parse(payload)) {
// Acesso direto performance-critical (Zero-Copy)
string content = json["choices"][0]["message"]["content"].ToString();
// Exemplo: Extraindo uso de tokens
if(json.HasKey("usage")) {
long tokens = json["usage"]["total_tokens"].ToInt();
Print("Consumo: ", tokens);
}
} else {
// Debug preciso
int l, c;
json.GetErrorPos(l, c);
PrintFormat("Erro JSON na Linha %d, Coluna %d", l, c);
}
}
Esempio: creazione di una richiesta (costruttore ottimizzato)
CJsonBuilder b;
b.Obj()
.Key("model").Val("gpt-4-turbo")
.Key("messages").Arr()
.Obj()
.Key("role").Val("user")
.Key("content").Val("Analyze EURUSD H1 trend")
.EndObj()
.EndArr()
.Key("temperature").Val(0.7)
.EndObj();
string body = b.Serialization(); // Serialização ultra-rápida
Sviluppato da Jonathan Pereira come infrastruttura di base del framework AI-Toolkit.
Tradotto dal portoghese da MetaQuotes Ltd.
Codice originale: https://www.mql5.com/pt/code/68596
Timeframe Quality Analyzer
Trovare il timeframe perfetto per il trading
VR Rsi Robot - Strategia di trading multi-timeframe
Solo due timeframe — H1 e D1 — lavorano in sincronia per filtrare il rumore e catturare solo i forti inversioni del RSI dalle zone di ipercomprato e ipervenduto. Niente entrate casuali, solo una chiara conferma della direzione da parte del "fratello maggiore".
OHLCMTF Scalper EA - Multi-Timeframe Price Action
A strict Multi-Timeframe Price Action Expert Advisor that trades based on precise OHLC conditions across different timeframes simultaneously. It features pending order entries, role reversals, and dynamic risk management without using any lagging indicators.
Convertitore NeuroPro
Convertitore di verbalizzazione NeuroPro per MQL5

