1 registered members (AndrewAMD),
1,248
guests, and 6
spiders. |
Key:
Admin,
Global Mod,
Mod
|
|
|
Re: file_append, file_appendfront
[Re: MatPed]
#476279
02/10/19 09:59
02/10/19 09:59
|
Joined: Feb 2015
Posts: 652 Milano, Italy
MatPed
OP
User
|
OP
User
Joined: Feb 2015
Posts: 652
Milano, Italy
|
Trying to parse a simple csv: 1371,EUR/USD,TRD,79701,-0.055 1371,EUR/USD,TRD,79703,-0.055 1371,EUR/USD,TRD,82601,-0.102 1371,EUR/USD,TRD,86602,1.117 1371,EUR/USD,TRD,86802,1.373 The format I use: string sFormat = "0,i,sss,sss,i,f"; this is the testing code:
#define _storedRER "Data\storedRER.csv"
#define _storedTradeSize 50000 //1.000 trades (1.000 char [50])
#define _sTradeSize 50
void storeTrade(){
int iCounter = 0;
char sTrade[_sTradeSize];
string sDel=",", ls;
string sFormat = "%i%s%s%s%s%s%i%s%.3f";
for(closed_trades){
if (TradeIsPhantom && TradeIsClosed && TradeBarClose == Bar){
if(TradeIsShort) ls = "S"; else ls = "L";
sprintf(sTrade, sFormat, TradeBarClose, sDel, TradeAsset, sDel, TradeAlgo, sDel, TradeID, sDel, TradeProfit );
strcat (sTrade, "rn");
file_appendfront(_storedRER, sTrade, 0);
// printf("n");
// print(TO_WINDOW ,"n%s", sTrade);
}
}
}
void readTrade(){
// string sFormat = "%i%s%s%s%s%s%i%s%.3f";
string sFormat = "0,i,sss,sss,i,f";
int iHandle, iCounter;
iCounter = dataParse(iHandle, sFormat, _storedRER); //, sFilter
printf("n%i", iCounter);
dataNew(iHandle,0,0);
}
void main() {
set(LOGFILE);
Verbose = 7|DIAG;
readTrade();
}
No info is generated in the log file. The output is always 0. 2 questions: - Why no data are parsed? - If I want to filter the data set only EUR/USD is the filter string ",EUR/USD,,," correct? Thank you
|
|
|
Re: file_append, file_appendfront
[Re: MatPed]
#476300
02/15/19 09:43
02/15/19 09:43
|
Joined: Jul 2000
Posts: 27,987 Frankfurt
jcl
Chief Engineer
|
Chief Engineer
Joined: Jul 2000
Posts: 27,987
Frankfurt
|
For debugging your parsing, you can find instructions and advices under "remarks" on the dataParse manual page. Your filter string makes no sense. You can only filter strings that really appear in your csv, like "EUR/USD", but not ",EUR/USD,,,".
|
|
|
|