Sounds like you could just use High instead of Close to see that the band was crossed intra day.
Mike --- In [email protected], "mbausys" <mbau...@...> wrote: > > Steve, > > What I want to do with this code is for it to allow me enter a trade exactly > at the price which triggers a signal. In particular, I use Bollinger Bands > and want trades to be executed at the price at which it equals Bollinger > Bands. The price might then reverse and in EOD chart the closing price would > be inside Bollinger Bands. However, I would know that the signal would have > been generated intraday and I could have entered a position. I'm not > proficient with Amibroker coding yet so the required twist might be very > simple. Thank you for your help. > > > Marius > > --- In [email protected], "Steve Dugas" <sjdugas@> wrote: > > > > > > Hi - What did you have in mind? Fred can correct me if I'm wrong, but I > > always imagined it was written for someone who wanted to trade at the close > > but only gets EOD data. By the time you do the nightly data download and > > see > > a new signal, the markets are closed and you can only trade NDO. With this > > code you can predict the price needed to trigger a signal, then put on CNBC > > or QuoteTracker to see if your price point has been met and trade just > > prior > > to today's close. For backtests, just set trade price to close and trade > > delay to zero, you should only need to predict the price for real-time > > trading. > > > > Steve > > > > ----- Original Message ----- > > From: "mbausys" <mbausys@> > > To: <[email protected]> > > Sent: Thursday, February 11, 2010 4:10 PM > > Subject: [amibroker] Re: Projecting prices > > > > > > > > > > > > > Thanks a lot for posting this. I'd like to ask how it would be possible > > > to > > > use this process in a backtest procedure as it only determines a required > > > price for tomorrow. Please correct me if I'm wrong. > > > > > > > > > Regards, > > > > > > Marius > > > > > > > > > --- In [email protected], "Ara Kaloustian" <ara1@> wrote: > > >> > > >> Thanks Steve > > >> > > >> A > > >> ----- Original Message ----- > > >> From: Steve Dugas > > >> To: [email protected] > > >> Sent: Monday, April 10, 2006 10:53 AM > > >> Subject: Re: [amibroker] Projecting prices > > >> > > >> > > >> Hi Ara, > > >> > > >> Your question rang a bell with me, so I searched my saved e-mails and > > >> found this code that Fred was kind enough to post a couple of years ago. > > >> Maybe it will be helpful for you? > > >> > > >> Steve > > >> > > >> // *********************************************** > > >> // > > >> // An all purpose routine to find the price > > >> // necessary to move an indicator to a GOAL. > > >> // > > >> // This should work for virtually any indicator, > > >> // built in or otherwise. It's demonstrated > > >> // here using RSI & BBand's ... > > >> // > > >> // Note: It will appear to use future quotes > > >> // because of the down shifting of the > > >> // price array, but obviously it can't > > >> // "know" tomorrows price. There's > > >> // probably a way to rectify this but > > >> // I was more concerned with the rest > > >> // of the process. > > >> // > > >> // The maximum iterations have arbitrarily been > > >> // set to 200 which is undoubtedly overkill > > >> // as I've yet to see anything take 200 even > > >> // when tolerance was set to 0 on datastreams > > >> // with very high prices. > > >> // > > >> // For real usage the saving of i in j and the > > >> // accuracy calculation can be tossed as they > > >> // were only put in for demonstration purposes > > >> // > > >> // *********************************************** > > >> // > > >> // This Routine requires the following things > > >> // > > >> // P0 = A price array or synthetic > > >> // > > >> // Goal = The goal value of the indicator > > >> // > > >> // Acc = An accuracy level for the calculations > > >> // > > >> // Set this to the order of magnitude > > >> // that you want. For example if you want > > >> // accuracy in calculated price to within > > >> // 0.01 then set it 0.01. It can even > > >> // be set to 0 which will force AB to > > >> // calculate until it can't find any > > >> // further improvements (Usually between > > >> // 150-170 iterations) but this is semi > > >> // useless as improvements relative to > > >> // price granularity have long since > > >> // been gone by. > > >> // > > >> // The lower you set it the longer it > > >> // will take but it's pretty quick > > >> // (Usually between 15-30 iterations) > > >> // unless you set it at 0. > > >> // > > >> // *********************************************** > > >> // > > >> // Note: Some goals are virtually unattainable on > > >> // the next bar, especially on the downside > > >> // as they would require a negative price > > >> // which is what this routine will show if > > >> // that is what is required. > > >> // > > >> // *********************************************** > > >> > > >> P0 = C; > > >> > > >> Acc = 0.0001; > > >> > > >> LVBI = LastValue(BarIndex()); > > >> Mult = 1; > > >> > > >> // *********************************************** > > >> // Shift Price up by n orders of magnitude to make > > >> // it >= 1. This is useful to increase > > >> // accuracy on very low priced datastreams > > >> // such as the JY. > > >> // *********************************************** > > >> for (i = 0; i < 10; i++) > > >> { > > >> if (P0[LVBI] >= 1) > > >> i = 99; > > >> else > > >> Mult = Mult * 10; > > >> } > > >> // *********************************************** > > >> > > >> P1 = Ref(P0, 1) * Mult; > > >> UpDn = 100 * P1[LVBI]; > > >> > > >> for (i = 0; i < 200; i++) > > >> { > > >> > > >> // An example for finding price associated with the next bars > > >> BBandTop > > >> // > > >> // > > >> ************************************************************** > > >> *************** > > >> // Put whatever indicator you want to goal seek here based on P1 > > >> // > > >> ************************************************************** > > >> *************** > > >> Calc = P1; > > >> // > > >> ************************************************************** > > >> *************** > > >> // Put whatever you want for the goal here ... > > >> // > > >> // The reason for putting it in the loop is because sometimes > > >> the goal is price > > >> // oriented and will need to be recalculated on each > > >> iteration. > > >> // > > >> ************************************************************** > > >> *************** > > >> Goal = LastValue(BBandBot(P1, 14, 2)); > > >> // > > >> ************************************************************** > > >> *************** > > >> > > >> > > >> > > >> // An example for finding price associated with the next bars > > >> RSI value of 65 > > >> // > > >> // > > >> ************************************************************** > > >> *************** > > >> // Put whatever indicator you want to goal seek here based on P1 > > >> // > > >> ************************************************************** > > >> *************** > > >> // Calc = RSIa(P1, 14); > > >> // > > >> ************************************************************** > > >> *************** > > >> // Put whatever you want for the goal here ... > > >> // > > >> // The reason for putting it in the loop is because sometimes > > >> the goal is price > > >> // oriented and will need to be recalculated on each > > >> iteration. > > >> // > > >> ************************************************************** > > >> *************** > > >> // Goal = 65; > > >> // > > >> ************************************************************** > > >> *************** > > >> > > >> if (Calc[LVBI] < Goal) > > >> P1[LVBI] = P1[LVBI] + UpDn; > > >> else > > >> P1[LVBI] = P1[LVBI] - UpDn; > > >> UpDn = UpDn / 2; > > >> if (UpDn <= Acc) > > >> { > > >> j = i; > > >> i = 99999; > > >> } > > >> } > > >> > > >> Accuracy = 100 * (abs(Goal - Calc) / Goal); > > >> > > >> Filter = BarIndex() == LVBI; > > >> > > >> AddColumn(Mult, > > >> "Multiplier", 1.0); > > >> AddColumn(Calc[LVBI - 1] / Mult, "Curr Ind Val", 1.9); > > >> AddColumn(Goal / Mult, "Goal Ind Val", 1.9); > > >> AddColumn(Calc[LVBI] / Mult, "Calc Ind Val", 1.9); > > >> AddColumn(j, > > >> "Iterations", 1.0); > > >> AddColumn(Accuracy, "Accuray (%)", 1.9); > > >> AddColumn(Ref(P1, -1) / Mult, "Todays Price", 1.9); > > >> AddColumn(P1 / Mult, "Goal > > >> Price", 1.9); > > >> > > >> ----- Original Message ----- > > >> From: Ara Kaloustian > > >> To: [email protected] > > >> Sent: Monday, April 10, 2006 1:08 PM > > >> Subject: Re: [amibroker] Projecting prices > > >> > > >> > > >> thanks Bob, > > >> > > >> I had temporarily come to the same conclusion but realized that for > > >> my particular application I already have the high and low prices ... > > >> just > > >> need to calculate the close. > > >> > > >> My application is to use historical data for backtest and figure out > > >> a way to make it equivalent to using real time data by calculating the > > >> exact price required to produce a signal, obviously within the exixting > > >> price range. > > >> > > >> It's a clumsy solution since I will not be able to use the AB > > >> backtester, but useful (I think). It would be great if AB backtester > > >> could be used ... > > >> > > >> So technically "projecting" prices in the subject line is a bit > > >> misleading for this case... > > >> > > >> > > >> Ara > > >> ----- Original Message ----- > > >> From: Bob Jagow > > >> To: [email protected] > > >> Sent: Sunday, April 09, 2006 11:07 PM > > >> Subject: RE: [amibroker] Projecting prices > > >> > > >> > > >> An algebraic solution is possible only for indicators dependent > > >> on > > >> a single price array. > > >> That rules out CCI and Stochastics. > > >> > > >> Bob > > >> -----Original Message----- > > >> From: [email protected] > > >> [mailto:[email protected]]on Behalf Of Ara Kaloustian > > >> Sent: Sunday, April 09, 2006 9:43 PM > > >> To: AB-Main > > >> Subject: [amibroker] Projecting prices > > >> > > >> > > >> I am trying to figure out the required price to create a > > >> particular value of an indicator. > > >> > > >> Example: My CCI is at 50. I would get a signal if CCI reached > > >> 55. > > >> What is the require value of price that would make CCI to rise to 55? > > >> > > >> > > >> This kind of calculation can be used to anticipate a signal and > > >> allow us to place a conditional order for next day. > > >> > > >> I am looking for the formulae to accomplish this for CCI, > > >> Stochastics and MACD. > > >> > > >> The formulae should be bit of algebra, but rather time consuming > > >> to develop. > > >> > > >> Wonder if anyone has already worked on this issue before. > > >> > > >> Appreciate any help > > >> > > >> ara > > >> > > >> > > >> 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 other support material please check also: > > >> http://www.amibroker.com/support.html > > >> > > >> > > >> > > >> > > >> > > >> ---------------------------------------------------------------------------- > > >> YAHOO! GROUPS LINKS > > >> > > >> a.. Visit your group "amibroker" on the web. > > >> > > >> b.. To unsubscribe from this group, send an email to: > > >> [email protected] > > >> > > >> c.. Your use of Yahoo! Groups is subject to the Yahoo! Terms of > > >> Service. > > >> > > >> > > >> ---------------------------------------------------------------------------- > > >> > > > > > > > > > > > > > > > ------------------------------------ > > > > > > **** IMPORTANT PLEASE READ **** > > > This group is for the discussion between users only. > > > This is *NOT* technical support channel. > > > > > > TO GET TECHNICAL SUPPORT send an e-mail directly to > > > SUPPORT {at} amibroker.com > > > > > > TO SUBMIT SUGGESTIONS please use FEEDBACK CENTER at > > > http://www.amibroker.com/feedback/ > > > (submissions sent via other channels won't be considered) > > > > > > For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG: > > > http://www.amibroker.com/devlog/ > > > > > > Yahoo! Groups Links > > > > > > > > > > > > > > >
