[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [amibroker] How To Overwrite Exported CSV Data File



PureBytes Links

Trading Reference Links

What you need is a "one time switch" so you can open the file in overwrite
mode once and then do an append the rest of the time. This can be
accomplished by:

if ( Status("stocknum") == 0 )
{
      Your "one time stuff" here before your other code
} 

d

> -----Original Message-----
> From: amibroker@xxxxxxxxxxxxxxx 
> [mailto:amibroker@xxxxxxxxxxxxxxx] On Behalf Of Lester Vanhoff
> Sent: Monday, June 12, 2006 7:46 AM
> To: amibroker@xxxxxxxxxxxxxxx
> Subject: [amibroker] How To Overwrite Exported CSV Data File
> 
> The following AFL will export eod data to C:\Test\Mseod.csv 
> (set the filter, eg. a watch list and hit Scan button). 
> However, to use it in real life you would need to delete that 
> csv file before every export, otherwise the new data will be 
> appended to the old file. The question is how to overwrite 
> this file from AFL.
> 
> 1) This line must be set to a=append in order to export all 
> tickers in a watch list. If set to w=overwrite only one 
> ticker will be exported:
> 
> fh = fopen( output_folder + "\\" + output_file, "a");
> 
> 2) I tried to include fdelete(), 2nd line below, but then 
> only data for one ticker is exported:
> 
> fmkdir( output_folder );
> fdelete( output_folder + "\\" + output_file );
> 
> Here is the full code:
> 
> // Export data to C:\Test\Mseod.csv in old MetaStock format: 
> Tkr,D,yymmdd,O,H,L,C,V,oi
> 
> output_folder = "C:\\Test";
> output_file   = "Mseod.csv";
> fmkdir( output_folder ); // if the directory doesn't exists 
> it will be automatically created
> 
> fh = fopen( output_folder + "\\" + output_file, "a"); // 
> a=append needed to get all tickers from watch list
> 
> if (fh)
> {
>   t = Name();
>   p = "D";
>   y = Year()%100;
>   m = Month();
>   d = Day();
> for( i = 0; i < BarCount; i++ ) // loop
>   {
>   fputs( t + "," , fh );
>   fputs( p + "," , fh );
>   ds = StrFormat( "%02.f%02.f%02.f,", y[i], m[i], d[i] ); // 
> date string
>   fputs( ds, fh );
>   qs = StrFormat("%.4f,%.4f,%.4f,%.4f,%.0f,%.0f\n", O[i], 
> H[i], L[i], C[i], V[i], OI[i] ); // quote string
>   fputs( qs, fh );
>   }
> fclose( fh );
> }
> Buy = 0; // link to "scan" button
> 
> 
> 
> 
> 
> 
> ------------------------ Yahoo! Groups Sponsor 
> --------------------~--> Protect your PC from spy ware with 
> award winning anti spy technology. It's free.
> http://us.click.yahoo.com/97bhrC/LGxNAA/yQLSAA/GHeqlB/TM
> --------------------------------------------------------------
> ------~-> 
> 
> Please note that this group is for discussion between users only.
> 
> To get support from AmiBroker please send an e-mail directly 
> to SUPPORT {at} amibroker.com
> 
> For other support material please check also:
> http://www.amibroker.com/support.html
> 
>  
> Yahoo! Groups Links
> 
> 
> 
>  
> 
>