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 _javascript_, 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.
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 -----
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.
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 -----
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 -----
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
__._,_.___
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 NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
http://www.amibroker.com/devlog/
For other support material please check also:
http://www.amibroker.com/support.html
SPONSORED LINKS
__,_._,___
|