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

RE: [amibroker] Re: Help NEEDED with BuyPrice



PureBytes Links

Trading Reference Links

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: amibroker@xxxxxxxxxxxxxxx [mailto:amibroker@xxxxxxxxxxxxxxx] On Behalf Of Ernie Newman
Sent: 02/26/2007 7:24 PM
To: amibroker@xxxxxxxxxxxxxxx
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 amibroker@xxxxxxxxxps.com, "dbw451" <dbw451@xxx> 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: amibroker@xxxxxxxxxps.com [mailto:amibroker@xxxxxxxxxps.com]
On Behalf
> Of Ernie Newman
> Sent: 02/26/2007 5:26 PM
> To: amibroker@xxxxxxxxxps.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
>

__._,_.___

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
Investment management software Investment property software Investment software
Investment tracking software Return on investment software

Your email settings: Individual Email|Traditional
Change settings via the Web (Yahoo! ID required)
Change settings via email: Switch delivery to Daily Digest | Switch to Fully Featured
Visit Your Group | Yahoo! Groups Terms of Use | Unsubscribe

__,_._,___