Thanks David I think I got it know!! Ernie --- In [email protected], "dbw451" <[EMAIL PROTECTED]> wrote: > > You can only make trade decisions based on the current bar's prices (i.e. > today), not the next bar's prices (i.e. tomorrow). Actually AB allows you > to make decisions on tomorrow's prices, but that's looking into the future > and would not make a tradable system. I suggest you get rid of the 1 bar > trade delay and enter a Buy on the current bar if the High is higher than > the previous bar's determined BuyStop level. Here's example code: > > > > SetTradeDelays(0,0,0,0); > > BuyStop = H*1.01; //the formula for Buy stop level; > > SellStop = L*0.99; //the formula for Sell stop level; > > > > yBuyStop = Ref(BuyStop,-1); // yesterday's BuyStop > > ySellStop = Ref(SellStop,-1);// yesrerday's SellStop > > > > BuyPrice = IIf(O > yBuyStop, O, yBuyStop); // If the Open > yesterday's > BuyStop, then use Open else BuyStop > > SellPrice = IIf(O < ySellStop, O, ySellStop); // If the Open < yesterday's > SellStop, then use Open else SellStop > > > > Buy = H > BuyPrice; > > Sell = L < SellPrice; > > > > For each current bar, you'll have the BuyStop and SellStop for the next day. > The backtester will use the previous day's BuyStop and SellStop values to > determine the signals for the current (i.e. the following) day. In other > words, tomorrow's trade signals will be based on today's BuyStop and > SellStop values, however tomorrow's bar will not be processed until it > becomes the current bar at which time today''s BuyStop becomes the previous > bar's BuyStop. > > > > Hope this makes sense. > > > > Regards, > > > > David > > _____ > > From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf > Of Ernie Newman > Sent: 02/26/2007 7:24 PM > To: [email protected] > Subject: [amibroker] Re: Help NEEDED with BuyPrice > > > > Thanks for the Help David > BUT if tomorrows High is not greater than todays high buy signal > it still buys the high for tomorrow when if the price does not trade > HIGHER it shouldn't make a trade. > In other words if tomorrows high price is less than todays high there > should be no trade and using your example still will buy at tomorrows > high even if it is less than today's high. > Thanks > Ernie > --- In [EMAIL PROTECTED] <mailto:amibroker%40yahoogroups.com> ps.com, > "dbw451" <dbw451@> wrote: > > > > Hi Ernie, > > > > > > > > I don't exactly understand what you're trying to do, but maybe > something > > like this helps: > > > > > > > > SetTradeDelays(1,1,1,1); > > > > BuyStop = Ref(H,-1)*1.01; //the formula for Buy stop level; > > > > SellStop = Ref(L,-1)*0.99; //the formula for Sell stop level; > > > > > > > > BuyPrice = Max( BuyStop, Low ); // make sure buy price not less > than Low > > > > SellPrice = Min( SellStop, High ); // make sure sell price not > greater than > > High > > > > > > > > Buy = H > BuyPrice; > > > > Sell = L < SellPrice; > > > > > > > > If this is a buy and short system, then the Sell and SellPrice > variables > > should be Short and ShortPrice. One problem you'll have with the > BuyPrice > > and SellPrice is when they are equal to the Low or High. This will > not > > reflect reality because it's pure luck to catch the high or low > price for a > > day. A better approach would be to use the Open price: > > > > > > > > BuyPrice = IIf(O > BuyStop, O, BuyStop); // make sure buy > price not > > less than Low > > > > SellPrice = IIf(O < SellStop, O, SellStop); // make sure sell > price not > > greater than High > > > > > > > > Hope this is of some use. > > > > > > > > Regards, > > > > > > > > David > > > > > > > > > > > > _____ > > > > From: [EMAIL PROTECTED] <mailto:amibroker%40yahoogroups.com> ps.com > [mailto:[EMAIL PROTECTED] <mailto:amibroker%40yahoogroups.com> ps.com] > On Behalf > > Of Ernie Newman > > Sent: 02/26/2007 5:26 PM > > To: [EMAIL PROTECTED] <mailto:amibroker%40yahoogroups.com> ps.com > > Subject: [amibroker] Help NEEDED with BuyPrice > > > > > > > > I am trying to back test different systems that want to buy > > Todays High Price + .125 and the following code works only when the > > next days price is > the h,-1 otherwise it will buy the h of the > > entry day and not the day before. > > This should a simple thing to do but I can't make it work?? > > THANKS > > Ernie > > > > CondA = C > O; > > CondB = O < C; > > SetTradeDelays(1,1,1,1); > > BuyStop = Ref(H,-1); // *1.01; //the formula for Buy stop level; > > > > SellStop = Ref(L,-1)*0.99; //the formula for Sell stop level; > > > > Buy = CondA; > > > > Sell = CondB; > > > > BuyPrice = Max( BuyStop, Low ); // make sure buy price not less > than > > Low > > > > SellPrice = Min( SellStop, High ); // make sure sell price not > > greater than High > > >
