Posted By: kalmar
Error 060 Out of memory - 04/25/21 07:15
Hi all,
I have 10 years of minute data for 600 tickers. I was trying to look for gaps in quotes with a script below. But as expected I get the "Error 060: Out of memory". I wonder if it is possible to clean memory in the script, e.g. after 10 symbols are done? I was of course reducing # of assets and/or reducing period (e.g. 100 symbols for 2 years works), but I would like to avoid this manual work. Thank you.
I have 10 years of minute data for 600 tickers. I was trying to look for gaps in quotes with a script below. But as expected I get the "Error 060: Out of memory". I wonder if it is possible to clean memory in the script, e.g. after 10 symbols are done? I was of course reducing # of assets and/or reducing period (e.g. 100 symbols for 2 years works), but I would like to avoid this manual work. Thank you.
Code
function run()
{
StartDate = 20100101;
EndDate = 20201231;
BarPeriod = 1;
LookBack = 0;
string filename = "Stocks_gaps.csv";
if(is(INITRUN)) // specifying the header in the first run
{
char header[500];
sprintf(header, "Asset, UTCDate, DoW, Time, Gap_Minutes, \n");
file_delete(filename);
file_append(filename, header);
}
assetList("AssetsMyStonks100.csv");
History = "*_us_stock.t6";
Detrend = NOPRICE; // prevents that asset and price data is checked and outliers are removed
while(asset(loop(Assets)))
{
var tdiff = (wdate() - wdate(1)); // time difference in days of the last consecutive bars
if(tdiff > (BarPeriod/1440)*2 && dow() == dow(1))
{
char line[500];
sprintf(line, "%s, %d-%02d-%02d, %i, %02d:%02d, %i, \n",
Asset, year(), month(), day(), dow(), hour(), minute(),minutesAgo(1));
file_append(filename, line);
}
}
}