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

[amibroker] Re: Automation Object Model export.vbs



PureBytes Links

Trading Reference Links

My recollection of export.js is that it runs about one symbol every 
10+ seconds ... There is code in IO to "clone" watchlists with 
shorter data histories for local and/or networked machines where run 
times are more like 10 symbols per second ... I'll dig out the code 
for it when I have a few minutes.

--- In amibroker@xxxxxxxxxxxxxxx, "Fred" <ftonetti@xxx> wrote:
>
> If this is for a one time event you might as well use the js that 
> already exists ... If this is something you are going to do with 
> more regularity there are much faster ways ...
> 
> --- In amibroker@xxxxxxxxxxxxxxx, "Ulrich Plett" <uplett@> wrote:
> >
> > Hi
> > I'm trying to write Tomasz Export.js script
> > in VBScript. I get an error message saying
> > something like no object returned.
> > I only get an object when I use oStocks.Item(0).
> > Please take a look at the attached script. Need help
> > Thanks
> > Olli
> > 
> > -------------------------------------------------------
> >   For each ticker in filenames
> >     WScript.Echo "Export of " & ticker & " start"
> >     set oStocks = oAB.Stocks
> >     set oStock = oStocks.Item(ticker)   ' Object value: nothing
> > <--------------------
> >     set oStock1 = oStocks(ticker)       ' Object value: nothing
> > <--------------------
> >     set oStock2 = oStocks.Item(0)       ' Object value: {...} 
> Object
> >     Qty = oStock.Quotations.Count       ' <----------------------
--
>  error
> > message is here
> > 
> > ' debug mit "CSCRIPT //X scriptname.vbs"
> > ' VBScript Run-time Errors
> > ' 
> 
http://msdn.microsoft.com/scripting/vbscript/doc/vsmscRunTimeErrors.h
> tm 
> > ' VBScript Syntax Errors
> > ' 
> 
http://msdn.microsoft.com/scripting/vbscript/doc/vsmscSyntaxErrors.ht
> m
> > 
> > Option Explicit
> > 
> > Const path2database = "C:\Programme\Amibroker\Yahoo_DEU"
> > Const ForReading = 1, ForWriting = 2, ForAppending = 8
> > 
> > Function FileExist(dateiname)
> >   Dim WshShell, fso
> >   Set WshShell = WScript.CreateObject("WScript.Shell")
> >   Set fso = CreateObject("Scripting.FileSystemObject")
> >   FileExist = fso.FileExists(dateiname)
> >   Set fso = nothing
> >   Set WshShell = nothing
> > End Function
> > 
> > Sub FileDelete(dateiname)
> >   Dim WshShell, fso, f
> >   Set WshShell = WScript.CreateObject("WScript.Shell")
> >   Set fso = CreateObject("Scripting.FileSystemObject")
> >   If fso.FileExists(dateiname) Then
> >      Set f = fso.GetFile(dateiname)
> >      f.delete
> >      Set f = nothing
> >   End If
> >   Set fso = nothing
> >   Set WshShell = nothing
> > End Sub
> > 
> > Function ReadFile2Arr(dateiname)
> >  Dim Fields()
> >  Dim objFSO, f, i
> >  Set objFSO = CreateObject("Scripting.FileSystemObject")
> >  Set f = objFSO.OpenTextFile (dateiname, ForReading)
> >  i = 0
> >  Do Until f.atEndOfStream
> >    Redim Preserve Fields(i)
> >    Fields(i) = f.ReadLine
> >    i = i + 1
> >  Loop
> >  f.Close
> >  Set objFSO = nothing
> >  ReadFile2Arr = Fields
> > End Function
> > 
> > Function ExportAB(filename)  
> >   Dim oAB, fso, f, oStocks, oStock, oStock1, oStock2
> >   Dim filenames, ticker, Qty
> >   Set oAB = CreateObject("Broker.Application")
> >   If Not oAB.LoadDatabase(path2database) Then
> >   	 WScript.Echo "No database found! "
> >   	 WScript.Quit
> >   End If 
> >  
> >   FileDelete(filename)
> >   Set fso = CreateObject("Scripting.FileSystemObject")
> >   Set f = fso.OpenTextFile(filename, ForWriting, true)
> >   f.WriteLine("VERSION;1;2")
> >   f.WriteLine("KURSE")
> >   filenames = ReadFile2Arr("firmen.txt")
> >   For each ticker in filenames
> >     WScript.Echo "Export of " & ticker & " start"
> >     set oStocks = oAB.Stocks
> >     set oStock = oStocks.Item(ticker)   ' Object value: 
> nothing     <--------------------
> >     set oStock1 = oStocks(ticker)       ' Object value: 
> nothing     <--------------------
> >     set oStock2 = oStocks.Item(0)       ' Object value: {...} 
> Object
> >     WScript.Echo oStocks.Count
> >     WScript.Echo ticker
> >     WScript.Echo oStock.Quotations.Count
> >     WScript.Echo oStock1.Quotations.Count
> >     WScript.Echo oStock2.Quotations.Count
> >     ' Qty = oStock.Quotations.Count
> >     ' WScript.Echo Qty
> >     ' Qty = 50
> >     ' for i= Qty - 10 to Qty
> >     '   set oQuote = oStock.Quotations(i)
> >     '     WScript.Echo oQuote.Volume & ";" & oQuote.Open & ";" & 
_ 
> >     '                  oQuote.High & ";" & oQuote.Low & ";" & 
> oQuote.Close 
> >     '     f.WriteLine  oQuote.Volume & ";" & oQuote.Open & ";" & 
_ 
> >     '                  oQuote.High & ";" & oQuote.Low & ";" & 
> oQuote.Close 
> >     ' next  
> >   Next
> >   f.WriteLine("ENDE")
> >   f.Close
> > End Function
> >  
> > ExportAB("wiso.txt")
> >
>






------------------------ Yahoo! Groups Sponsor --------------------~--> 
Try Online Currency Trading with GFT. Free 50K Demo. Trade 
24 Hours. Commission-Free. 
http://us.click.yahoo.com/RvFikB/9M2KAA/U1CZAA/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

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/amibroker/

<*> To unsubscribe from this group, send an email to:
    amibroker-unsubscribe@xxxxxxxxxxxxxxx

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/