Participe de nossa página de fãs
Coloque um link para ele, e permita que outras pessoas também o avaliem
Avalie seu funcionamento no terminal MetaTrader 5
Serialização e desserialização de JSON (MQL nativo) - biblioteca para MetaTrader 5
- Visualizações:
- 4964
- Avaliação:
- Publicado:
- 2015.11.05 16:16
- Atualizado:
- 2018.01.08 15:29
- 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
O indicador ForecastOscilator com a opção de selecionar o timeframe nos parâmetros de entrada.
Flat_HTFO indicador Flat com a opção de selecionar o timeframe nos parâmetros de entrada.
O indicador FX5_SelfAdjustingRSI com a opção de selecionar o timeframe nos parâmetros de entrada.
FX5_SelfAdjustingCCIO oscilador CCI com os limites das zonas sobrecomprada/sobrevendida na forma de bandas Bollinger.