//+------------------------------------------------------------------+
//| Demo_FileSave.mq5 |
//| Copyright 2016, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2000-2024, MetaQuotes Ltd."
#property link "https://www.mql5.com"
#property version "1.00"
#property script_show_inputs
//--- giriş parametreleri
input int ticks_to_save=1000; // Tiklerin sayısı
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
void OnStart()
{
string filename=_Symbol+"_ticks.bin";
MqlTick ticks[];
u//---
int copied=CopyTicks(_Symbol,ticks,COPY_TICKS_ALL,0,ticks_to_save);
if(copied!=-1)
{
PrintFormat(" CopyTicks(%s) ile %d tik kopyaladı",_Symbol,copied);
//--- tik geçmişi eşitlenmişse hata kodu sıfıra eşittir
if(!GetLastError()==0)
PrintFormat("%s: Tikler eşitlenmedi, hata=%d",_Symbol,copied,_LastError);
//--- Tikler dosyaya yazılıyor
if(!FileSave(filename,ticks,FILE_COMMON))
PrintFormat("FileSave() başarısız oldu, hata=%d",GetLastError());
}
else
PrintFormat("CopyTicks(%s) başarısız oldu, hata=%d",_Symbol,GetLastError());
//--- Şimdi dosyadan tikleri okuyalım
ArrayFree(ticks);
long count=FileLoad(filename,ticks,FILE_COMMON);
if(count!=-1)
{
Print("Time\tBid\tAsk\tLast\tVolume\tms\tflags");
for(int i=0;i<count;i++)
{
PrintFormat("%s.%03I64u:\t%G\t%G\t%G\t%I64u\t0x%04x",
TimeToString(ticks[i].time,TIME_DATE|TIME_SECONDS),ticks[i].time_msc%1000,
ticks[i].bid,ticks[i].ask,ticks[i].last,ticks[i].volume,ticks[i].flags);
}
}
}
|