thanks for the suggestion. I never got to work with COM objects yet, maybe it is time to start. However the suggestion by Dennis to write the EOD data to a composite is maybe a good one also. Did not test it yet. I made a suggestion to add this feature in the feedback centre.
Today I used "gut" feeling to find a good entry / exit point. As usual my gut feeling is not so good :/ however still better than the open price. rgds, Ed ----- Original Message ----- From: Paul Ho To: [email protected] Sent: Tuesday, May 22, 2007 3:36 PM Subject: RE: [amibroker] mixed intraday / EOD, eSignal Hi Ed, Now that I understand what you're doing, I could suggest one solution that is worth trying The situation with Mixed database is that you can only assess the EOD bars with setting to daily. TimeframeSet doesnt give you that. So if you know how write some Java script, you can use the COM objects to change the settings to daily, run the daily part of your test. then save the results as notes. then you can changes the settings back to intraday, retrieve the notes and continue on. functions NoteSet and NoteGet are the two functions that I am referring to. Good luck. /Paul. ---------------------------------------------------------------------------- From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Edward Pottasch Sent: Tuesday, 22 May 2007 4:33 PM To: [email protected] Subject: Re: [amibroker] mixed intraday / EOD, eSignal hi Paul, yes indeed I use the daily data set to calculate buy / sell, short and cover (the code I posted was just for illustration purposes). However, my system is designed with entries and exits at the open (excluding the occasional intraday profit target that is hit). In practice I enter and exit at a certain time during the day in order to avoid the turbulance at the open. What I then monitor is the difference between the open price and the exit / entry price. This is just a single number (averaged over the entire portfolio) and it is easy to see if I am ahead or behind to the theoretical system during the day. Up until now I just executed my orders at a certain time. However, now I am following this number to pinpoint a favourable entry / exit with respect to the open price. I want to backtest this pinpointing of the best time to execute my orders and I need the eSignal intraday database for that. I just have one parameter in my system that uses 250 daily bars and therefor I need the EOD bars to do the calculation of the actual entry and exits days. I hope using the EOD data to make calculation within the eSignal intraday database will be possible in future releases of Amibroker. For now I will try to solve it some other way, rgds, Ed ----- Original Message ----- From: Paul Ho To: [email protected] Sent: Tuesday, May 22, 2007 2:01 AM Subject: RE: [amibroker] mixed intraday / EOD, eSignal Ed From what i can see, you are using Daily data to set you buy and sell. Do you really intraday bars for your system? or do you just need real time daily bars? if that is the case, setting esignal to eod only would give you daily bars that is updated in realtime. regards Paul. ------------------------------------------------------------------------ From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Edward Pottasch Sent: Tuesday, 22 May 2007 1:02 AM To: [email protected] Subject: Re: [amibroker] mixed intraday / EOD, eSignal hi Dennis, I guess that would be possible. Thanks for your help. I will try that if one is not able to use the EOD data in mixed mode. It seems odd that there is a mixed mode but one can't call the EOD data, just view them. Indicators will use EOD data if EOD data are displayed. If intraday data are displayed the mixed mode is not used. regards, Ed ----- Original Message ----- From: Dennis Brown To: [email protected] Sent: Monday, May 21, 2007 4:21 PM Subject: Re: [amibroker] mixed intraday / EOD, eSignal Ed, Here is an idea: Perhaps you could generate an ATC ticker of the daily indicator, read in the values with foreign, then time expand each bar to match up to your intraday bars --you will only have one number per day. Dennis On May 21, 2007, at 9:27 AM, Edward Pottasch wrote: in short one normally only has a limited amount of intraday data from eSignal. If your calculation needs 250 bars of EOD data then it can't be done. However because Amibroker allows for mixed intraday/EOD data it should be possible. The code below shows that Amibroker does only display these data and not use them for calculations. If you display Daily data in mixed mode the chart will show buy and short triangles. Displaying hour or minute charts will not show any signals because it will not use the EOD data but the intraday data for the calculation. To generate the signals I need to use the EOD data for the calculation since I do not have sufficient intraday data .... Not possible? rgds, Ed // set timeframe TimeFrameSet( inDaily ); tt = NumDownBars = BarsSince( C >= Ref(C,-1)); ss = NumUpBars = BarsSince( C <= Ref(C,-1)); bc1 = tt >= 2 AND C > MA(C,250); Buy = bc1; Buy = Ref(Buy,-1); sc1 = ss >= 2 AND C < MA(C,250); Short = sc1; Short = Ref(Short,-1); // restore to current time frame TimeFrameRestore(); // expand arrays Buy = TimeFrameExpand( Buy, inDaily ); BuyPrice = IIf( Buy,Ref(C,-1),0); Short = TimeFrameExpand( Short, inDaily ); ShortPrice = IIf(Short,Ref(C,-1),0); GraphXSpace = 5; SetChartOptions(0, chartShowDates); Plot(C,"C",1,64); Title=Name()+ ", O: "+WriteVal(O)+ ", H: "+WriteVal(H)+ ", L: "+WriteVal(L)+ ", C: "+WriteVal(C); PlotShapes(IIf(Buy,shapeUpTriangle,0),colorWhite, layer = 0, yposition = BuyPrice, offset = 0 ); PlotShapes(IIf(Short,shapeDownTriangle,0),colorLightBlue, layer = 0, yposition = ShortPrice, offset = 0 ) ----- Original Message ----- From: Edward Pottasch To: [email protected] Sent: Monday, May 21, 2007 12:01 PM Subject: [amibroker] mixed intraday / EOD, eSignal hi, I am doing some backtests to finetune the entries of an EOD system. Therefor I generate the signals using EOD data and use these signals to find an intraday entry. I use the mixed intraday/EOD mode (eSignal data). The EOD data show up nicely in the chart however for the calculations the are not used. So if I implement in the code: TimeFrameSet( inDaily ): the do my EOD signal calculations here TimeFrameRestore(); continue in the intraday timeframe. When in the intraday timeframe it can however not see the signals calculated in the Daily timeframe. I use a moving average with a long period and therefor it does not find signals because the intraday data not have enough days. The EOD data have enough days but apparently they are not used in the calculation. Is there a trick so that they will be used in the calculation also and not just for display purposes in the chart? thanks, Ed
