//+------------------------------------------------------------------+
//| RatesCompressor.mq5 |
//| Copyright (c) 2020, Marketeer |
//| Modified by Dark Ryd3r |
//| https://twitter.com/DarkRyd3r |
//+------------------------------------------------------------------+
#include <RatesCompressor.mqh>
#define PRT(A) Print(#A, " ", (A))
void OnStart()
{
PRT(sizeof(MqlRates));
PRT(sizeof(MqlRatesOHLC));
// 1-element arrays are used for pretty-printing via ArrayPrint
MqlRates rates[1];
int data = CopyRates(_Symbol,PERIOD_M1,0,1,rates);
ArrayPrint(rates);
MqlRatesOHLC rohlc[1];
RatesCompressor::compress(rates, rohlc); // array notation
// other way for a single tick can be used as well
// rohlc[0] = MqlRatesOHLC::compress(rates[0]);
ArrayPrint(rohlc);
MqlRates result[1];
result[0] = MqlRatesOHLC::decompress(rohlc[0]); // single tick notation
// other way for arrays can be used as well
// RatesCompressor::decompress(rohlc, result);
ArrayPrint(result);
}
Comments