Robert, I plot everything that I can to help with understanding.
Actually barcount doesn't plot so well; it only consistently works when you first insert it (Tomasz will be tearing his hair out seeing me recommend plotting it). It does, however, show clearly what it is about in that one instance (a constant = = the total number of bars) whereas barindex() is the zerobased progressive count = = periods. The lastvalue of barindex() = = lastvalue of barcount -1 BrianB2. --- In amibroker@yahoogroups.com, "rhoemke" <[EMAIL PROTECTED]> wrote: > > hi Brian, > > plotting is a good idea. > > Users Guide says: > Barcount vs BarIndex() > There is a fundamental difference between BarCount and BarIndex(). > BarCount is a numeric variable that > holds just one number (the count of elements in array). On the other > hand BarIndex() is a function that returns > ARRAY representing consecutive index of each bar. > > Seems i misunderstood. > > Let's see what the plot shows. > > Regards > Robert > > --- In amibroker@yahoogroups.com, "brian.z123" <brian.z123@> wrote: > > > > Hello Robert, > > > > No. > > > > No problemo! > > > > If you plot barcount and barindex you will see it works a little > > differently than you think. > > > > BrianB2. > > > > --- In amibroker@yahoogroups.com, "rhoemke" <robert@> wrote: > > > > > > It seems that there is at least a problem with Barcount and BarIndex > > (). > > > As i understand, Barcount is just a number, showing the total number > > > of bars in the chart (starts counting at 0), and BarIndex() shows > > the > > > actual number of the single bar. > > > But this code shows different figures even for BarCount at selected > > > bar and i don't know why. > > > Anybody who can help? > > > > > > SBI = SelectedValue(BarIndex()); > > > "Selected BarIndex = "+WriteVal(SBI); > > > "BarCount = "+WriteVal(BarCount); > > > > > > > > > Regards > > > Robert > > > --- In amibroker@yahoogroups.com, "rhoemke" <robert@> wrote: > > > > > > > > Thank you Zoli, > > > > > > > > what i try to do is to mirror horizontaly at the avg of selected > > bar > > > > AND vertically from selected bar. > > > > This is why i think i need the loop. > > > > > > > > I try to mirror the past into the future, as it is described in > > Welles > > > > Wilders Book about Adam Theory. > > > > > > > > Regards Robert > > > > > > > > > > > > > > > > --- In amibroker@yahoogroups.com, "zoli_j" <novizoli@> wrote: > > > > > > > > > > mySelectedBI = SelectedValue(BarIndex()); > > > > > WriteVal(mySelectedBI); > > > > > > > > > > myMirrorHorizontalValue = ValueWhen(BarIndex() == mySelectedBI, > > Avg); > > > > > Plot(myMirrorHorizontalValue, "myMHV", colorBlue, styleLine); > > > > > > > > > > myDiffO = O - myMirrorHorizontalValue; > > > > > myDiffH = H - myMirrorHorizontalValue; > > > > > myDiffL = L - myMirrorHorizontalValue; > > > > > myDiffC = C - myMirrorHorizontalValue; > > > > > //PlotOHLC(myDiffO, myDiffH, myDiffL, myDiffC, "myDiff", > > colorBlue, > > > > > styleCandle); > > > > > > > > > > myO = IIf(NOT IsNull(myMirrorHorizontalValue), > > > > > myMirrorHorizontalValue - myDiffO, O); > > > > > myH = IIf(NOT IsNull(myMirrorHorizontalValue), > > > > > myMirrorHorizontalValue - myDiffH, H); > > > > > myL = IIf(NOT IsNull(myMirrorHorizontalValue), > > > > > myMirrorHorizontalValue - myDiffL, L); > > > > > myC = IIf(NOT IsNull(myMirrorHorizontalValue), > > > > > myMirrorHorizontalValue - myDiffC, C); > > > > > > > > > > BR, Zoli. > > > > > > > > > > PlotOHLC(O, H, L, C, "PriceChart", colorBlack, styleCandle); > > > > > PlotOHLC(myO, myH, myL, myC, "MirroRchart", colorBlue, > > styleCandle); > > > > > > > > > > --- In amibroker@yahoogroups.com, "rhoemke" <robert@> wrote: > > > > > > > > > > > > Hello, > > > > > > i am trying to mirror the chart from the selected bar. > > > > > > > > > > > > My code is this, but it doesn't plot a chart but only a > > single bar. > > > > > > Can someone see what is wrong. It is difficult for me to > > describe in > > > > > > english how the mirroring idea works, but maybe the code > > shows it. > > > > > > > > > > > > Thank you. > > > > > > > > > > > > selectedBI = SelectedValue(BarIndex()); WriteVal (SelectedBI); > > > > > > mirroropen = 0; > > > > > > mirrorhigh = 0; > > > > > > mirrorlow = 0; > > > > > > mirrorclose = 0; > > > > > > WriteVal(BarCount-SelectedBI-1); > > > > > > > > > > > > for (i = 0;i<BarCount-1;i++); > > > > > > { > > > > > > if(i>=selectedBI) > > > > > > { > > > > > > mirroropen[i] = 2*Avg[SelectedBI] - O[2*SelectedBI-i]; > > > > > > mirrorhigh[i] = 2*Avg[SelectedBI] - H[2*SelectedBI-i]; > > > > > > mirrorlow[i] = 2*Avg[SelectedBI] - L[2*SelectedBI-i]; > > > > > > mirrorclose[i] = 2*Avg[SelectedBI] - C[2*SelectedBI-i]; > > > > > > } > > > > > > else > > > > > > { > > > > > > mirroropen[i] = O[i]; > > > > > > mirrorhigh[i] = H[i]; > > > > > > mirrorlow[i] = L[i]; > > > > > > mirrorclose[i] = C[i]; > > > > > > } > > > > > > } > > > > > > > > > > > > > > > > > > > > > > > > PlotOHLC(mirroropen, mirrorhigh, mirrorlow, mirrorclose, > > > > > > "Mirrorchart", colorBlue); > > > > > > > > > > > > > > > > > > > > >