Terry, Thanks very much for that comprehensive suggestion. I will experiment with you ideas.
Will advise.... Gosu283 Gary --- In [email protected], "Terry" <[EMAIL PROTECTED]> wrote: > > Gosub283, > > Amibroker is an array processing system. This means the ENTIRE ARRAY is > determined "all-at-once" and processed just ONCE. There is the loop code > feature to get around this when/if necessary. > > This means you cannot "go back" and change the Buy conditions based upon > follow-on arrays...because Buy has already been processed from the first > bar of data to the last. One way around this is to "pre-process" your > Buy and Sell conditions with dummy arrays and/or some loop code. > > However, in your case it might be easier than that. Use the code you > have, delete the ApplyStop() and simply trigger the Sell condition based > on how many days since you bought. Since you are using Cross for your > Buy signal there should not be any duplicate signals...unless the dual > MA cross you are testing would fall back and re-cross in the 1st 6 days. > > //Sell "Days_Till_Sell" since a Buy > Sell = Ref(Buy,-Days_Till_Sell); > > You should test my idea to be sure it works. > > Also note: Buy-Sell-Short-Cover are special variables that trigger an > internal backtest with code that you cannot "see". You can control this > backtest procedure by writing a "custom backtest procedure", but that is > often not necessary and overcomplicates things with lower level code. > However, the feature is there for those that really need it. > > PS: I don't see how a staticVar can help this situation. You can set it > and it will stay the same value until you change it, but it is NOT an > array (it is a "number", a single value) and it will simply end up with > the final value of "Days_Till_Sell" all the time...unless you use loop > code in which case you can use a normal array to store when you are "on > a buy". > -- > Terry > > -----Original Message----- > From: [email protected] [mailto:[EMAIL PROTECTED] On > Behalf Of gosub283 > Sent: Wednesday, November 01, 2006 09:41 > To: [email protected] > Subject: [amibroker] Please help - Probelm with variables > > Hi All, > > I have a variable named "Days_Till_Sell" that I want to set every time > a BUY > is triggered. > > PROBLEM: I need that variable to stay the same value until it is set > again at the next BUY signal. I use this variable to compute "days > until sell". > > //********************************************* > > //Buy logic: Short term trend cross and within first 5 days of the month > Buy = cross(Ma(c,10),ma(c,30)) and day() < 6 > > //Save the date value when a BUY is trggered... > DayBought = Buy * Day() > > // Set how many days to hold before selling > Days_Till_Sell = ((DayBought==1) * 10) + //if bought onday 1, hold for > 10 > ((DayBought==2) * 9) + //if bought onday 2, hold for 9 > ((DayBought==3) * 8) + //if bought onday 3, hold for 8 > ((DayBought==4) * 7) + //if bought onday 4, hold for 7 > ((DayBought==5) * 6); //if bought onday 5, hold for 6 > > //Sell only on Time based stop ( Further Below) > Sell = 0; > > > //Sell after n Bars > ApplyStop(StopTypeNBar, StopModeBars, DaysToSell); > > > //******************************************** > > > Problem is that "DayBought" and "DaysToSell" become 'zero' for every day > other than the BUY day. I need to maintain these arrays with the same > values > until I change them at the next BUY. > > Struggled for many hours with this :-( > Any ideas ? > Any Help is appreciated, > > Gosub283 > Calgary > > > > > 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 > > Yahoo! Groups Links > 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 Yahoo! Groups Links <*> To visit your group on the web, go to: http://groups.yahoo.com/group/amibroker/ <*> Your email settings: Individual Email | Traditional <*> To change settings online go to: http://groups.yahoo.com/group/amibroker/join (Yahoo! ID required) <*> To change settings via email: mailto:[EMAIL PROTECTED] mailto:[EMAIL PROTECTED] <*> To unsubscribe from this group, send an email to: [EMAIL PROTECTED] <*> Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
