Hello, You need to know that AB caches data. If you are writing directly to quote array thru OLE you need to set "IsDirty" flag, after you are done with writing to given symbol.
target.IsDirty = True; Best regards, Tomasz Janeczko amibroker.com ----- Original Message ----- From: Ken Close To: [email protected] Sent: Friday, July 04, 2008 5:47 PM Subject: [amibroker] Ping Paul Ho---Re: Import Data into OI field? Using a Watchlist Paul: Sorry to bother you again. I have proven that your small COM object code stuck at the end of a very complex AFL will successfully stuff the one parameter I want to save into the OI field. Yea! But, is a scan supposed to work on all symbols within a Watchlist? I tried to run the code (scan) against a three symbol watchlist but it did not work (only updated the current symbol). I see there is an Analysis object Analysis.ApplyTo and there is something called a SCAN Method, but by trial and error, I can not come up with a statement(s) that works. Would you be so kind to show me the statement(s) that need to be added so that I can run through the symbols in a watchlist, and stick the "Ranking" variable into the OI field of each one of them? It would get me so very close to a major milestone in my quest. Thank you so much. Ken ------------------------------------------------------------------------------ From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Paul Ho Sent: Thursday, July 03, 2008 9:10 PM To: [email protected] Subject: RE: [amibroker] Ping Paul Ho---Re: Import Data into OI field? Ken I presume you are using the latest version of AB. I have just tried it myself and I have come back with a COM object error run it in previous version and is working fine. Can you try it on an old version of AB, if you have the same result. It is time to call on Tomasz to fix it. ---------------------------------------------------------------------------- From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Ken Close Sent: Friday, 4 July 2008 2:17 AM To: [email protected] Subject: [amibroker] Ping Paul Ho---Re: Import Data into OI field? Paul: I tried the code you shared below to see if I could stick the "Ranking=C" value into the OI filed of a single symbol, and I got nothing. I ran Scan over a short date range, clicked "Refresh All", and then looked in the Quote Editor for the change, but none was there. What needs to be done to make this work? Can the COM OBJECT application be put onto the end of an AFL file (which generates the Ranking value), and still be expected to work? Need help. Thanks for any suggestions. Ken --- In [email protected], "Paul Ho" <[EMAIL PROTECTED]> wrote: > > Bob > You can't do it in Amiquote or fget, but you can do it with COM objects. > The following example gives you a means > Ranking = C; // replace this with something you want to store > ab = createobject("broker.Application"); > target = ab.Stocks(name()); > qts = target.Quotations; > for(i = 0; i < Barcount; i++) > { > qt = qts.Item(i); > qt.OpenInt = Ranking[i]; > } > buy = sell = 0; > > Run scan over tickers that you want. and Remember to refresh all to see the > changes > It is very important to know that AB does not detect the OI field for > changes, so if there is no other changes in your database, pressing save > doesnt save your changes in OI (at least that was the case in the past), To > force save, choose save database as, or make some sure there are some other > changes in your database and press save. Otherwise, the OI fields would be > blank next time you open it. > Good luck. > > > > _____ > > From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf > Of [EMAIL PROTECTED] > Sent: Friday, 21 March 2008 10:38 AM > To: [email protected] > Subject: [amibroker] Import Data into OI field? > > > > > > Although I understand that additional AB data arrays [and means of > populating them] are planned for the future, I'd like to store a weekly > value into the OI field.of existing tickers. > > Any way to do this with AmiQuote? > If not, how about with fget, etc? > > TIA, > Bob >
