당사 팬 페이지에 가입하십시오
- 조회수:
- 20
- 평가:
- 게시됨:
-
이 코드를 기반으로 한 로봇이나 지표가 필요하신가요? 프리랜스로 주문하세요 프리랜스로 이동
고성능 JSON(v3.5.0)
LLM, 자율 트레이딩 및 초저지연을 위해 설계된 JSON 라이브러리입니다.
문제
커뮤니티의 표준 라이브러리는 메모리 할당과 직렬화 대기시간이라는 두 가지 중요한 점에서 MetaTrader 5에 AI 모델(GPT-4o, Claude 3.5, DeepSeek)을 통합할 때 실패했습니다. 재귀와 임시 문자열을 과도하게 사용하면 AI 응답 처리(함수 호출)가 병목현상으로 바뀌어 터미널이 멈췄습니다. 가비지 컬렉터가 문자열을 지우는 동안 틱이 손실되는 '고통'이 이 아키텍처의 동기가 되었습니다.
fast_json 아키텍처
성능에 강박적으로 초점을 맞춰 처음부터 다시 작성했습니다:
- 제로 할당 아키텍처: 테이프 (연속 버퍼 long[] )를 통한 구문 분석과 버퍼 uchar[] 에서 직접 직렬화. 중개자를 제거하여 수천 개의 객체를 생성하지 않고 페이로드가 소켓에서 데이터 구조로 바로 이동합니다.
- 하이브리드 숫자 구문 분석: v3.4.0에서는 부동 소수 점의 정밀도를 극대화하기 위해 긴(기본 ALU) 및 정적 Exp10 룩업 테이블을 통한 정수 누적을 도입했습니다.
- 반복 상태 머신: 굿바이 재귀. 선형 구문 분석기는 깊게 중첩된 JSON에서도 스택 오버플로를 방지합니다.
- SWAR 스캐닝: 공백과 긴 문자열을 건너뛰기 위한 SIMD 읽기(사이클당 8바이트).
성능
50,000개의 노드로 구성된 복잡한 페이로드가 있는 표준 하드웨어(x64)에서 테스트 수행:
| 연산 | (fast_json) | 레거시 라이브러리(제이슨) | 장점 |
|---|---|---|---|
| Parse | 137 ms | 1540 ms | 11.2배 빨라짐 |
| 직렬화 | 264ms | 568ms | 2.1배 빨라짐 |
| 총(왕복) | 401ms | 2129ms | 5.3배 빨라짐 |
> 패키지에 포함된 TestJsonBenchmark.mq5 스크립트를 통해 결과를 확인할 수 있습니다.
주요 특징
- HFT 복원력: 결정론적 메모리 할당. 가비지 컬렉터가 구문 분석 중에 개입하지 않음.
- O(1) 인트로스펙션: 선형 스캔 없이 HasKey() 키 또는 Size() 배열을 즉시 확인합니다.
- 유형 안전성: 엄격한 유형 액세스(GetInt, GetDouble, GetString). 조용한 버그를 유발하는 마법의 변종이 없습니다.
- 정확한 오류 보고: 오류 발생 시 정확한 행과 열을 반환합니다.
사용 예: 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);
}
}
예: 요청 빌드(최적화된 빌더)
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
AI-Toolkit 프레임워크의 핵심 인프라로 Jonathan Pereira가 개발했습니다.
MetaQuotes Ltd에서 포르투갈어로 번역함.
원본 기고글: https://www.mql5.com/pt/code/68596
Timeframe Quality Analyzer
완벽한 거래 시간대 찾기
VR Rsi Robot - 멀티 타임프레임 트레이딩 전략
단 두 개의 타임프레임(H1과 D1)이 동기화되어 작동하며, 노이즈를 걸러내고 과매수 및 과매도 구간에서 발생하는 RSI의 강력한 반전 신호만을 포착합니다. 무작위 진입은 없으며, 오직 '큰 형님'의 명확한 방향 확인 신호만을 따릅니다.
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.
NeuroPro 변환기
MQL5용 NeuroPro 언어화 변환기

