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

[amibroker] Curious Display of Plotted ATC



PureBytes Links

Trading Reference Links

I figured it out.... Sorry....



--- In amibroker@xxxxxxxxxxxxxxx, "mleonsprint" <mleonsprint@xxxx> 
wrote:
> I have milled over this code and cannot figure out how to get this 
> code to plot pivots starting from 6 months back..... Any thoughts 
> for you really smart code guys?
> 
> Thanks for your help
> Mark
> 
> 
> 
> --- In amibroker@xxxxxxxxxxxxxxx, John Ingle <jcingle_2000@xxxx> 
> wrote:
> > Jason,
> >  
> > If I wanted to run a scan with this code (so I can see todays 
buy 
> and sell pivots) without having to view each equity what would 
need 
> to be added to this code or is it possible?
> >  
> > Thanks in advance,
> > John
> > 
> > Jason Hart <jhart_1972@xxxx> wrote:
> > Mark,
> >  
> > Try this - I can't remember where I found it but it may be what 
> you are looking for
> >  
> > Jason
> >  
> > 
> > /* **********************************
> > 
> > Code to automatically identify pivots
> > 
> > ********************************** */
> > 
> > // -- what will be our lookback range for the hh and ll?
> > 
> > nBars = Param("Number of bars", 12, 5, 40);
> > 
> > // -- Title.
> > 
> > Title = Name() + " (" + StrLeft(FullName(), 15) + ") O: " + Open 
> + ", 
> > 
> > H: " + High + ", L: " + Low + ", C: " + Close;
> > 
> > // -- Plot basic candle chart
> > 
> > PlotOHLC(Open, High, Low, Close, 
> > 
> > "BIdx = " + BarIndex() + 
> > 
> > "\n" + "O = " + O + "\n"+"H = "+ H + "\n"+"L = " + L 
> > 
> > + "\n"+"C ",
> > 
> > colorBlack, styleCandle); 
> > 
> > GraphXSpace=7;
> > 
> > // -- Create 0-initialized arrays the size of barcount
> > 
> > aHPivs = H - H;
> > 
> > aLPivs = L - L;
> > 
> > // -- More for future use, not necessary for basic plotting
> > 
> > aHPivHighs = H - H;
> > 
> > aLPivLows = L - L;
> > 
> > aHPivIdxs = H - H;
> > 
> > aLPivIdxs = L - L;
> > 
> > nHPivs = 0;
> > 
> > nLPivs = 0;
> > 
> > lastHPIdx = 0;
> > 
> > lastLPIdx = 0;
> > 
> > lastHPH = 0;
> > 
> > lastLPL = 0;
> > 
> > curPivBarIdx = 0;
> > 
> > // -- looking back from the current bar, how many bars 
> > 
> > // back were the hhv and llv values of the previous 
> > 
> > // n bars, etc.?
> > 
> > aHHVBars = HHVBars(H, nBars);
> > 
> > aLLVBars = LLVBars(L, nBars);
> > 
> > aHHV = HHV(H, nBars);
> > 
> > aLLV = LLV(L, nBars);
> > 
> > // -- Would like to set this up so pivots are calculated back 
from
> > 
> > // last visible bar to make it easy to "go back" and see the 
pivots
> > 
> > // this code would find. However, the first instance of 
> > 
> > // _Trace output will show a value of 0
> > 
> > aVisBars = Status("barvisible");
> > 
> > nLastVisBar = LastValue(Highest(IIf(aVisBars, BarIndex(), 0)));
> > 
> > _TRACE("Last visible bar: " + nLastVisBar);
> > 
> > // -- Initialize value of curTrend
> > 
> > curBar = (BarCount-1);
> > 
> > curTrend = "";
> > 
> > if (aLLVBars[curBar] < 
> > 
> > aHHVBars[curBar]) {
> > 
> > curTrend = "D";
> > 
> > }
> > 
> > else {
> > 
> > curTrend = "U";
> > 
> > }
> > 
> > // -- Loop through bars. Search for 
> > 
> > // entirely array-based approach
> > 
> > // in future version
> > 
> > for (i=0; i<120; i++) {
> > 
> > curBar = (BarCount - 1) - i;
> > 
> > // -- Have we identified a pivot? If trend is down...
> > 
> > if (aLLVBars[curBar] < aHHVBars[curBar]) {
> > 
> > // ... and had been up, this is a trend change
> > 
> > if (curTrend == "U") {
> > 
> > curTrend = "D";
> > 
> > // -- Capture pivot information
> > 
> > curPivBarIdx = curBar - aLLVBars[curBar];
> > 
> > aLPivs[curPivBarIdx] = 1;
> > 
> > aLPivLows[nLPivs] = L[curPivBarIdx];
> > 
> > aLPivIdxs[nLPivs] = curPivBarIdx;
> > 
> > nLPivs++;
> > 
> > }
> > 
> > // -- or current trend is up
> > 
> > } else {
> > 
> > if (curTrend == "D") {
> > 
> > curTrend = "U";
> > 
> > curPivBarIdx = curBar - aHHVBars[curBar];
> > 
> > aHPivs[curPivBarIdx] = 1;
> > 
> > aHPivHighs[nHPivs] = H[curPivBarIdx];
> > 
> > aHPivIdxs[nHPivs] = curPivBarIdx;
> > 
> > nHPivs++;
> > 
> > }
> > 
> > // -- If curTrend is up...else...
> > 
> > } 
> > 
> > // -- loop through bars
> > 
> > } 
> > 
> > // -- Basic attempt to add a pivot this logic may have missed
> > 
> > // -- OK, now I want to look at last two pivots. If the most 
> > 
> > // recent low pivot is after the last high, I could
> > 
> > // still have a high pivot that I didn't catch
> > 
> > // -- Start at last bar
> > 
> > curBar = (BarCount-1);
> > 
> > candIdx = 0;
> > 
> > candPrc = 0;
> > 
> > lastLPIdx = aLPivIdxs[0];
> > 
> > lastLPL = aLPivLows[0];
> > 
> > lastHPIdx = aHPivIdxs[0];
> > 
> > lastHPH = aHPivHighs[0];
> > 
> > if (lastLPIdx > lastHPIdx) {
> > 
> > // -- Bar and price info for candidate pivot
> > 
> > candIdx = curBar - aHHVBars[curBar];
> > 
> > candPrc = aHHV[curBar]; 
> > 
> > if (
> > 
> > lastHPH < candPrc AND
> > 
> > candIdx > lastLPIdx AND
> > 
> > candIdx < curBar) {
> > 
> > 
> > 
> > // -- OK, we'll add this as a pivot...
> > 
> > aHPivs[candIdx] = 1;
> > 
> > // ...and then rearrange elements in the 
> > 
> > // pivot information arrays
> > 
> > for (j=0; j<nHPivs; j++) {
> > 
> > aHPivHighs[nHPivs-j] = aHPivHighs[nHPivs-
> > 
> > (j+1)];
> > 
> > aHPivIdxs[nHPivs-j] = aHPivIdxs[nHPivs-(j+1)];
> > 
> > }
> > 
> > aHPivHighs[0] = candPrc ;
> > 
> > aHPivIdxs[0] = candIdx;
> > 
> > nHPivs++;
> > 
> > } 
> > 
> > } else {
> > 
> > 
> > 
> > // -- Bar and price info for candidate pivot
> > 
> > candIdx = curBar - aLLVBars[curBar];
> > 
> > candPrc = aLLV[curBar]; 
> > 
> > if (
> > 
> > lastLPL > candPrc AND
> > 
> > candIdx > lastHPIdx AND
> > 
> > candIdx < curBar) {
> > 
> > 
> > 
> > // -- OK, we'll add this as a pivot...
> > 
> > aLPivs[candIdx] = 1;
> > 
> > // ...and then rearrange elements in the 
> > 
> > // pivot information arrays
> > 
> > for (j=0; j<nLPivs; j++) {
> > 
> > aLPivLows[nLPivs-j] = aLPivLows[nLPivs-(j+1)];
> > 
> > aLPivIdxs[nLPivs-j] = aLPivIdxs[nLPivs-(j+1)];
> > 
> > }
> > 
> > aLPivLows[0] = candPrc;
> > 
> > aLPivIdxs[0] = candIdx;
> > 
> > nLPivs++;
> > 
> > }
> > 
> > }
> > 
> > // -- Dump inventory of high pivots for debugging
> > 
> > /*
> > 
> > for (k=0; k<nHPivs; k++) {
> > 
> > _TRACE("High pivot no. " + k
> > 
> > + " at barindex: " + aHPivIdxs[k] + ", " 
> > 
> > + WriteVal(ValueWhen(BarIndex()==aHPivIdxs[k], 
> > 
> > DateTime(), 1), formatDateTime)
> > 
> > + ", " + aHPivHighs[k]);
> > 
> > }
> > 
> > */
> > 
> > // -- OK, let's plot the pivots using arrows
> > 
> > PlotShapes(
> > 
> > IIf(aHPivs==1, shapeDownArrow, shapeNone), colorRed, 0,
> > 
> > High, Offset=-15);
> > 
> > PlotShapes(
> > 
> > IIf(aLPivs==1, shapeUpArrow , shapeNone), colorGreen, 0, 
> > 
> > Low, Offset=-15);
> > 
> > 
> > Graham <gkavanagh@xxxx> wrote:
> > Yes, I thought there was something in the AFL library (AB or 
yahoo 
> site),
> > and also in past emails, check the email history for last year.
> > 
> > Cheers,
> > Graham
> > http://www.golala.com/forums/?mforum=asxsharetrading
> > http://groups.msn.com/fmsaustralia 
> > 
> > -----Original Message-----
> > From: mleonsprint [mailto:mleonsprint@x...] 
> > Sent: Monday, 26 January 2004 1:26 PM
> > To: amibroker@xxxxxxxxxxxxxxx
> > Subject: [amibroker] Pivots, Pivots, Pivots........
> > 
> > 
> > Does anyone have any formula's for plotting past pivots on the 
> > chart?  Or any idea's of doing so?  I have been trying and 
comming 
> > up empty handed.....
> > 
> > Thanks for your help
> > 
> > Mark
> > 
> > 
> > Send BUG REPORTS to bugs@xxxx
> > Send SUGGESTIONS to suggest@xxxx
> > -----------------------------------------
> > Post AmiQuote-related messages ONLY to: amiquote@xxxxxxxxxxxxxxx 
> > (Web page: http://groups.yahoo.com/group/amiquote/messages/)
> > --------------------------------------------
> > Check group FAQ at:
> > http://groups.yahoo.com/group/amibroker/files/groupfaq.html 
> > 
> > Yahoo! Groups Links
> > 
> > To visit your group on the web, go to:
> > http://groups.yahoo.com/group/amibroker/
> > 
> > To unsubscribe from this group, send an email to:
> > amibroker-unsubscribe@xxxxxxxxxxxxxxx
> > 
> > Your use of Yahoo! Groups is subject to:  
> http://docs.yahoo.com/info/terms/ 
> > 
> > 
> > 
> > Send BUG REPORTS to bugs@xxxx
> > Send SUGGESTIONS to suggest@xxxx
> > -----------------------------------------
> > Post AmiQuote-related messages ONLY to: amiquote@xxxxxxxxxxxxxxx 
> > (Web page: http://groups.yahoo.com/group/amiquote/messages/)
> > --------------------------------------------
> > Check group FAQ at: 
> http://groups.yahoo.com/group/amibroker/files/groupfaq.html 
> > 
> > 
> > 
> > ---------------------------------
> > Yahoo! Groups Links
> > 
> >    To visit your group on the web, go to:
> > http://groups.yahoo.com/group/amibroker/
> >   
> >    To unsubscribe from this group, send an email to:
> > amibroker-unsubscribe@xxxxxxxxxxxxxxx
> >   
> >    Your use of Yahoo! Groups is subject to the Yahoo! Terms of 
> Service. 
> > 
> > 
> > 
> > ---------------------------------
> > Do you Yahoo!?
> > Yahoo! SiteBuilder - Free web site building tool. Try it! 
> > 
> > Send BUG REPORTS to bugs@xxxx
> > Send SUGGESTIONS to suggest@xxxx
> > -----------------------------------------
> > Post AmiQuote-related messages ONLY to: amiquote@xxxxxxxxxxxxxxx 
> > (Web page: http://groups.yahoo.com/group/amiquote/messages/)
> > --------------------------------------------
> > Check group FAQ at: 
> http://groups.yahoo.com/group/amibroker/files/groupfaq.html 
> > 
> > 
> > 
> > ---------------------------------
> > Yahoo! Groups Links
> > 
> >    To visit your group on the web, go to:
> > http://groups.yahoo.com/group/amibroker/
> >   
> >    To unsubscribe from this group, send an email to:
> > amibroker-unsubscribe@xxxxxxxxxxxxxxx
> >   
> >    Your use of Yahoo! Groups is subject to the Yahoo! Terms of 
> Service. 
> > 
> > 
> > 
> > ---------------------------------
> > Do you Yahoo!?
> > Yahoo! SiteBuilder - Free web site building tool. Try it!


Send BUG REPORTS to bugs@xxxxxxxxxxxxx
Send SUGGESTIONS to suggest@xxxxxxxxxxxxx
-----------------------------------------
Post AmiQuote-related messages ONLY to: amiquote@xxxxxxxxxxxxxxx 
(Web page: http://groups.yahoo.com/group/amiquote/messages/)
--------------------------------------------
Check group FAQ at: http://groups.yahoo.com/group/amibroker/files/groupfaq.html 

Yahoo! Groups Links

To visit your group on the web, go to:
 http://groups.yahoo.com/group/amibroker/

To unsubscribe from this group, send an email to:
 amibroker-unsubscribe@xxxxxxxxxxxxxxx

Your use of Yahoo! Groups is subject to:
 http://docs.yahoo.com/info/terms/