Assista a como baixar robôs de negociação gratuitos
Encontre-nos em Twitter!
Participe de nossa página de fãs
Script interessante?
Coloque um link para ele, e permita que outras pessoas também o avaliem
Você gostou do script?
Avalie seu funcionamento no terminal MetaTrader 5
Bibliotecas

Serialização e desserialização de JSON (MQL nativo) - biblioteca para MetaTrader 5

Visualizações:
4656
Avaliação:
(86)
Publicado:
2015.11.05 16:16
Atualizado:
2018.01.08 15:29
\MQL5\Scripts\ \MQL5\Include\
Precisa de um robô ou indicador baseado nesse código? Solicite-o no Freelance Ir para Freelance

Serialização e desserialização do protocolo JSON. O código é transferido de uma biblioteca С++ o com alta velocidade.

string in, out;
CJAVal js(NULL, jtUNDEF); bool b;

//---
Print("JASon Example Deserialization:");

in="{\"a\":[1,2]}"; out=""; // exemplo de dados de entrada
b=js.Deserialize(in); // Desserializado
js.Serialize(out); // serializado novamente
Print(in+" -> "+out); // saida para comparação

//---
Print("JASon Example Serialization:");

js["Test"]=1.4; // exemplo de dados de entrada
out=""; js.Serialize(out); // serializado
Print(out); // saída

Exemplo prático: autorização num site e analisar a resposta

CJAVal jv;
jv["login"]="Login"; // login
jv["password"]="Pass"; // senha

//--- serializar para string  {"login":"Login","password":"Pass"}
char data[]; 
ArrayResize(data, StringToCharArray(jv.Serialize(), data, 0, WHOLE_ARRAY)-1);

//--- enviar dados
char res_data[];
string res_headers=NULL;
int r=WebRequest("POST", "http://my.site.com/Authorize", "Content-Type: text/plain\r\n", 5000, data, res_data, res_headers);

//--- assumir a resposta {"accessToken":"ABRAKADABRA","session_id":124521}
//--- obter o AccessToken
jv.Deserialize(res_data);
string AccessToken=jv["accessToken"].ToStr();

Você pode demonstrar sua gratidão enviando exemplos de implementação MQL para trabalhar com recursos da web. Compartilhe sua experiência com JSON no MQL.

Traduzido do russo pela MetaQuotes Ltd.
Publicação original: https://www.mql5.com/ru/code/13663

ForecastOscilator_HTF ForecastOscilator_HTF

O indicador ForecastOscilator com a opção de selecionar o timeframe nos parâmetros de entrada.

Flat_HTF Flat_HTF

O indicador Flat com a opção de selecionar o timeframe nos parâmetros de entrada.

FX5_SelfAdjustingRSI_HTF FX5_SelfAdjustingRSI_HTF

O indicador FX5_SelfAdjustingRSI com a opção de selecionar o timeframe nos parâmetros de entrada.

FX5_SelfAdjustingCCI FX5_SelfAdjustingCCI

O oscilador CCI com os limites das zonas sobrecomprada/sobrevendida na forma de bandas Bollinger.